浏览器出现后 Nightwatch 立即崩溃 - 正在运行且未进行任何更改

Nightwatch crashes as soon as browser appears - was working and made no changes

我有一个 Nightwatch 项目 运行ning 在每天的计时器上测试我的网站。我有一个日志文件,我每隔几周检查一次,以确保一切顺利。今天我注意到它已经 运行ning,但在 运行ning 几秒钟后崩溃(通常需要半小时才能完成所有操作)。

过去一周我没有更改代码、更新任何程序包或节点,也没有故意更改计算机上的任何其他内容。

我在我的代码中放置了很多记录调用(我不得不使用我的 fs 记录器,因为 console.log 没有像往常一样在进程 运行 之后出现)。它并不总是通过代码在同一点退出,所以我认为这是 Nightwatch 的问题而不是我的。

我创建了一个简单的测试文件,可以用来查看我的复杂测试是否搞砸了。它会将日志打印到我的文件中,但不会 运行 任何测试,并且浏览器弹出不到一秒钟,然后整个系统崩溃。

当前测试:

const fs = require('fs');

module.exports = {
    '@tags': ['getDistricts'],
    'Get Districts Assert Title': function (browser) {
        fs.appendFile("./log.txt", "\nBROWSER: " + JSON.stringify(browser), function (err) { });
        browser.pause(100000); //prevent method from ending before tickets are retrieved
        fs.appendFile("./log.txt", "\nNew run: " + new Date(), function (err) { });
        browser
            .url('https://www.google.com')
            .waitForElementVisible('body')
            .assert.title('Google')
        fs.appendFile("./log.txt", "\nRan tests", function (err) { });
    }
};

日志文件:

BROWSER: {"capabilities":{},"globals":{"waitForConditionTimeout":15000},"sessionId":null,"options":{"screenshots":true,"screenshotsPath":"./node_modules/nightwatch/screenshots/","skip_testcases_on_fail":true,"log_screenshot_data":true,"username":"${SAUCE_USERNAME}","accessKey":"${SAUCE_ACCESS_KEY}","desiredCapabilities":{"browserName":"chrome","javascriptEnabled":true,"acceptSslCerts":true,"platform":"ANY","chromeOptions":{"args":["Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46\n            (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3","--window-size=640,1136"]},"name":"Temp Test"}},"launchUrl":"http://localhost","launch_url":"http://localhost","screenshotsPath":"./node_modules/nightwatch/screenshots/","Keys":{"NULL":"","CANCEL":"","HELP":"","BACK_SPACE":"","TAB":"","CLEAR":"","RETURN":"","ENTER":"","SHIFT":"","CONTROL":"","ALT":"","PAUSE":"","ESCAPE":"","SPACE":"","PAGEUP":"","PAGEDOWN":"","END":"","HOME":"","LEFT_ARROW":"","UP_ARROW":"","RIGHT_ARROW":"","DOWN_ARROW":"","ARROW_LEFT":"","ARROW_UP":"","ARROW_RIGHT":"","ARROW_DOWN":"","INSERT":"","DELETE":"","SEMICOLON":"","EQUALS":"","NUMPAD0":"","NUMPAD1":"","NUMPAD2":"","NUMPAD3":"","NUMPAD4":"","NUMPAD5":"","NUMPAD6":"","NUMPAD7":"","NUMPAD8":"","NUMPAD9":"","MULTIPLY":"","ADD":"","SEPARATOR":"","SUBTRACT":"","DECIMAL":"","DIVIDE":"","F1":"","F2":"","F3":"","F4":"","F5":"","F6":"","F7":"","F8":"","F9":"","F10":"","F11":"","F12":"","COMMAND":"","META":""},"expect":{},"assert":{},"verify":{},"currentEnv":"tempTest_1","currentTest":{"name":"Get Districts Assert Title","module":"tempTest","results":{"steps":[],"passed":0,"failed":0,"errors":0,"skipped":0,"tests":0,"testcases":{},"timestamp":"Thu, 22 Aug 2019 18:50:31 GMT","time":0},"group":""}}
New run: Thu Aug 22 2019 13:50:31 GMT-0500 (Central Daylight Time)
Ran tests

npm 测试 --verbose:

npm info it worked if it ends with ok
npm verb cli [ 'C:\Program Files\nodejs\node.exe',
npm verb cli   'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js',
npm verb cli   'test',
npm verb cli   '--verbose' ]
npm info using npm@6.9.0
npm info using node@v10.16.0
npm verb run-script [ 'pretest', 'test', 'posttest' ]
npm info lifecycle artms-nightwatch@1.0.24~pretest: artms-nightwatch@1.0.24
npm info lifecycle artms-nightwatch@1.0.24~test: artms-nightwatch@1.0.24

> artms-nightwatch@1.0.24 test C:\Users\malai\Nightwatch
> nightwatch --env local

Starting selenium server in parallel mode... started - PID:  23680

Started child process for: tempTest

  >> tempTest finished.


npm verb lifecycle artms-nightwatch@1.0.24~test: unsafe-perm in lifecycle true
npm verb lifecycle artms-nightwatch@1.0.24~test: PATH: C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin;C:\Users\malai\Nightwatch\node_modules\.bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Program Files\Java\jdk1.8.0_211\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\ProgramData\chocolatey\bin;C:\Program Files\Microsoft VS Code\bin;C:\Program Files\Git\cmd;C:\Program Files\nodejs\;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\dotnet\;C:\Program Files (x86)\dotnet\;C:\Users\malai\AppData\Local\Microsoft\WindowsApps;C:\Users\malai\AppData\Roaming\npm;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Users\malai\.dotnet\tools
npm verb lifecycle artms-nightwatch@1.0.24~test: CWD: C:\Users\malai\Nightwatch
npm info lifecycle artms-nightwatch@1.0.24~test: Failed to exec test script
npm ERR! Test failed.  See above for more details.
npm verb exit [ 1, true ]
npm timing npm Completed in 4145ms
npm verb code 1

我一直无法弄清楚为什么它停止工作,但我从头开始并在最新版本的 Nightwatch 上重建项目并复制我的测试并再次工作。