量角器-如何从中继器而不是元素中获得实际值
Protractor - How to get actual values from the Repeater, not the Elements?
我正在创建一个Protractor脚本来测试我的智力竞赛游戏,该游戏会随机提出问题和答案,所以我需要我的脚本来找出哪个答案是正确的,这样我就可以点击它。
我不知道如何直接从模型而不是元素中获取值,因为correct/incorrect不会在页面上显示为元素。
该模型在Choice in Question.Choices
中提供了答案,我需要找到Choice.IsCorrect
为真的Choice。如何获取此值?
我不会使用element()
函数,对吧?
element(by.repeater('Choice in Question.Choices').row(0).column('Choice.IsCorrect'))
我们的想法是将element.all()
与filter()
和evaluate()
:结合使用
var correctChoices = element.all(by.repeater('Choice in Question.Choices')).filter(function (elm) {
return elm.evaluate('Choice.IsCorrect').then(function (value) {
return value;
});
});
结果CCD_ 7将包含其中CCD_ 8是真的元素。
如果需要获得正确选择的值数组,请使用map()
和getAttribute()
:
correctChoices.map(function (elm) {
return elm.getAttribute('value');
});
或者,如果您需要文本,请使用getText()
:
correctChoices.map(function (elm) {
return elm.getText();
});
相关文章:
- Webdriver.io pageObject模式-通过传递参数来定义元素选择器
- 获取中继器控件ASP.Net中显示的单击项目文本框
- 需要在量角器中找到使用ng中继器的li元素的数量
- 如何在中继器中找到标头控制
- 让ASP.NET中继器设置一个动态名称
- 如何在使用Protractor测试时找到ng中继器的最后一个元素
- 如何在AnglujarJS ng中继器中选择特定元素
- 具有多个值的AngularJS滤波器中继器
- 量角器-如何从中继器而不是元素中获得实际值
- 使用元素选择器向Object添加函数
- 中继器控件内的 IF 条件
- ng中继器打印结果0;当我运行函数时
- 如何在ng中继器运行中执行功能
- 通过javascript访问中继器中的asp元素
- 从量角器中的复杂中继器访问元素
- 从中继器循环中显示的子自定义元素获取正确的上下文.奥蕾莉亚
- 将元素添加到具有动画的中继器中
- 有条件地渲染中继器中的元素
- asp.net:如何使用javascript或jquery访问中继器生成的元素
- 如何在ASP中选择特定的html元素.. NET中继器通过jQuery/javascript