如何使用Python編寫(xiě)自動(dòng)化測(cè)試腳本?
公司主營(yíng)業(yè)務(wù):做網(wǎng)站、網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)公司推出南召免費(fèi)做網(wǎng)站回饋大家。
隨著軟件行業(yè)的不斷發(fā)展,自動(dòng)化測(cè)試已經(jīng)成為了軟件測(cè)試的重要組成部分。它可以幫助我們節(jié)省很多時(shí)間和人力,提高測(cè)試效率,使測(cè)試工作更加快捷、穩(wěn)定和精準(zhǔn)。而Python作為一門(mén)優(yōu)秀的編程語(yǔ)言,其強(qiáng)大的數(shù)據(jù)處理能力和豐富的第三方庫(kù),也成為了自動(dòng)化測(cè)試的首選語(yǔ)言。
本文將為大家分享如何使用Python編寫(xiě)自動(dòng)化測(cè)試腳本,包括以下技術(shù)知識(shí)點(diǎn):
1. Python的基礎(chǔ)語(yǔ)法和數(shù)據(jù)結(jié)構(gòu)
2. Selenium庫(kù)的使用
3. Pytest框架的使用
首先,我們需要安裝Python和相應(yīng)的庫(kù)。在Python官網(wǎng)下載安裝包,并在命令行中使用pip安裝Selenium和Pytest庫(kù):
pip install seleniumpip install pytest接下來(lái),我們開(kāi)始編寫(xiě)自動(dòng)化測(cè)試腳本。以一個(gè)網(wǎng)站的登錄功能為例,我們需要實(shí)現(xiàn)如下幾步:
1. 打開(kāi)瀏覽器并進(jìn)入網(wǎng)站的登錄頁(yè)面
2. 輸入用戶名和密碼
3. 點(diǎn)擊登錄按鈕
4. 驗(yàn)證登錄是否成功
下面是完整的代碼實(shí)現(xiàn):
`python
import pytest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
@pytest.fixture()
def browser():
driver = webdriver.Chrome()
driver.get("http://example.com/login")
yield driver
driver.close()
def test_login_success(browser):
username = browser.find_element_by_name("username")
password = browser.find_element_by_name("password")
login_button = browser.find_element_by_name("login")
username.send_keys("testuser")
password.send_keys("testpassword")
login_button.click()
assert "登錄成功" in browser.page_source
def test_login_failure(browser):
username = browser.find_element_by_name("username")
password = browser.find_element_by_name("password")
login_button = browser.find_element_by_name("login")
username.send_keys("wronguser")
password.send_keys("wrongpassword")
login_button.click()
assert "用戶名或密碼錯(cuò)誤" in browser.page_source
首先,我們使用pytest中的fixture裝飾器定義一個(gè)browser函數(shù),它會(huì)被每個(gè)測(cè)試函數(shù)調(diào)用。在這個(gè)函數(shù)中,我們使用Selenium庫(kù)的webdriver模塊打開(kāi)瀏覽器,并進(jìn)入網(wǎng)站的登錄頁(yè)面。yield關(guān)鍵字表示生成器的返回值,并在測(cè)試完成后關(guān)閉瀏覽器。接下來(lái),我們編寫(xiě)兩個(gè)測(cè)試函數(shù),分別是test_login_success和test_login_failure。這兩個(gè)函數(shù)中,我們使用Selenium庫(kù)的find_element_by_name方法定位到網(wǎng)頁(yè)中的用戶名、密碼和登錄按鈕,并模擬用戶的輸入和點(diǎn)擊操作。然后,我們使用assert語(yǔ)句驗(yàn)證登錄是否成功或失敗。最后,我們?cè)诿钚兄惺褂胮ytest運(yùn)行測(cè)試腳本:pytest test_login.py
執(zhí)行結(jié)果如下:================================== test session starts ==================================
platform win32 -- Python 3.7.3, pytest-5.3.1, py-1.8.0, pluggy-0.13.1
rootdir: D:\test
collected 2 items
test_login.py .F [100%]
======================================== FAILURES ========================================
________________________________ test_login_failure _________________________________
browser =
def test_login_failure(browser):
username = browser.find_element_by_name("username")
password = browser.find_element_by_name("password")
login_button = browser.find_element_by_name("login")
username.send_keys("wronguser")
password.send_keys("wrongpassword")
login_button.click()
> assert "用戶名或密碼錯(cuò)誤" in browser.page_source
E AssertionError: assert '登錄成功' in '
用戶名或密碼錯(cuò)誤
'test_login.py:20: AssertionError
================================== short test summary info ==================================
FAILED test_login.py::test_login_failure - AssertionError: assert '登錄成功' in '
網(wǎng)頁(yè)題目:如何使用Python編寫(xiě)自動(dòng)化測(cè)試腳本?
網(wǎng)站網(wǎng)址:http://www.rwnh.cn/article7/dgphdij.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、自適應(yīng)網(wǎng)站、全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站維護(hù)、響應(yīng)式網(wǎng)站、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)