1

所以我一直在試驗NW,並且發現它是KISS(Keep It Stupid Simple)!儘管我遇到了一個問題。元素是存在的,但是nightwatch.js沒有看到元素

我是一個自由職業的QA測試人員,主要關注手動測試,但是我正在分支出自動化以幫助加快工作任務。

我目前正在測試的網站在導航到它時有兩個步驟。結構如下: 1:導航到URL 2:「訂閱頁面」包含框顯示輸入你的電子郵件 3:一旦電子郵件進入,箱變有用戶輸入自己的郵政編碼

當用戶在電子郵件部分,如果電子郵件不是語法有效的,它將包含一個小X圖標,如果其有效,則包含複選標記 對於郵編部分也是如此。

我測試了什麼: 電子郵件和郵政編碼的無效和有效圖標顯示時,他們應該。

我把我的測試分成兩段。 1用於測試電子郵件地址圖標,1用於測試郵編圖標。 我已經收到了編寫的電子郵件地址測試,並且它們運行得非常完美,但是郵政地址對我來說一直不成功。

這是我用於郵政編碼的一段代碼。

在運行時,我看到:

✔ Element <#two_step_div> was present after 985 milliseconds. 
    ✔ Testing if the page title equals "WEBSITE TITLE HERE". 
    ✔ Element <#postal_code> was present after 14 milliseconds.s 
    ✖ Timed out while waiting for element <input[class="js-zip js-success"]> to be present for 10000 milliseconds. - expected "visible" but got: not found 


'This is checking valid zip icon is present': function (browser) { 
    browser 
     .url("WEBSITE_URL HERE") 
     .waitForElementPresent("#two_step_div", 8000) 
     .assert.title('WEBSITE TITLE HERE') 
     .setValue('input[type=text]', ['[email protected]', browser.Keys.ENTER]) 
     .waitForElementPresent("#postal_code", 10000) 
     .setValue('input[type=text]', '12345') 
     .waitForElementVisible('input[class="js-zip js-success"]', 10000) 
     .end(); 
    }; 

好像它只是跳過了.setValue線,因爲它甚至不看起來像它的添加「12345」郵政編碼,我很specifyings 。

任何想法?

+0

您正在使用哪種瀏覽器? – Saifur 2014-11-24 20:46:10

+0

Mac OS X上的Chrome(10.9.5) – Jordan 2014-11-24 20:53:31

+0

我對那個api不熟悉。但是,你知道是否有任何方法可以在文本字段上通過「清除」? – Saifur 2014-11-24 21:00:59

回答

1
'This is checking valid zip icon is present': function (browser) { 
    browser 
     .url("WEBSITE_URL HERE") 
     .waitForElementPresent("#two_step_div", 8000) 
     .assert.title('WEBSITE TITLE HERE') 
     .setValue('input[type=text]', ['[email protected]', browser.Keys.ENTER]) 
     .waitForElementPresent("#postal_code", 10000) 
     .setValue('#postal_code', '12345') 
     .waitForElementVisible('input[class="js-zip js-success"]', 10000) 
     .end(); 
    };