58
Python
Python單元測試框架:單個測試用例編寫步驟及實例
一、Python單元測試框架的編寫步驟
1、導入模塊
2、必須繼承unittest.TestCase
3、主要是配置環境:進行測試前的初始化工作,比如在接口測試前麵做一些前置的參數賦值,數據庫操作等等
4、定義測試用例,名字以“test”開頭
5、定義assert斷言,判斷測試結果
6、清理環境:測試後的清除工作,比如參數還原或銷毀,數據庫的還原恢複等
7、調用unittest.main()啟動測試
二、代碼示例
注:代碼格式在編輯器裏無法縮進,大家湊合著看,自己縮進一下^_^
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
@author: 巧吧軟件測試
@desc:編碼為表單形式的數據,通過data參數傳遞
"""
import requests
import json
#第1步:導入模塊
import unittest
#第2步:必須繼承unittest.TestCase
class PostDataTest(unittest.TestCase):
'''Post,data測試'''
# 第3步:主要是配置環境:進行測試前的初始化工作,比如在接口測試前麵做一些前置的參數賦值,數據庫操作等等
def setUp(self):
host = 'https://httpbin.org/'
endpoint = 'post'
self.url = ''.join([host,endpoint])
# 第4步:定義測試用例,名字以“test”開頭
def test_post_data_1(self):
'''form值驗證'''
params = {'show_env':1}
data = {'a':'巧吧軟件測試','b':'form-data'}
r = requests.post(self.url,params=params,data=data)
resp = r.json()
form = resp.get('form').get('a')
# 第5步:定義assert斷言,判斷測試結果
self.assertEqual(form,'巧吧軟件測試')
@unittest.skip('無條件跳過')
def test_post_data_2(self):
'''form值type類型判斷'''
params = {'show_env':1}
data = {'a':'巧吧軟件測試','b':'form-data'}
r = requests.post(self.url,params=params,data=data)
resp = r.json()
form = resp.get('form').get('a')
self.assertEqual(form,'巧吧軟件測試')
self.assertIsInstance(form,str)
# 第6步:清理環境:測試後的清除工作,比如參數還原或銷毀,數據庫的還原恢複等
def tearDown(self):
pass
if __name__ == "__main__":
# 第7步:調用unittest.main()啟動測試
unittest.main()
最後更新:2017-10-08 16:20:08