获取元素的可见文本

时间:2014-01-23 22:25:32

标签: javascript node.js selenium-webdriver

这是一个非常简单的问题,但我似乎找不到答案,因为selenium-webdriver的javascript绑定文档非常稀疏。 (有很多关于java绑定的文档,但javascript是另一个故事)

假设driverwebdriver通常是实例化的,我如何获取任意元素的文本?

我已经尝试过令人难以置信的getText(),然后()等组合,但我做的一切似乎都没有用。我一定是做错了。

1 个答案:

答案 0 :(得分:5)

对于它的价值,我在我的测试套件中的另一个测试中发现了以下类似(工作)的代码。对我来说很奇怪,我能够让其他测试(下面)工作,但不是我一直关注的那个。

driver.findElement(webdriver.By.css('.failures em')).getText().then(function(v) {
    expect(v).to.equal('0');
    done();
});

也许我忽略了别的东西。

无论如何,我对selenium-webdriver令人困惑的混合同步/异步代码与Promises之类的东西感到非常沮丧。我决定转而使用WebdriverJS(http://www.webdriver.io/),到目前为止,已经发现迁移非常直观且令人满意。测试再次有趣! :)

祝你好运!