Cypress(二)Cypress相關介紹

1、簡介java

Cypress是新一代ui測試框架,相似於selnium,它基於node js,支持webpack構建。node


功能特色:webpack

1.時間旅遊:測試的每一步都有 snapshot,只需將鼠標懸停在命令日誌中的命令上,就能夠準確地查看每一個步驟中發生了什麼。web


2.可調試:咱們無需猜想測試用例爲什麼失敗,直接從熟悉的工具進行調試(例如:谷歌瀏覽器的開發者工具),可讀錯誤和堆棧跟蹤讓調試更有效率。npm


3.自動等待:再也無需在測試用例代碼中添加 wait 或 sleep 代碼,Cypress 會自動等待命令和斷言完成。json


4.函數間諜:響應劫持、時鐘回撥:驗證和控制函數、服務器響應和時鐘。經常使用的單元測試功能。瀏覽器


5.網絡通訊控制:無需涉及服務器便可控制、保存和測試邊緣狀況。你能夠根據須要保留網絡流量。服務器


6.視圖快照和視頻:從命令行運行測試時,咱們能夠查看失敗用例的視圖快照和整個測試過程的視頻。微信


2、開發工具網絡

1.VSCode 由微軟研發的一款免費、開源的跨平臺文本(代碼)編輯器。幾乎完美的編輯器

下載地址https://code.visualstudio.com/Download


2.webstorm WebStorm 是jetbrains公司旗下一款JavaScript 開發工具。習慣intelij idea開發java的同窗能夠選擇它

下載地址https://www.jetbrains.com/webstorm/


3、Cypress的目錄結構

fixtures:測試用例中須要用到的資源,包括測試數據、圖片、json信息等,可使用cy.fixture讀取


integration:測試腳本存放目錄,容許多級目錄,其下的example目錄是官方提供的測試腳本樣例


cypress.json:Cypress的配置文件


package.json和package-lock.json  npm初始化項目自動生成的文件


測試腳本不按規範命名,結尾不寫spec也能運行,可是最好仍是按照規範.spec.js結尾。


四.測試用例運行

右上角選擇你電腦上的瀏覽器,我這裏選的是谷歌,能夠單個點測試用例腳本文件,也能夠點右上角Run all specs統一執行全部的用例。


五.Cypress元素定位

在腳本運行界面點擊右邊左上角定位的圖標,這個時候你就能夠選擇你要定位的元素了,選擇好要定位的元素,圖3位置直接就會出現定位的代碼了,你能夠直接拷貝到你的項目裏,方便至極。


六.優缺點分析

優勢:

1.安裝簡單,API簡單易上手


2.速度上比selenium要快,輕便


3.定位元素至關方便,不像selenium不少時候元素找不到,必須經過copy全的xpath或者定位到父節點而後遍歷直到找到子節點


4.有重試機制,某些步驟運行失敗時自動重試,這樣能夠提升運行的穩定性,不至於一旦網絡卡頓致使失敗拋異常當即退出


5.運行過程直觀,能夠回看某一步執行過程,運行失敗時自動截圖


6.內置的cy.request能夠跳過ui層,直接調用接口


7.自帶數據mock機制


8.支持webpack構建打包及相關配置


缺點及不足

1.不擅長瀏覽器兼容性測試


2.不擅長oauth2受權登陸驗證


3.目前只能測試web頁面


Cypress(一)Windows環境Cypress環境搭建


本文分享自微信公衆號 - 軟件測試架構師俱樂部(gh_03227f9a322f)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索