在Appim wd.js中存储元素文本

时间:2016-10-24 14:08:55

标签: javascript selenium-webdriver mocha appium

我是Appium的新手,我正在尝试使用此workshop Git project,它依赖于wd.jsGrunt。就我在文档和帖子中看到的,有两种方法可以访问mocha规范中某些原生元素的文本。

首先:

it('should be able to do stuff', function (done) {
    this.driver
      .elementsByClassName('android.widget.EditText').at(0)
        .sendKeys('Test')
        .text().should.eventually.equal('Test')
      .nodeify(done);
  });

第二

it('should be able to do stuff', function (done) {
  this.driver
    .waitForElementByCss("#my-id" , 2000, function(err, el) {
    el.text(function(err, text) { text.should.equal('Test'); });
    })
  .nodeify(done);
});

将任何找到的元素的文本存储在变量中的方法是什么?

2 个答案:

答案 0 :(得分:0)

var text = this.driver
  .elementByClassName('android.widget.EditText')
    .text();

.elementByClassName()根据搜索条件返回元素,.text()返回该元素的文本值。

有关所有现有驱动程序命令,请参阅wd.js的API文档:https://github.com/admc/wd/blob/master/doc/api.md

答案 1 :(得分:0)

it('should be able to do stuff', function (done) {
driver.waitForElementByClassName("#my-class" , 2000)
.then(function(el){
 el.text().should.equal('Test');
 done();
 )}
});

这就是我在Appium + wd.js + mocha

中的表现