Cypress系列(43)- visit() 命令詳解
阿新 • • 發佈:2020-09-03
如果想從頭學起Cypress,可以看下面的系列文章哦
https://www.cnblogs.com/poloyy/category/1768839.html
作用
訪問遠端 URL
語法格式
cy.visit(url)
cy.visit(url, options)
cy.visit(options)
引數講解
url
兩種值
- 需要直接訪問的 URL,可以是一個完整的 URL,比如:https://www.cnblogs.com/poloyy/
- html 檔案的相對路徑,路徑是相對於 Cypress 的安裝目錄,不需要file://字首
Cypress關於 url 的最佳實踐
- 建議在使用cy.visit()
- baseUrl 相當於一個全域性共享的 host,在使用visit()和request()等命令時自動將 baseUrl 傳遞進去
- 優勢:首次啟動 Cypress 測試時,新增 baseUrl 還可以節省一些時間
不新增 baseUrl 的影響
一旦遇到cy.visit(),Cypress 便將主視窗的 URL 切換到訪問指定的 URL,首次開始測試時,可能會導致重新整理或重新載入
新增 baseUrl 的優勢
- 通過設定 baseUrl,可以完全避免重新載入
- 測試開始後,Cypress 會將主視窗載入到您指定的 baseUrl 中
新增 baseUrl
baseUrl 未執行
如果在 cypress 開啟期間,指定了 baseUrl ,但伺服器未執行,則會看到錯誤
如果在 cypress 執行期間幾次重試後,伺服器未在指定的 baseUrl 上執行,也會顯示錯誤
其他引數 options
引數 |
預設 |
作用 |
method |
GET |
請求方法,GET或POST |
body |
null |
l與POST請求一起傳送的資料體 l如果是字串,則將其原封不動地傳遞 l如果是一個物件,它將被URL編碼為字串,並加上Content-Type:application / x-www-urlencoded |
headers |
{} |
請求頭 |
qs |
null |
Url的請求引數 |
log |
true |
是否列印日誌 |
auth |
null |
新增基本授權標頭 |
failOnStatusCode |
true |
是否在2xx和3xx以外的響應程式碼上標識為失敗 |
onBeforeLoad |
function |
在頁面載入所有資源之前呼叫指定的方法 |
onLoad |
function |
頁面觸發載入事件後呼叫 |
retryOnStatusCodeFailure |
false |
當狀態碼是錯誤碼時,Cypress是否自動重試,最多重試4次 |
retryOnNetworkFailure |
true |
當網路錯誤時,Cypress是否自動重試,最多重試4次 |
timeout |
pageLoadTimeout |
最長等待 .visit() 完成的時間 |
正確寫法
// 在新的視窗開啟 URL cy.visit('http://localhost:3000') cy.visit('./pages/hello.html')