[英]Protractor - ScriptTimeoutError: asynchronous script timeout: result was not received in 20 seconds
[英]Protractor Failed:Script timeout if I have 20+ tests in one JS file
Failed: chrome not reachable
(Session info: chrome=78.0.3904.108)
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:25:53'
Driver info: driver.version: unknown
如果一個 JS 文件中的“it”語句超過 20 個,我就會收到這樣的錯誤。 我正在考慮添加 JasmineNodeOpt 可能會起作用,但它最終給了我同樣的錯誤。 我還能在這里嘗試什么?
更新:1)將您的硒承諾管理器設置為 False。
exports.config = {
...
SELENIUM_PROMISE_MANAGER: false,
...
};
2) 使用 async/await 來處理等待:你可以在這里找到一個例子: https : //github.com/BhattcharyaCodes/google_search_automation這樣,如果有一個之前沒有處理過的承諾,不會是一個壞蛋導致這個錯誤。
3)在規范級別分發您的測試。 因此,擁有多個規范文件,您可以在不同的實例上運行測試。 嘗試並行運行您的測試,而不是 1 個瀏覽器實例,這樣您就可以優化您的時間。 為此,您可以添加,
// Capabilities to be passed to the webdriver instance.
capabilities: {
'maxInstances': 5,
'browserName': 'chrome',
},
到您的protractor_configuration_file.js
。
MaxInstances:它轉換為可以在遠程系統上運行的相同版本瀏覽器的實例數,您的規范中的測試腳本在其中執行。
此外,您提到增加值“JasmineNodeOpt”,但出於明顯的原因,這不是超出設定閾值的可擴展選項,因此我們增加實例以減少總時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.