# 內容規劃 {%hackmd 1lpg7PuqRoaui6XyJcrylw %} ## 目標 - 身為自動化測試導入的種子, 我想學會完整的自動測試開發架構, 使得我在未來工作可以協助SQA團隊對內了解Framework 架構和TRD Library的Software架構。 - KR - 一個月後,分享給課內新人。Simon旁聽。 - 之後在MOXA DevOps Forum分享了解到的內容。 - 身為MRC SQA, 我想要學會如何撰寫測項和Implement Code, 使得我在未來MRC 的工作中可以針對多元產品做Implement Code的修改。 - KR - 送Merge Request到Mainline - 身為測試者,我想要有依據的選擇可以協助開發回歸測試的自動測試開發工具,如此一來我可以用自動測試程節省手動測試者做更有價值的測試。 - KR - 選出一個Framework - 推進方式 - 第一輪:假投票 - 討論 - 第二論:投票 - 相對多數 - 有參與測項開發的人有投票權 - 確認Jin, Ray是否投票 ## 內容規劃 ### 學習 #### Week 1 - 了解測試工具與測試執行工具 - 區別自動測試框架和自動測試工具 - 分享導入自動測試開發時的評估面向 - 開發環境說明 #### Week 2 - Cucumber和Robot Framework的使用情境和要解決的問題 - Gherkin的文法,以及其欲解決的問題 - Test Case和Implement Code之間的對應關係 - Git: clone, fetch, checkout #### Week 3 - 以Practice 1說明Implement Code的內容 - Test Case Outline/Template的寫法 - Git: commit, checkout -b #### Week 4 - 針對Cucumber的開發規則說明 - 檔案分類、擺放 - test cases (.feature) - enviroment - steps - 說明step讀取list和string block的做法 - Git: merge, fix conflicts #### Week 5 - 針對Robot的開發規則說明 - 檔案分類、擺放 - test cases (.robot) - variable file, resource...etc - 說明變數使用方法。 - Git: code review #### Week6 6/24 - 針對Robot的開發規則說明 - Library(Implement Code) - Class-base - Module-base - Task - 條件式和迴圈。 - Git: code review ### 實作 #### Week7 7/1 - logging的module與Framework結合 #### Week8 7/8 - GUI測試 #### Week9 7/15 - Docstring - Debug - Fixture #### Week10 7/22 - Handle Test Excution Fail #### Week10 7/29 回顧 & 接下來的規劃 - 回顧使用自動化測試框架的目的,以及自動化測試框架與自動化測試、CI之間的關係。 - 端到端的串連 - 使用自動化測試框架後可能的開發情境。 - 預告接下來的安排:會持續協助Router Team & SQA2課自動化測試開發合作。 - 保持交流和資訊透通(SQA2, 1, Router Team, SW 2D)讓大家再講一下話,互通一下。==分享很重要== --- ## Backlog - Regular Expression - cucumber的context build-in變數使用 - container image的維護 - 關於Implement Code不同寫法的比較 - Library的開發 - Jin: 控制DUT的Library架構與開發 - Betty: 控制TestCenter的Library