目錄
1.測試用例分層機制是什麼?
將 接口、模塊、場景進行分離,單獨進行描述和維護,儘可能地減少自動化測試用例的維護成本。
2.爲什麼使用分層?
一個 API 可能存在於多個場景中,那就是說,在每個場景的測試用例中,都需要編寫該 API 測試請求的代碼,包括 API 自身內容(url、method、header、body)、請求的組織和發出、響應的解析及校驗。
這將是繁瑣、重複的工作。
在編程語言中,對於重複代碼塊,會將其封裝成類或者方法,在需要時調用,以此消除重複工作。類似的,自動化測試中也可以如此。
3.API 測試請求定義
將 API 測試請求進行統一的定義,編寫測試用例時,需要某個API測試請求了,直接進行調用。
在 API 測試請求中,只對請求做基本的校驗,比如 status_code,對於與業務邏輯相關的更多校驗項,在測試用例中描述。
4.測試用例(testcase )
在測試用例中,不僅可以引用 API 測試請求,還可以引用其他的測試用例。這樣,避免了重複代碼,而且還解決了業務的依賴問題。
測試用例可以是對一個功能測試,也可以是對多個功能、一個業務場景的測試,總之,是一個API 測試請求或者嵌套的測試用例的有序集合。
5.測試用例集(testsuite)
當測試用例數量比較多以後,爲了方便管理和實現批量運行,通常需要使用測試用例集,來對測試用例進行組織。
測試用例集是測試用例的無序集合,集合中的測試用例應該都是相互獨立,不存在先後依賴關係的。
如果確實存在先後依賴關係,那就需要在測試用例中完成依賴的處理
6.目錄結構
$ tree tests
tests
├── api
│ ├── create_user.yml
│ ├── get_headers.yml
│ ├── get_token.yml
│ ├── get_user.yml
│ └── reset_all.yml
|
├── testcases
│ ├── create_user.yml
│ ├── deps
│ │ └── check_and_create.yml
│ └── setup.yml
|
└── testsuites
├── create_users.yml
└── create_users_with_parameters.yml