一、前言
想想之前玩的框架,做的項目都是把數據用例冗餘到一起的,不符合數據用例分離的思想,所以準備基於pytest搭建個測試框架,支持數據用例分離,接下來會用一系列文章逐步介紹整個框架是怎麼搭建起來的。
二、項目結構概覽
- conf:存放接口路徑、域名等信息
- data:1、存放.json文件(接口的請求頭或請求體信息),即測試數據;2、存放.yaml文件(用戶信息 比如賬號密碼)
- log:日誌文件
- report:allure測試報告
- testcase:測試用例
- tools:常用方法
- conftest.py:用於處理登錄的文件
- excute.py:用於執行項目的文件
三、照葫蘆畫瓢
1、新建python項目後,建個testcase文件夾
/testcase下面創建個case,比如test_case1.py,裏面隨意寫些內容,主要用於調試excute.py的執行是否正常,要注意的是.py文件要用test開頭,因爲用的是pytest框架。
2、新建excute.py,源碼如下
這裏我就不演示了,執行成功後會在report文件夾下面生成測試報告
# -*- coding:utf-8 -*- ''' @Date:2022/10/5 20:30 @Author:一加一 ''' import pytest import os if __name__ == '__main__': # pytest執行腳本並生成測試結果文件到report/tmp目錄下 pytest.main(['-s','--alluredir','report/tmp']) # 將report/tmp目錄下的結果文件生成html類型的測試報告文件到report/html目錄下 # -o report/html --clean 是爲了清空已有的測試報告再生成 os.system(r'allure generate report/tmp -o report/html --clean')