【问题标题】:Protractor: element.getText() returns an object but not String [duplicate]量角器:element.getText() 返回一个对象但不是字符串 [重复]
【发布时间】:2016-06-04 17:01:00
【问题描述】:

我也检查了链接:Protractor: element.getText() returns an object and not String 但我在上面的链接上没有找到答案,我想要字符串作为回报??

【问题讨论】:

  • 在我看来完全一样。如果我错了,请纠正我。谢谢。

标签: protractor webdriverjs


【解决方案1】:

所有量角器的方法都返回承诺,要解决该承诺,您需要发送如下内容:

element.getText().then(function(text) {
console.log(text);
});
or use "expect"-->jasmine's assertion
expect(element.getText()).toEqual("Your Text");

有关我建议的承诺的详细想法,请通过此链接: http://www.html5rocks.com/en/tutorials/es6/promises/

【讨论】:

  • 我试过了: var abc= element(by.xpath("//h1[@ng-model='Save Employee']")); abc.getText().then(function(value) {console.log(value);}); //输出-未定义,但我想要文本而不是对象或未定义
  • ok 试试这个元素(by.xpath("//h1[@ng-model='Save Employee']")).getText().then(function(text)){ console.日志(文本)});如果它不起作用,您的 xpath 就有问题。
  • Xpath 会减慢 dom 的渲染过程,进而减慢您的脚本,xpaths 应该始终是最后一个选项,请改用 cssSelectors 或内置量角器定位器。 var abc = element(by.model('Save Employee'));
  • @Saurabh 承诺可以接受 2 个参数:成功和错误回调。试试element(by.xpath("//h1[@ng-model='Save Employee']")); abc.getText().then(function(success) {console.log("SUCCESS: "+success);}, function(error){console.log("ERROR: "+error);});我猜你的xpath有问题,错误函数会帮你识别。
  • @Saurabh 请检查 gitter,我已经发布了我的答案,也请检查此链接以在 StackOverflow 中提问:stackoverflow.com/help/someone-answers
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-30
  • 2016-02-09
  • 2018-08-22
  • 2016-04-19
  • 1970-01-01
  • 2018-08-12
相关资源
最近更新 更多