Python自動化測試框架,誰才是你的唯一?
Python得天獨厚的優勢造就了一系列測試框架,在這些測試框架面前,孰優孰劣?具體該如何選擇? 加我VX:atstudy-js 回覆“測試”,進入 自動化測試學習交流群~~
·Robot Framework
·Unittest
·Nose2
·Pytest
1.框架初探
Robot Framework
Robot Framework,簡稱RF,是一個基於Python的開源自動化測試框架,以關鍵字形式來建立測試用例。其表格樣式的用例編寫模式,豐富的庫和工具集,以及其並行測試等強大功能,使得RF 在測試人員中非常受歡迎。
RF主要應用於驗收測試和測試驅動開發(Test-driven development)這兩個場景。此外,RF還支援在Windows、Mac OS和Linux等跨平臺上進行桌面應用、移動應用、Web應用等的自動化測試。
【 Robot Framework —— Demo】
*** Settings ***
Library SeleniumLibrary
*** Variables ***
${SERVER} localhost:7272
${BROWSER} Firefox
${DELAY} 0
${VALID USER} demo
${VALID PASSWORD} mode
${LOGIN URL} {SERVER}/
${WELCOME URL} {SERVER}/welcome.html
${ERROR URL} {SERVER}/error.html
*** Keywords ***
Open Browser To Login Page
Open Browser ${LOGIN URL} ${BROWSER}
Maximize Browser Window
Set Selenium Speed ${DELAY}
Login Page Should Be Open
Title Should Be Login Page
Go To Login Page
Go To ${LOGIN URL}
Login Page Should Be Open
Input Username
[Arguments] ${username}
Input Text username_field ${username}
Input Password
[Arguments] ${password}
Input Text password_field ${password}
Submit Credentials
Click Button login_button
Welcome Page Should Be Open
Location Should Be ${WELCOME URL}
Title Should Be Welcome Page
Unittest
Unittest是一個基於Python的自動化單元測試框架,屬於Python標準庫中的一員,支援測試套件的複用。 只需在測試指令碼中匯入Unittest庫,測試人員就可以自定義測試類,建立測試用例,通過unittest.main()執行所有測試用例。
【 Unittest —— Demo】
import unittest
def add(x, y):
return x + y
class Test(unittest.TestCase):
def test_add_001(self):
self.assertEquals(add(4, 5), 9)
def test_add_002(self)
self.assertNotEqual(add(1,2),10)
if __name__ == '__main__':
unittest.main()
常用包/方法如下:
Nose2
Nose2繼承自Nose,同樣是一個基於Python的單元測試框架, 可以視為Unittest框架的擴充,因此,Nose2下可以執行Unittest編寫的測試用例。 Nose2有豐富的外掛,集編寫測試用例,異常處理等多種功能。相較於上面提到的Unittest和Robot Framework而言,卻沒那麼高的普及度,但仍不失為一款好用的開源測試框架。
【 Nose2 —— Demo】
from mynum import *
import nose
def add(x, y):
return x + y
def test_add_integers():
assert add(5, 3) == 8
def test_add_floats():
assert add(1.5, 2.5) == 4
def test_add_strings():
nose.tools.assert_raises(AssertionError, add, 'hello', 'nose2')
if __name__ == '__main__':
nose.run()
常用包/方法如下:
Pytest
Pytest是Python另一款非常熱門的開源測試框架。其語法簡單,且擁有豐富的外掛,可應用於功能測試,API測試,資料庫及UI測試等多種測試型別。
【 Pytest —— Demo1 】
import pytest
def test_demo_method1():
x = 1
y = 2
assert x+1 == y, "test pass"
def test_demo_method2():
x = 6
y = 3
assert x-1 == y+2, "test failed"
常用包/方法如下:
因作者版權要求,想要閱讀完整文章,可以 加我VX:atstudy-js 私信“文章”,小編即可傳送給你!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2840077/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python 自動化測試框架unittestPython框架
- Python自動化測試框架-pytestPython框架
- Python自動化測試框架介紹Python框架
- 自動化測試框架框架
- Python自動化測試框架有哪些?Python入門!Python框架
- 自動化測試框架指南框架
- 基於Selenium+Python的web自動化測試框架PythonWeb框架
- 【必看】Python自動化測試框架,Python入門知識!Python框架
- python自動化測試Python
- 自動化測試框架的AW模式框架模式
- python自動化測試框架pytest和unittest區別!!!Python框架
- python自動化測試框架,封裝方法方式Python框架封裝
- Python Selenium自動化測試框架 元素等待機制Python框架
- 測試開發之自動化篇-自動化測試框架設計框架
- Python + requests + unittest + ddt 進行介面自動化測試的框架Python框架
- 介面自動化測試框架 HttpFPT框架HTTP
- 利用tox打造自動自動化測試框架框架
- T框架介紹(自動化測試框架)框架
- 介面自動化測試框架搭建的思路框架
- 構建高效的自動化測試框架框架
- Python 介面自動化測試Python
- 2023年好用的自動化測試框架有哪些?如何提高自動化測試效果?框架
- 一篇文章帶你瞭解Python常用自動化測試框架——PytestPython框架
- Robot Framework自動化測試框架核心指南-如何做好自動化測試平臺框架的設計Framework框架
- UI自動化測試框架Cypress初探UI框架
- 常見的自動化測試框架有哪些?框架
- 推薦4個常用Python自動化測試框架,你更鐘愛哪一個?Python框架
- python介面自動化測試 —— unittest框架suite、runner詳細使用Python框架UI
- selenium+python自動化測試Python
- python自動化測試-原創Python
- 軟體自動化測試有什麼優勢?自動化測試框架有哪些?框架
- 基於Python的介面自動化-unittest測試框架和ddt資料驅動Python框架
- 自動化測試系列 —— UI自動化測試UI
- android 5個自動化測試Ui框架AndroidUI框架
- HamronyOS 自動化測試框架使用指南框架
- pytest_BDD + allure 自動化測試框架框架
- 淺談自動化測試框架開發框架
- 介面自動化測試框架搭建總結框架