Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 量角器在不使用browser.sleep的情况下编写更干净的测试用例_Javascript_Angularjs_Selenium_Selenium Webdriver_Protractor - Fatal编程技术网

Javascript 量角器在不使用browser.sleep的情况下编写更干净的测试用例

Javascript 量角器在不使用browser.sleep的情况下编写更干净的测试用例,javascript,angularjs,selenium,selenium-webdriver,protractor,Javascript,Angularjs,Selenium,Selenium Webdriver,Protractor,我不熟悉量角器和jasmine,我使用了很多browser.sleep来让我的测试用例工作 it('Procedure tab-', function() { element(by.linkText('Medical History')).click(); browser.sleep(500) element(by.linkText('Personal History')).click(); browser.sleep(200)

我不熟悉量角器和jasmine,我使用了很多browser.sleep来让我的测试用例工作

it('Procedure tab-', function() {

        element(by.linkText('Medical History')).click();
        browser.sleep(500)
        element(by.linkText('Personal History')).click();
        browser.sleep(200)
        element(by.linkText('Procedure')).click();
        browser.sleep(500)
        element(by.css('[data-ng-show="ptab.index  === 1"] > [profile="profile"] > #medicalhistory > .card > [header="header"] > .card-header-bg > .title-header > .row > [ui-sref=".procedure.new"] > [data-ng-hide="important"]')).click();
        browser.sleep(500)
        $('label[for="dis4Appendicitis"]').click();
        browser.sleep(2000)
    })
不使用浏览器编写测试用例有什么更有效的方法。睡眠…。我一直在使用睡眠,因为互联网连接速度较慢等等


感谢您的帮助

执行任何测试的有效方法是使用和等待。隐式等待可以添加到conf.js文件中,以便在测试执行的一开始,量角器就考虑到它。这里有一个例子-

browser.manage().timeouts().implicitlyWait(10000); //Wait for 10 seconds before failing particular actions/operations
而显式的等待可以通过使用函数和

这有效地替换了
browser.sleep()
方法 正在检查指定的预期条件

下面是如何使用它-

var EC = protractor.ExpectedConditions;
var elem = element(by.css(LOCATOR));
browser.wait(EC.visibilityOf(elem), 10000); //Wait for 10 seconds before failing the step

希望有帮助。

执行任何测试的有效方法是使用和等待。隐式等待可以添加到conf.js文件中,以便在测试执行的一开始,量角器就考虑到它。这里有一个例子-

browser.manage().timeouts().implicitlyWait(10000); //Wait for 10 seconds before failing particular actions/operations
而显式的等待可以通过使用函数和

这有效地替换了
browser.sleep()
方法 正在检查指定的预期条件

下面是如何使用它-

var EC = protractor.ExpectedConditions;
var elem = element(by.css(LOCATOR));
browser.wait(EC.visibilityOf(elem), 10000); //Wait for 10 seconds before failing the step

希望能有所帮助。

谢谢Girish这有帮助……我应该如何等待api调用的响应……隐式调用将失败,因为响应尚未完成received@AmoghAngadiapi调用是否会改变网页UI中的任何内容?如果是,那么使用答案中提到的链接中提供的各种预期条件,显式等待该元素出现或更改可能会有所帮助。如果这不能解决您的问题,请使用api调用详细信息更新您的问题。感谢Hanks Girish这有帮助……我应该如何等待api调用的响应……隐式调用将失败,因为响应尚未完成received@AmoghAngadiapi调用是否会改变网页UI中的任何内容?如果是,那么使用答案中提到的链接中提供的各种预期条件,显式等待该元素出现或更改可能会有所帮助。如果这不能解决您的问题,请使用api调用详细信息更新您的问题。谢谢