从中继器打印元素

时间:2017-02-11 00:03:23

标签: javascript angularjs protractor repeater

所以我对Javascript中的编程都很陌生,刚刚开始使用QA测试。我现在的目标很简单。我想确保在从列表中进行选择之前,所有元素都已加载到转发器中。在进行测试之前,我想等到第一个和最后一个元素出现。

我知道可能有更好的方法来做到这一点,随时向我提出建议。我一直在网上四处寻找代码片段,详细说明如何在中继器中打印元素值。

我想我首先要尝试打印出第一个和最后一个元素,以确保我正确地获取它们。我这样做了:

var repeaterElements = element.all(by.repeater(repeaterObj));
var text = repeaterElements.first().toString();
console.log(text);

我的目标只是简单地打印第一个元素。但是我得到它来打印[object Object]。我通过这个错误推理?我以为'.first()'会给我转发器中的第一个元素!

-hopper

1 个答案:

答案 0 :(得分:1)

我不能100%确定你想要什么,但我认为就是这样。这应该通过转发器,选择所有元素,获取这些元素的文本并控制它。如果你真的要做除了安慰之外的其他事情,记得保守你的承诺!

element.all(by.repeater(repeaterObj)).each(function(obj){
  obj.getText().then(function(text){
      console.log(text)
  });
});