javascript - 变量在 Protractor 测试中丢失指定值

标签 javascript angularjs protractor automated-tests

我正在运行 Protractor 测试,该测试应检查网格中是否存在具有特定许可证号的记录。但是,在遍历所有行后,它会丢失为 rowNumber 变量分配的值。不知道为什么要这样做。 rowNumber 应等于索引。

这是我的测试。

var rowNumber = null;
var rows = element.all(by.repeater('(rowRenderIndex, row) in rowContainer.renderedRows track by $index'));

it('should find row the created Driver Licence lives on', function() {
    rows.each(function(element, index) {
        element.getText().then(function (text) {
            if (text.includes(licenceNumber)) {
                rowNumber = index;    //rowNumber does equal the index at this point
                return true;
            }
        });
        expect(rowNumber).not.toEqual(null);
    });

});

最佳答案

终于解决了。这就是我所做的

it('should find row the created Driver Licence lives on', function() {
    rows.each(function(element, index) {
        element.getText().then(function (text) {
            if (text.includes(licenceNumber)) {
                rowNumber = index;
                return true;
            }
        }).then(function() {
            expect(rowNumber).not.toEqual(null);
        });
    });
});

关于javascript - 变量在 Protractor 测试中丢失指定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50853956/

相关文章:

javascript - 将 jQuery 对象分配给 JavaScript 对象以进行事件绑定(bind)的首选方法是什么?

javascript - 如何创建一棵 promise 树?

javascript - 如何添加 :after in javascript

javascript - ng-repeat 内的 ng-if 始终返回 true

node.js - Node : How do I order my tests to run synchronously? 中的 Protractor

javascript - 在 conf.js 的插件配置中使用 Protractor 参数值

javascript - 使用 jquery IE 10 与 Chrome 的缓慢/滞后单选按钮

javascript - 未设置选择框的默认值

javascript - angular.js 应用程序配置阶段的 Spyon 提供程序

node.js - 在 cmd 中执行时,“webdriver-manager start”步骤卡住了