---
# System prepended metadata

title: 內容規劃

---

# 內容規劃

{%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-iｎ變數使用
- container image的維護
- 關於Implement Code不同寫法的比較
- Library的開發
    - Jin: 控制DUT的Library架構與開發
    - Betty: 控制TestCenter的Library