Selmum ızgarasında e2e testlerimin çalışmasında sorun yaşadım. Bazen testler nasılsa protracotr.conf.js
yüksek değere defaultTimeoutInterval
değişen bo ama sonuçta beklemek daha uzundur ancak hata aynıdır bunu çözmek için çalıştıİletici/Yasemin2 - async geri çağırma belirtilen zaman aşımı içinde çağrılmadı
nedeniyle Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL.
başarısız olan. Başarısız testi ile
exports.config = {
chromeOnly: true,
chromeDriver: '../node_modules/.bin/chromedriver',
framework: 'jasmine2',
capabilities: {
'browserName': 'chrome',
shardTestFiles: true,
maxInstances: 3
},
specs: ['../e2e/protractor/spec/*.js'],
jasmineNodeOpts: {
showColors: true,
defaultTimeoutInterval: 30000,
isVerbose: true,
includeStackTrace: true,
},
Benim örnek numuneleri:
var LoginPage = gerektirir (' ../ sayfa/login_page.js'); var UsersPage = gerekli ('../ pages/users_page.js'); var WelcomePage = gerekli ('../ pages/welcome_page.js');
describe('Test -> my test', function() {
var loginPage;
var EC = protractor.ExpectedConditions;
var waitTimeout = 30000;
function logIn() {
loginPage.setUser('user');
loginPage.setPassword('password');
loginPage.login();
}
var clickOn = function (element) {
browser.wait(EC.visibilityOf(element), waitTimeout).then(function() {
element.click();
});
};
beforeEach(function() {
browser.ignoreSynchronization = true;
loginPage = new LoginPage();
browser.wait(EC.presenceOf(loginPage.userLogin), waitTimeout);
logIn();
var welcomePage = new WelcomePage;
clickOn(welcomePage.usersButton);
});
afterEach(function() {
var welcomePage = new WelcomePage();
welcomePage.loginButton.click();
welcomePage.logoutButton.click();
});
it('verifies counter on active tab', function() {
var usersPage = new UsersPage();
browser.wait(EC.visibilityOf(usersPage.firstRow), waitTimeout);
usersPage.rowsCount.count().then(function (count) {
expect(usersPage.activeTab.getText()).toContain('Active' + ' (' + count + ')');
});
});
Herhangi biri, bunun nasıl ele alınacağını/nasıl önleneceğini ve neden oluştuğunu açıklayan herhangi bir makul çözüm sunabilir mi?
Teşekkür eklemek yapılır, bunu benim kodunda gözükecek nasıl yazınız olabilir yürütme ? – Michal
@Michal Cevabımı değiştirdi. –
IIUC, 'done()' çağrısının 'o()' işlevi içinde olması gerekir. – Anton