2016-07-25 6 views
0

私はPythonの世界から来ています。私は私のテストに眠りをどのように加えることができるのかちょっと混乱しています。私は睡眠がベストプラクティスではないことを理解していますが、私はそれがどのようにできるかを学びたいと思っています。現在、私はブラウザを起動し、すぐにページの読み込み時間が失われるというテストをしています。デバッグ目的のために、私は数秒間テストを一時停止したいと思います。これは現在私がうまくいかないものです。ご回答いただきありがとうございます。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'); 
}); 

});

+3

何のスリープはありません、あなたは[スレッドをブロック]する必要があると思います(http://stackoverflow.com/questions/20967006/how-to-create-a-sleep- node-in-block-delay-in-blocking)を実行し、ブラウザをハングします。これが大きなノー・ノーである理由です。代わりにページが読み込まれたときに起動するイベントハンドラを使用します。例えば、 'window.onload'などです。 – adeneo

答えて

-1

私は仕事に以下を得ることになった:

function sleep(time, callback) { 
var stop = new Date().getTime(); 
while(new Date().getTime() < stop + time) { 
    ; 
} 
callback(); 

}

0

browser.pause(ミリ秒)は、正確に何をしたい行います。

browser.pause(1000);

関連する問題