python 自動化測試框架unittest與pytest的區別


前言:

有使用過unittest單元測試框架,再使用pytest單元測試框架,就可以明顯感覺到pytest比unittest真的簡潔、方便很多。

unittest與pytest的區別:

主要從用例編寫規則、用例的前置和后置、參數化、斷言、用例執行、失敗重運行和報告這幾個方面比較unittest和pytest的區別

 

 

 

前后置的區別:

https://www.cnblogs.com/cuitang/p/11639961.html

參數化的區別:

unittest參數化:結合裝飾器ddt來實現

1 測試類前要添加修飾器 @ddt.ddt
@ddt.ddt
2 class TestLogin(unittest.TestCase):
#測試用例前要添加修飾 @ddt.data,form_wrong_data包含了3條測試數據,此時要將這3條數據都拿出來,需要加上*
3 @ddt.data(*lg.form_wrong_data) 4 def test_login_2_form_wrongdata(self, data): 5 # 步驟 登錄頁面 -》 登錄功能-》輸入用戶名、密碼 #測試數據 python 斷言數據,請輸入手機號 6 self.lp.login(data["user"], data["pwd"]) 7 self.assertEqual(str(data["check"]), self.lp.get_wrong_msg())

pytest參數化:直接使用@pytest.mark.parametrize(自定義命令參數名稱,數據源)

1     @pytest.mark.parametrize("sucess_data", ld.sucess_data) 2     def test_1_sucess_login(self, sucess_data, start_app):
3         MyLog().info("成功登錄測試用例")
4         bl(start_app).click_now_to_login()
5         lp(start_app).Login(sucess_data["username"], sucess_data["password"])

 較詳細的文章可參考:https://blog.csdn.net/qq_41752647/article/details/94463011

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM