多くのページオブジェクトにわたって実行したいスイートのテストセットがあります。最初のものだけを実行する以外は、以下のようなテストオブジェクトを構築しようとしました。複数のBeforeを使用するための1つのNightwatchテストスイートでのネストテスト
module.exports = {
'test1': {
before: function() { console.log('before1'); },
'test 1a': function() { console.log('test1a'); }
},
'test2': {
before: function() { console.log('before2'); },
'test 1a': function() { console.log('test2a'); }
}
};
1つのテストスイートでこのようなネストを実行できますか?私は多くの「ページ」のオブジェクトで同じテストを実行し、動的テストスイートを構築したい
['page1', 'page2'].forEach(page => {
this[`Do something on ${page}`] = {
before: client => {
client.page[page].navigate();
},
'it does something': client => {
client.page[page]().expect.section('@element').visible;
}
}
:私が達成したい、実際の使用例は、このようなものです。
更新:私は本当にこの機能を持っているモカのような別のランナーを使用するのではなく、Nightwatchランナーを使い続けたいと思います。
"test_runner" : {
"type" : "mocha",
"options" : {
"ui" : "bdd",
"reporter" : "spec"
}
}
と、あなたはこのようなあなたのテストを書くことができます:
後、私はそれが良いデザインであると思ういけないこのテストランナーのことができます巣あなたが望むのテスト回参照し、ネストされたbeforesをサポートできるように、我々はテストケースを分離すべきですそれを作りなさい。私が行ったテストケースでは、前/後に多くのページオブジェクトが必要です(前提条件とテスト後のクリーンなもの)。できるだけシンプルにしてください。 –