iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 1
3

Nightwatch.js

為何要做測試?

只要是工程師,寫完程式碼就必定會做測試吧(?)

做測試有什麼好處?

  • 防止改 A 壞 B,避免不能跑的程式碼比能跑的還多
  • 明確指出問題所在、告知正確的行為是什麼,減少猜測時間

為何要做 End-to-End Testing?如何做?

在做整合測試時,要怎麼確定使用者能順利走完預定的流程呢?例如:從購買商品到進入購物車、結帳完成。或者,要怎麼確定在修改全站共用的 UI 元件後,網站仍能正常運作?這時候我們往往就會找個人來當 QA,假裝他 / 她是一般使用者,把網站主流程都點一點、用一用。由於靠人力完整測試是非常耗時耗力的,因此,若能有系統的靠程式完成,就能快速、全面地檢查,一下子就知道有沒有問題了。

既然能靠寫程式解決人力檢測的問題,就先選個方法-來用 Nightwatch 吧。

大綱

這一系列 2018 鐵人賽「Nightwatch101:使用 Nightwatch 實現 End-to-End Testing」會有以下內容

  • Nightwatch 與 Selenium Webdriver
  • 定位網頁元素:CSS Selector、Xpath
  • API:Commands、Expect、Assert、Verify
  • Test Hooks
  • Nightwatch Test Runner
  • Page Objects
  • 客製化指令、斷言
  • 客製化測試報告
  • 測試程式範例
  • Selenium IDE

目錄

  1. 前言
  2. Nightwatch 與 Selenium Webdriver
  3. 環境建置
  4. 設定檔
  5. 使用 CSS Selector 定位網頁元素
  6. 使用 Xpath 定位網頁元素
  7. 指令 Part 1
  8. 指令 Part 2
  9. 指令 Part 3
  10. BDD Expect
  11. BDD Assert
  12. BDD Verify
  13. Test Hooks
  14. Asynchronous Test Hooks
  15. External Globals
  16. 簡單測試範例
  17. Nightwatch Test Runner
  18. 依照分組做測試(Test Groups)
  19. 依照標籤做測試(Test Tags)
  20. 禁跑特定測試(Disable Tests)
  21. 平行執行測試程式
  22. Page Objects
  23. 使用 Sections 優化 Page Objects
  24. 客製化指令(Custom Commands)
  25. 客製化斷言(Custom Assertions)
  26. 客製化測試報告
  27. 進階測試範例
  28. 獨立使用 ChromeDriver 跑測試
  29. Selenium IDE
  30. 總結

關於我們

我們是「露天拍賣」的工程師,這次決定一同組隊「露天廢物」參加鐵人賽,扶持彼此完成這艱難的 30 天任務。

成員如下(按字母順序排列)

歡迎大家閱讀我們的學習歷程!

Nightwatch101 - 使用 Nightwatch 實現 End-to-End Testing

希望大家不吝指教 :)


網誌版


下一篇
Nightwatch101 #2:Nightwatch 與 Selenium Webdriver
系列文
Nightwatch101:使用 Nightwatch 實現 End-to-End Testing30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
凍仁翔
iT邦新手 3 級 ‧ 2017-12-19 18:45:19

看來露天也間臥虎藏龍的公司啊!加油!

Summer iT邦新手 3 級 ‧ 2017-12-19 19:44:41 檢舉

/images/emoticon/emoticon58.gif

我要留言

立即登入留言