可重复使用的指标值
Protractor reuseable values
本文关键字:指标值 更新时间:2023-09-26
我在从Protractor测试中获取值并能够重用这些值时遇到了一些麻烦。
我有一个应用程序,可以从表单中创建新记录,然后将它们显示给用户。添加成功后,会向用户显示一个成功警报,显示新创建的记录的ID。"您已成功添加ID为{{newEntry.ID}}的条目"。
我有一套测试,断言所有字段都经过了正确的验证等等,这些都能正确工作。我现在想通过获取新创建的记录并测试一组新值是否正确更新来测试更新方面的内容。因此,我想获取新创建的记录的ID并重用它
我已经在我的套件的顶部创建了变量ID
var id;
然后,我在表单上运行所有验证测试,并提交正确的提交文件。然后,我检查是否显示了成功消息,在本例中,ID=2。
describe('Add users', function() {
var endpoint = "users";
var id;
correctSubmission(endpoint, id);
function correctSubmission(endpoint, id) {
describe('Testing correct submission', function() {
it('should navigate back to the list page', function() {
expect(browser.getCurrentUrl()).toBe("list/" + endpoint);
});
it('should display a success message', function() {
expect(element(by.css('.alert-success')).isPresent()).toBeTruthy();
});
it('should get the record ID from the success message', function() {
expect(element(by.css('.add-message')).evaluate('newEntry.id')).toEqual(2);
id = element(by.css('.add-message')).evaluate('newEntry.id');
return id;
});
});
};
});
我基本上需要得到等于2的ID,并将其返回到全局ID,这样我就可以在其他测试中使用它。显然,ID目前是一个未解决的承诺,我已经尝试使用:
protractor.promise.all(id).then(function (result) {
console.log("ID is: " + result);
});
但这只记录字符串。
我有点不知道下一步该做什么,因为我尝试了各种各样的方法,但都无济于事,我被这个项目耽误了时间。
非常感谢,如果你能帮助这个Protractor n00b。
您是否尝试使用量角器params
配置属性?
exports.config = {
params: {
myid: 'somevaluehere'
}
};
然后你可以通过访问它
browser.params.myid
相关文章:
- 为什么IIFE的这个变量指的是全局范围
- 指定单击链接时要加载的xml文件
- 什么是“;自举;在Angular 2的上下文中是指
- 为循环函数中的元素指定单击
- 为什么“this”指的是全局对象
- JavaFX8WebEngine's的executeScript(“window”)方法是指JavaScript
- Sails.js指全球范围内的包裹
- 为什么"这个“;指的是javascript中forEach中的Window
- 指定单击以从数据库中动态创建数据
- 我怎么知道括号指的是什么
- 为什么“this”指的是对象“obj”而不是全局对象
- 多指触摸轻扫事件
- 锚链接是指在浏览器刷新、后退和前进时不起作用的页面部分
- 检测桌面 Safari 的双指滑动
- XML/JavaScript 解析节点 - 按名称指定子节点
- 在jquery或jquery移动中,如何将用户创建的链接传递到用户创建的按钮?我所说的用户是指最终用户,而不是我
- 回调后指自己
- 为什么 String.prototype 中的“this”指的是对象类型,而不是字符串类型
- 概念 - 在 addEventListener 回调中,“this”指的是什么
- 可重复使用的指标值