国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python Unittest根據不同測試環境跳過用例的方法

2020-02-16 00:10:05
字體:
來源:轉載
供稿:網友

前言

在利用單元測試框架執行測試用例的過程中,有時只需要執行一部分用例,或者跳過某些暫不需要執行的用例,python的unittest框架就內置這樣的功能。

本文章會講述以下幾個內容:

1、Unittest 如何跳過用例

2、如何使用sys.argv

3、自動化測試項目中如何一套代碼多套環境運行

一、Unittest跳過用例

@unittest.skip(reason) , 直接跳過被裝飾的用例 ,reason用于填寫跳過用例的原因 @unittest.skipIf(condition, reason) , condition 如果為真,跳過被裝飾的用例,reason用于填寫跳過用例的原因 @unittest.skipUnless(condition, reason) , condition如果為假,跳過被裝飾的用例,reason用于填寫跳過用例的原因

例:

test_case_skip.py

# encoding:utf8import unittestclass SkipExample(unittest.TestCase): @unittest.skip('用例 1 無條件跳過') def test_case_one(self): print('---用例 1 ---') @unittest.skipIf(2 > 1, '條件為True ,用例2 跳過') def test_case_two(self): print('---用例 2 ---') @unittest.skipUnless(2 < 1, '條件為False, 用例3 跳過') def test_case_three(self): print('---用例 3 ---')if __name__ == '__main__': unittest.main(verbosity=2)

運行結果:

test_case_one (__main__.SkipExample) ... skipped '用例 1 無條件跳過'
test_case_two (__main__.SkipExample) ... skipped '條件為True ,用例2 跳過'
test_case_three (__main__.SkipExample) ... skipped '條件為False, 用例3 跳過'

二、如何使用sys.argv

sys.argv 是一個數組 第一個元素是程序本身路徑 sys.argv 實現從程序外部向程序傳遞參數。

例:

how_to_use_argv.py

#encoding:utf8from sys import argvprint('argv是一個數組:',argv)

使用命令行運行上述腳本,外部傳入參數:1 2 3 4

python how_to_use_argv.py 1 2 3 4

運行結果

argv是一個數組: ['how_to_use_argv.py', '1', '2', '3', '4']

小結:

sys.argv 實現從程序外部向程序傳遞參數 傳入的第一個參數為腳本文件名 傳入程序的每一個參數以空格 隔開 傳入程序的參數均以字符串的類型存儲,命令行中不需要加引號

三、自動化測試項目中如何一套代碼多套環境運行

需求1:一套代碼可以測試多個環境,不希望每次測試不同環境的時候都要去改代碼里面的URL,希望把代碼里面的URL參數化
以UI自動化為例:

test_multiple_env.py

# encoding:utf8from selenium import webdriverfrom sys import argvimport unittestfrom time import sleepclass TestEnv(unittest.TestCase): def setUp(self): self.url = argv[-1] print(self.url) self.driver = webdriver.Chrome() def test_load_page(self): self.driver.get(self.url) sleep(10)if __name__ == '__main__': suit = unittest.TestSuite() suit.addTest(TestEnv('test_load_page')) runner = unittest.TextTestRunner() runner.run(suit)            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 景泰县| 南涧| 昌都县| 海南省| 宜宾县| 永平县| 洪洞县| 夹江县| 万全县| 门源| 江川县| 兴化市| 澜沧| 河北省| 奉节县| 徐闻县| 丹阳市| 陈巴尔虎旗| 伊金霍洛旗| 钟祥市| 内乡县| 平和县| 安平县| 济源市| 阳信县| 习水县| 定日县| 将乐县| 辽源市| 天台县| 德钦县| 邹城市| 分宜县| 老河口市| 阆中市| 古交市| 塔河县| 北海市| 武邑县| 新营市| 静海县|