易維護擴充且穩定的端到端自動化測試解決方案 - 課程分享 --- ## Discuss Sasha - https://docs.google.com/presentation/d/1A_qSHUEmyfGO0lFI8Y4WpF5JNqjCjYNZtfcdP-uVsjs/edit#slide=id.p --- 上課流程 # 第一天 ### 破冰 測試最麻煩的地方是什麼?準備資料。所以很多人會使用 Central DB 來協助端到端測試 這會有很多麻煩,首先每個個測試的資料本來就不一樣,使用 Central DB 可能某些測試無法做 ### 練習實例化需求 練習完成登入功能的實例化需求 ### UI 完成登入功能的測試 - 運用 await 等待畫面渲染 - 避免驗證不存在 - 驗證畫面優先選擇使用者真正可以在畫面上看到的東西,讓測試更貼近真實使用情況,例如:文字或圖片 - 減少使用路徑、id、xpath ...等 - ### 重構 Driver - 封裝各種 Driver 的操作 ### 重構 Page Object - 用 Page Object 重構 - ### UI 輸入訂單然後顯示訂單 场景: 录入订单 当用如下数据录入订单: | 订单号 | 商品名称 | 金额 | 收件人 | 电话 | 地址 | 状态 | | SN001 | 衬衫 | 19 | 张三 | 13085901735 | 上海市长宁区 | 待发货 | 那么显示如下订单 | SN001 | 衬衫 | ¥19 | 待发货 | ### API 顯示訂單 场景: 订单列表 假如存在如下订单: | code | productName | total | recipientName | status | | SN001 | 电脑 | 19999 | 张三 | toBeDelivered | 当API查询订单时 那么返回如下订单 """ [{ "code": "SN001", "productName": "电脑", "total": 19999, "status": "toBeDelivered" }] """ 场景: 订单详情 - 无物流 场景: 订单发货 场景: 订单详情 - 查询物流 # 第二天 ### 架設端到端測試需求環境 ### 介紹 JFactory 如何方便準備資料 ### 額外延伸 - - 如何驗證圖片 --- ### Cucumber Cucumber 是什麼 BDD / TDD - FEATURE / SCENARIO - STEP 頁面動作流 - given / when / then - Page Object 業務動作- login (username/password/button) - Driver / Browser / App - 用戶視角操作 ### 環境 上課中練習的環境:docker 不建議 docker in docker (網路複雜 ### 怎麼寫 Test 順序  ### 怎麼處理第三方服務 MockServer ### 端到端、Test 金字塔   ### Demo 簡單的 demo 就好(?)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up