1. 程式人生 > 其它 >vscode的python開發環境搭建,環境變數支援終端命令列(執行當前

vscode的python開發環境搭建,環境變數支援終端命令列(執行當前

ddt安裝命令通過pip install ddt 進行安裝 ddt.ddt裝飾類。在指令碼嘴上方進行匯入ddt框架後,可以使用裝飾類ddt,來裝飾 自定義的測試用例,被ddt裝飾的類可以直接使用ddt測試框架 ddt.data :用來拆分data的資料。通常data中包含的每一個值都會作為一個單獨的 引數傳給測試方法,如果這些值是用元組或者列表傳進來的,可以用unpack方法將其 自動分解成多個引數 ddt_file_data:裝飾測試方法,引數是檔名,檔案可以是json或者yaml型別 注意:檔案是以 .yml 或者是 .yaml 結尾。ddt都會作為yaml的型別進行處理。 其他檔案都會作為json檔案處理 如果檔案是列表:列表的值會作為測試用例引數,同時,會作為測試用例方法字尾顯示 如果檔案是字典:字典的key會作為測試用例方法的字尾顯示,字典的value會作為測試用例引數 ''' from ddt import ddt,data,unpack import unittest @ddt class case(unittest.TestCase): def setUp(self): print('---用例開始----') def tearDown(self): print("---用例結束----") @data("武漢","荊門","石牌") #使用字串的形式單個引數進行傳入, # data可以重複進行呼叫這個函式所以列印了三次 def test01(self,values1): print(values1) if __name__ == '__main__': unittest.main() '''ddt 多個引數進行傳參 元組的形式進行傳參,使用unpack進行引數 分解''' @ddt class case(unittest.TestCase): def setUp(self): print('---用例開始----') def tearDown(self): print("---用例結束----") @data(("湖北","武漢"),("湖南","長沙")) @unpack #使用字串的形式單個引數進行傳入, # data可以重複進行呼叫這個函式所以列印了三次 def test01(self,values1,values2): print(values1,values2) if __name__ == '__main__': unittest.main() ''' 多個引數進行傳參,列表的形式進行傳參 ''' @ddt class case(unittest.TestCase): def setUp(self): print('---用例開始----') def tearDown(self): print("---用例結束----") @data(["湖北","武漢"],["湖南","長沙"],) @unpack #使用字串的形式單個引數進行傳入, # data可以重複進行呼叫這個函式所以列印了三次 def test01(self,values1,values2,values3): print(values1,values2,values3) # if __name__ == '__main__': unittest.main() ''' 多個引數進行傳參,字典的格式進行傳參 ''' # @ddt class case(unittest.TestCase): def setUp(self): print('---用例開始----') def tearDown(self): print("---用例結束----") @data({"values1":"湖北","values2":"武漢"},{"values1":"湖南","values2":"長沙"},) #使用字典進行傳參的時候必須前面帶上引數名稱進行傳參 @unpack #使用字串的形式單個引數進行傳入, # data可以重複進行呼叫這個函式所以列印了三次 def test01(self,values1,values2): print(values1,values2) if __name__ == '__main__': unittest.main() import unittest from api_demo.get_values import get_value from ddt import ddt,data,unpack import requests import json url = "http://cms.duoceshi.cn/cms/manage/loginJump.do" header ={"Content-Type":"application/x-www-form-urlencoded"} data1 = { "userAccount":"cary","loginPwd":"123456"} res = requests.request('post',url=url,headers=header,data=data1) print(res.text) print(get_values("cms_api.xlsx", "cmsapi", "cms_login")) ''' 方式1: 使用json的loads函式 方式2: 使用eval函式 方式3: 使用literal_eval函式 例:''' @ddt class Cms_Api(unittest.TestCase): ''' 使用xlrd進行傳參時,檢查文件格式是否正確是否清除前後空格符 為什麼使用unitest要繼承unitestTestcase基類 DDT資料驅動(data driver test(資料驅動測試)) 斷言:===將實際記過與預期結果進行對比成功pass 失敗就是bug