Ensure API
概觀
自 Nightwatch 2.0 起提供的全新 .ensure
API 是對應 Selenium 中現有的 until 模組。
它的運作方式與現有的 .assert
函式庫類似,並提供大部分相同的功能,但它可能會提供額外的彈性層級。對於已經使用 Selenium 的 until
api 的使用者來說,它可能也更熟悉。
基本範例
describe('demo test for .ensure', function() {
it('basic test', function(browser) {
browser
.url('https://nightwatch.dev.org.tw')
.ensure.titleMatches(/Nightwatch\.js/)
.ensure.elementIsVisible('#index-container')
});
});
可用的斷言
.ableToSwitchToFrame(frame
)
確保 Nightwatch WebDriver 用戶端能夠切換到指定的框架。
參數
名稱 | 類型 | 描述 |
---|---|---|
frame |
Number|WebElement|By | 框架識別碼。 |
.alertIsPresent()
建立一個等待警示開啟的條件。
參數
無.elementIsDisabled(element
)
建立一個等待給定元素被停用的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementIsEnabled(element
)
建立一個等待給定元素被啟用的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementIsNotSelected(element
)
建立一個等待給定元素被取消選取的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementIsNotVisible(element
)
建立一個等待給定元素存在於 DOM 中,但未顯示給使用者的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementIsNotVisible(element
)
建立一個等待給定元素存在於 DOM 中,但未顯示給使用者的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementIsSelected(element
)
建立一個等待給定元素被選取的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementIsVisible(element
)
建立一個等待給定元素顯示的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
.elementTextContains(element
, substr
)
建立一個等待給定元素的文字包含給定子字串的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
substr |
String | 要搜尋的子字串。 |
.elementTextIs(element
, text
)
建立一個等待給定元素的文字等於給定文字的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
text |
String | 預期的文字。 |
.elementTextMatches(element
, regex
)
建立一個等待給定元素的文字符合給定正規表示式的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 要測試的元素。 |
regex |
RegExp | 要測試的正規表示式。 |
.stalenessOf(element
)
建立一個等待給定元素變得過時的條件。一旦元素從 DOM 中移除或載入新的頁面,就會被視為過時。
參數
名稱 | 類型 | 描述 |
---|---|---|
element |
WebElement | 應該變得過時的元素。 |
.titleContains(substr
)
建立一個等待目前頁面的標題包含給定子字串的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
substr |
String | 應該出現在頁面標題中的子字串。 |
.titleIs(substr
)
建立一個等待目前頁面的標題符合給定值的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
substr |
String | 預期的頁面標題。 |
.titleMatches(regex
)
建立一個等待目前頁面的標題符合給定正規表示式的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
regex |
RegExp | 要測試的正規表示式。 |
.urlContains(substrUrl
)
建立一個等待目前頁面的網址包含給定子字串的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
substrUrl |
String | 應該出現在目前網址中的子字串。 |
.urlIs(url
)
建立一個等待目前頁面的網址符合給定值的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
substrUrl |
String | 預期的頁面網址。 |
.urlMatches(regex
)
建立一個等待目前頁面的網址符合給定正規表示式的條件。
參數
名稱 | 類型 | 描述 |
---|---|---|
regex |
RegExp | 要測試的正規表示式。 |