如何从量角器返回对象

时间:2015-06-10 12:59:09

标签: javascript angularjs selenium testing protractor

我已经编写了以下代码来从表中返回文本。

现在,我想要这里的东西:dnassgn是页面名称,但在调用该函数后,返回值将变为空白。请建议我在哪里错。

 fetch_text_from_cell_in_table: function(col_val){
  var name_var="";
  var km = 0;
  var dm = 0;
  pointer1 = element.all(by.repeater('row in renderedRows')).then(function(posts) {
  for (ni = 0; ni < posts.length; ni++) 
    name_var= posts[ni].element(by.className(col_val)).getText().then(function(name){
      //console.log(valdation_value);
      console.log(col_val);
      console.log(name);
      var name_var = name.trim();
      return name;
  });
});
return name_var;
}, 


var dn_num=dnassgn.fetch_text_from_cell_in_table('colt0');
expect(dn_num).toBe('Not Found');

1 个答案:

答案 0 :(得分:0)

首先,你没有从你的功能中返回任何东西。

此外,根据我的理解,您需要过滤表格并获取特定列中的单元格的文本值(具有特定类名称的单元格,例如colt0)。使用map()

function fetch_text_from_cell_in_table (col_val) {
    return element.all(by.repeater('row in renderedRows')).map(function(post) {
        return post.element(by.className(col_val)).getText();
    });
});

用法:

var dn_num = dnassgn.fetch_text_from_cell_in_table('colt0');
expect(dn_num).toBe(['Not Found']);