javascript - 如何使用 Protractor 测试 asp.net webforms(非 Angular )?

标签 javascript .net testing protractor end-to-end

我对 Protractor 和测试 .NET 应用程序还很陌生。我正在尝试从头开始构建自动化测试脚本。以下是 HTML:

<div class = "top">
<span id = "welcome">
<em>Hi</em> 
"," 
<strong>
<span id = "user">MyName</span></strong> 
"|"
</span>'

我的 Protractor 代码是:

var greet = element(by.id('user')); expect(greet.getText()).toBe('MyName');

我已经完成了这段代码:

var greet = element(by.id('welcome')).element(by.id('user'));
expect(greet.getText()).toBe('Hi, MyName'); // or toEqual("Hi, MyName");

但我仍然收到一条错误消息说

Failed: No element found using locator: by.id("welcome")

Failed: No element found using locator: by.id("user")

希望听到所有经验丰富的 Protractor 测试人员的意见。

最佳答案

这看起来真的像是一个时间问题。让我们尝试等待元素出现:

var EC = protractor.ExpectedConditions;
var greet = element(by.id('user'));

browser.wait(EC.presenceOf(greet), 5000);

expect(greet.getText()).toBe('MyName');

关于javascript - 如何使用 Protractor 测试 asp.net webforms(非 Angular )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34818868/

相关文章:

javascript - AngularJS - 在使用 ng-click 运行功能之前需要输入字段

c# - log4net: Assembly System.Xml.XmlElement not referenced 错误,虽然没有使用

testing - 检测 Nose 测试中的失败

reactjs - "toHaveStyle"不适用于 Jest (React Typescript)

通过使用 QuickCheck 生成输入来测试 Parsec 解析器

javascript - 如何根据此项目顺序将项目添加到列中

基于 Javascript 的、无服务器的 CMS?

javascript - 在 Laravel 中发布到数组错误

.net - 无法使用 JavaScript 隐藏我的 DIV

.net - 尝试访问 "Microsoft.Practices.EnterpriseLibrary.Caching"时 "CacheFactory.GetCacheManager();"有什么问题?