ブラウザが初期ウィンドウサイズから変更されないようにする方法はありますか?テスト中にクリックされてウィンドウが最大化されるものがいくつかありますが、全体を通して同じサイズを維持したいと思います。
env構成で一度だけ設定します( test_settings
ナイトウォッチ設定ファイル内):
"desiredCapabilities": {
"chromeOptions": {
"args": [
"window-size=1280,800"
]
}
}
chromeフラグを設定しているため、このメソッドは機能することに注意してください。そのため、実装が異なる場合があります(たとえば、safariにはそのようなフラグがありません)。
これらのオプションをサポートしていないブラウザの場合は、ウィンドウのサイズを変更することをお勧めします 命令型globals beforeEach
hook::
{
beforeEach: function (browser, done) {
browser.resizeWindow(1280, 800, done);
}
}
nightwatch settings docs を読んで、グローバルがどのように使用されているかを確認してください。
上記のメソッドを使用すると、各テストで指定する必要はありません:)
次のように、各テストの前に画面サイズを修正できます。
module.exports = {
tags: ['myTest'],
before : function (browser) {
browser.resizeWindow(800, 600);
},
'Test #1' : function (browser) {
return browser
.url('http://localhost/test1')
.waitForElementVisible('body', 2000);
},
'Test #2' : function (browser) {
return browser
.url('http://localhost/test2')
.waitForElementVisible('body', 2000);
},
after : function (browser) {
browser.end();
}
}
これが彼らがPRを承認する必要があるFirefoxの修正です、そしてそれは機能します、 https://github.com/nightwatchjs/nightwatch/pull/2169