2013-03-19 97 views
10

我正在首次運行Node.js + Mocha + Selenium Webdriverjs的組合。我根據他們的文檔https://code.google.com/p/selenium/wiki/WebDriverJs設置了一切,但我發現很難真正找到所有可通過網絡驅動程序獲得的命令列表。使用Selenium webdriverjs編寫測試時是否有可用的命令列表?Selenium WebDriverJs命令

比如我會如何使用JavaScript

new Wait("Couldn't find close button!") { 
    boolean until() { 
    return selenium.isElementPresent("button_Close"); 
    } 
}; 

實現下面的Java代碼我知道我可以使用driver.wait但它不承認until命令或isElementPresent

回答

8

我直接看這裏文檔的源文件。這其實很不錯:

https://code.google.com/p/selenium/source/browse/javascript/webdriver/webdriver.js

在回答你的問題,你真的不希望在WebDriverJS等待,你要習慣的延遲對象,並承諾API。我剛寫的一篇博客文章在這裏,應該幫助你:

http://xolv.io/blog/2013/04/end-to-end-testing-for-web-apps-meteor

+0

謝謝,幫助! – Dan 2013-04-22 21:26:41

+0

該博客鏈接現在已過時。正確的鏈接是:http://xolv.io/blog-posts/2013/04/end-to-end-testing-for-web-apps-meteor – 2015-12-29 00:03:18

+0

修復了重定向,謝謝 – 2015-12-29 00:29:21

0

@op,最好使用一個鏈接聲明。我使用until和isElementPresent命令,它們用於生產準備(CI/CD)列車過程。 調整您的代碼,因此應該工作

var isDisplayed = function(){ 
     driver.isElementPresent(by.id('button id')).then(function(isDisplayed){ 
      expect(isDisplayed).to.be.true 
     }); 
    };