如何使用Protractor从表中检索行?

时间:2018-02-17 01:25:27

标签: angularjs node.js selenium protractor automated-tests

我正在使用量角器进行UI测试。我试图从表中检索和验证行。 以下是我的代码。我在这里遇到的问题是,当我执行console.log时,它返回表中的每一行,但是当我确实希望用行验证时。它使用空值进行验证。我正在为我的流程使用async.series。下面的函数是我异步的一部分。每行的值为#34; SDY789"。

final Data data = new Data();
data.setFkTrkId(trackingId);

还请建议如何仅检索特定列。该表未使用ng-repeat,因此我无法使用Protractor的转发器控件。

2 个答案:

答案 0 :(得分:0)

我已经通过定位特定列来解决了这个问题,并且能够从特定列中检索数据。

function(callback){
        element.all(by.tagName("table > tbody > tr > td:nth-child(4)")).each(function(row,index){
            row.getText().then(function(text){
                console.log("print text************"+text);
                expect(text).toContain("SDY789");
            })
        })
callback();
}

答案 1 :(得分:0)

简化代码:

var table = $$('table tr');
table.each(function(row) {
  var rowElems = row.$$('td');
  expect(rowElems.count()).toBe(4);
  expect(rowElems.get(3).getText()).toContain("SDY789");
});