javascript - 我应该明确等待元素在 Protractor 测试中可见吗?

标签 javascript testing selenium-webdriver protractor end-to-end

如果我的页面是使用 AJAX 请求呈现的,我应该执行类似的操作

waitForElementToBeVisible('.todoListItem');
//that is my custom function that waits 
//till element will be rendered

调用电话之前:

element(by.model('todoList.todoText')).sendKeys('write first protractor test');

哪个 sendKeys 到具有 CSS 类 .todoListItem 的元素?

最佳答案

如果这是一个正在测试的 AngularJS 应用程序,那么事情应该由 protractor 自然地处理 - 它始终与 Angular 同步工作。但这只是理论。

实际上,情况并非总是如此 - 例如,我们的测试代码库到处都有 browser.wait() 调用,以使测试按照我们希望的方式工作。

请注意disabling Angular animations 增加隐式等待超时有时也会有所帮助。

另请参阅:

关于javascript - 我应该明确等待元素在 Protractor 测试中可见吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34387936/

相关文章:

javascript - jquery 中的日期选择器只能在未来日期的 2 年零 6 个月内启用

testing - Mockito:给出与何时

javascript - node.js "net"性能测试

php - Laravel 5.1 - 测试多选框

javascript - 当 webdriverjs 从不调用延续,只是挂起时该怎么办?

javascript - 在触摸设备上拖动时停止滚动

javascript - WPF WebBrowser - 在 JavaScript 中调用方法

java - 元素当前不可见,因此可能无法与命令持续时间或超时交互 : 28 milliseconds

java - 异常 "Was passed main parameter ' webdriver' 但未定义主要参数 创建注释时出错

javascript - Google Chart API : One data series, 两个垂直轴