課程簡介
第1天 - 介紹與基礎
介紹
-
Cypress在測試金字塔中的作用
-
測試自動化環境設置(Node LTS, npm)
-
創建一個最小化的Cypress項目
-
第一個“冒煙”端到端測試(GUI和無頭模式)
核心概念
-
Cypress基礎、命令隊列、自動重試
-
使用鉤子:before, beforeEach, afterEach, after
-
別名與可重用性(
.as(),cy.get('@alias'))
API(契約)測試
-
使用Cypress進行直接API測試(
cy.request()) -
使用
cy.intercept()進行API存根以處理邊緣情況 -
確保前後端集成的穩定性
自定義Cypress命令
-
將重複操作(登錄、導航)組織成自定義命令
-
使用可重用調用編寫更清晰、可維護的代碼(
cy.login())
日程安排:理論 + 演示 + 動手練習
先決條件:基本JS知識, VSCode, Git
第2天 - 高級實踐與CI/CD
構建複雜測試
-
自動化完整用戶流程
-
使用
cy.intercept和cy.session進行狀態控制 -
避免不穩定測試,提高穩定性和速度
數據驅動測試
-
將測試數據存儲在JSON文件中(fixtures)
-
參數化測試:使用多個輸入運行相同邏輯
Cypress插件
-
報告:mochawesome, allure-cypress, junit-reporter
-
交互:cypress-file-upload, cypress-real-events
-
可訪問性:cypress-axe, cypress-audit
-
視覺迴歸:cypress-image-snapshot
-
可維護性:@testing-library/cypress, cypress-plugin-tab
Cypress的CI/CD
-
GitHub Actions集成
-
設置Node.js和Cypress環境,無頭執行
-
推送/PR時自動運行測試
-
安全處理密鑰
總結與結論
最低要求
- 對軟件測試的理解
受衆
- 軟件測試員
客戶評論 (1)
Many exercises, which gave a lot of practical skills.