課程簡介
第一天 – 介紹與基礎
介紹
- 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
第二天 – 高級實踐與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環境,進行無頭執行
- 在push/PR時自動運行測試
- 安全處理密鑰
總結與結論
最低要求
- 具備軟件測試的基礎知識。
受衆
- 軟件測試人員。
客戶評論 (5)
良好的互動,Łukasz 有時間回答每個人的問題,並能夠幫助任何遇到困難的人
Kelly Morris - Titian Software Poland Sp. z o.o.
課程 - Selenium WebDriver in C#
機器翻譯
我很享受這一切,因爲對我來說都是全新的,我能夠看到它能爲我的工作帶來的附加價值。
Zareef - BMW South Africa
課程 - Tosca: Model-Based Testing for Complex Systems
機器翻譯
培訓師詳細解釋了每一項功能。
Argean Quilaquil - DXC
課程 - TestComplete
機器翻譯
培訓師非常好。他的講解清晰有趣,努力使課程儘可能生動。我很享受這次課程,學到了很多知識,非常感謝。我學到的最有用的技術是如何定位不同Web組件的元素,如文本框、單選按鈕和按鈕。有時,元素ID無法正確捕獲。我們學習了使用CSS選擇器、XPath、Name和ID來定位元素的不同方法。我喜歡他的解釋,非常感謝。
Bee Chin Chuah - I-Access Solutions Pte Ltd
課程 - Advanced Selenium with C#
機器翻譯
我喜歡示例之間的連貫性。你可以在下一個部分中應用之前學到的內容。
Sacha Mannion - BeyondTrust
課程 - C# for Automation Test Engineers
機器翻譯