我用量角器爲我的自動化測試和我遇到以下行爲:使用browser.get導致異步腳本超時
當我嘗試使用browser.get加載certin頁面加載頁面,但我出現以下錯誤:
Error while running testForAngular: asynchronous script timeout: result was not received in 11 seconds.
我使用browser.get以下列方式:
beforeEach(function() {
browser.ignoreSynchronization = false;
browser.get('https://.../Automation_VF');
browser.ignoreSynchronization = true;
},60000);
it(data.testProperties.Description, function() {
browser.executeScript('return RemoteActions;')
.then(function(remoteAction) {
browser.executeAsyncScript(function(remoteAction) {
var callback = arguments[arguments.length - 1];
Visualforce.remoting.Manager.invokeAction(remoteAction.clearAllData, function (res, ev) {
callback(res);
}, { buffer: false, escape: false, timeout: 15000 });
},remoteAction).then(function(res) {
console.log("executing async script");
console.log(res);
});
});
});
我的conf文件是:
exports.config = {
framework: 'jasmine2',
seleniumAddress: 'http://localhost:4444/wd/hub',
specs: ['multiTestRun.js'],
getPageTimeout: 60000,
rootElement: '[ng-app]',
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 10000000,
isVerbose: true,
includeStackTrace: true
},
...
};
頁面Automation_VF是非角度頁面。 如果我嘗試在browser.ignoreSynchronization設置爲true之後使用browser.get命令,則頁面不會被禁用。
我的問題是爲什麼我得到上面提到的錯誤(即使當它塊內的所有代碼都被註釋掉了,錯誤也會發生),以及如何讓browser.get命令使用執行腳本命令在它塊內?
將獲取操作移動到頁面對象,因爲你建議不幫助我仍然得到相同的錯誤信息的任何其他建議? – user3475306
你有沒有試過從簡單的獲取頁面測試開始?看起來你做了很多不同的事情,從一個已知的狀態**開始可能會有所幫助。例如,在每個和其他屬性功能之前剪掉它,然後做一個基本的描述,然後測試一下,就可以調出並獲取頁面。確認你可以到達那裏**然後**開始添加東西。有時當我撞到牆時,我需要回到正軌並讓自己處於積極狀態。 – Sevfuria