Ich komme aus der Welt von Python und bin ein wenig verwirrt darüber, wie ich meinem Test Schlaf hinzufügen kann (erst seit einer Woche bei JS). Ich verstehe, dass Schlafen keine Best Practice ist, obwohl ich gerne erfahren möchte, wie es gemacht werden kann. Momentan habe ich einen Test, bei dem der Browser dann sofort fehlschlägt weil die Ladezeiten auf der Seite sind. Nur zum Debuggen möchte ich den Test für ein paar Sekunden pausieren. Dies ist derzeit was ich habe, das funktioniert nicht. Danke für deine Antworten.Sleeps, waitUntil, waitForVisible, waitForExist webdriverio
var assert = require('assert');
describe('basic login', function() {
it('verify user is able to login', function() {
browser.url('http://localhost:3000');
var elem = browser.element('div.accounts-dropdown > div.dropdown-toggle > span');
//elem.waitForVisible(2000); //not working
//elem.waitForExist(3000); //not working
return browser.waitUntil (function async() {
elem.click();
browser.setValue('//input', '[email protected]');
browser.setValue('//div[2]/input', 'kU3SPn75');
browser.click("//button[@type='submit']");
assert('//li/div/button');
}, 50000, 'something_test');
//browser.click('div.accounts-dropdown > div.dropdown-toggle > span');
});
});
Es sind keine schläft, dann würden Sie haben [Block den Faden] (http://stackoverflow.com/questions/20967006/how-to-create-a-sleep- delay-in-nodejs-das-ist-Blockieren) und hängen den Browser, weshalb es ein großes Nein ist. Verwenden Sie einen Event-Handler, der ausgelöst wird, wenn die Seite geladen wurde, zum Beispiel 'window.onload' usw. – adeneo