iT邦幫忙

2021 iThome 鐵人賽

DAY 29
1
Software Development

你還在用手動測試嗎?30 天帶你學會前端自動化測試框架 - Cypress系列 第 29

自動化測試,讓你上班擁有一杯咖啡的時間 | Day 29 - cypress 最佳實踐

此系列文章會同步發文到個人部落格,有興趣的讀者可以前往觀看喔。

  1. 選取元素

    ⚠️ 避免使用會常常變的selector,如用id, class, tag等方式選取元素

    ⭕️ 建議用 data-* attributes

    <button
      id="main"
      class="btn btn-large"
      name="submission"
      role="button"
      data-cy="submit"
    >
      Submit
    </button>
    
  2. 訪問外部網站

    ⚠️ 嘗試用 cy.visit() 去訪問不在你控制範圍的網站

    ⭕️ 盡量避免第三方server,必要時可以使用 cy.request()

    參考文章: https://docs.cypress.io/api/commands/request

  3. 腳本之間的關聯

    ⚠️ 每個腳本之間都高度緊密,彼此相互依賴

    ⭕️ 腳本之間是獨立運作且可以執行成功的

  4. Creating "tiny" tests with a single assertion

    ⚠️ 寫E2E測試時,測試用例過小,且包含許多斷言

    ⭕️ 規劃一個最小可行的腳本,並適當去斷言

  5. 減少不必要的等待

    可以參考此文章:https://ithelp.ithome.com.tw/articles/10278669

  6. 設定 global baseUrl

    ⚠️ 腳本只用 cy.visit(),但沒有設定 baseUrl

    ⭕️ 在 cypress.json 檔設定 baseUrl 可以讓執行腳本時節省一些時間

參考資料:


上一篇
自動化測試,讓你上班擁有一杯咖啡的時間 | Day 28 - cypress 截圖與影片
下一篇
自動化測試,讓你上班擁有一杯咖啡的時間 | Day 30 - 學習cypress intercept 與後記
系列文
你還在用手動測試嗎?30 天帶你學會前端自動化測試框架 - Cypress30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言