国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例

這篇具有很好參考價(jià)值的文章主要介紹了自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

在編寫用例之間,筆者再次強(qiáng)調(diào)幾點(diǎn)編寫自動(dòng)化測(cè)試用例的原則:

1、一個(gè)腳本是一個(gè)完整的場(chǎng)景,從用戶登陸操作到用戶退出系統(tǒng)關(guān)閉瀏覽器。
2、一個(gè)腳本腳本只驗(yàn)證一個(gè)功能點(diǎn),不要試圖用戶登陸系統(tǒng)后把所有的功能都進(jìn)行驗(yàn)證再退出系統(tǒng)
3、盡量只做功能中正向邏輯的驗(yàn)證,不要考慮太多逆向邏輯的驗(yàn)證,逆向邏輯的情況很多(例如手號(hào)輸錯(cuò)有很多種情況),驗(yàn)證一方面比較復(fù)雜,需要編寫大量的腳本,另一方面自動(dòng)化腳本本身比較脆弱,很多非正常的邏輯的驗(yàn)證能力不強(qiáng)。(我們盡量遵循用戶正常使用原則編寫腳本即可)
4、腳本之間不要產(chǎn)生關(guān)聯(lián)性,也就是說編寫的每一個(gè)腳本都是獨(dú)立的,不能依賴或影響其他腳本。
5、如果對(duì)數(shù)據(jù)進(jìn)行了修改,需要對(duì)數(shù)據(jù)進(jìn)行還原。
6、在整個(gè)腳本中只對(duì)驗(yàn)證點(diǎn)進(jìn)行驗(yàn)證,不要對(duì)整個(gè)腳本每一步都做驗(yàn)證。

一、登陸用例實(shí)例:

自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例,軟件測(cè)試,自動(dòng)化,測(cè)試用例,運(yùn)維

筆者建議通過excle 表格來編寫自動(dòng)化測(cè)試用例。
用例001:

自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例,軟件測(cè)試,自動(dòng)化,測(cè)試用例,運(yùn)維

代碼示例:

備注:通過匹配用戶登錄之后的昵稱來判斷用戶是否登錄成功。
用例腳本(login.py):

#coding=utf-8
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time

driver = webdriver.Firefox()
driver.get("http://passport.kuaibo.com/login/?referrer=http%3A%2F%2Fwebcloud.kuaibo.com%2F")
driver.maximize_window() #瀏覽器最大化

#登陸快播私有云
driver.find_element_by_id("user_name").send_keys("testing360")
driver.find_element_by_id("user_pwd").send_keys("198876")
driver.find_element_by_id("dl_an_submit").click()
time.sleep(3)

#獲取用戶名
now_user=driver.find_element_by_xpath("http://div[@id='Nav']/ul/li[4]/a[1]/span").text

#用戶名是否等于蟲師,不等于將拋出異常
if now_user==u'蟲師':
?????? print '登陸成功'
else:
?????? raise NameError('user name error!')

#退出
driver.find_element_by_class_name("Usertool").click()
time.sleep(2)
driver.find_element_by_link_text("退出").click()
time.sleep(2)
driver.close()

二、添加文件用例實(shí)例

用例002:

自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例,軟件測(cè)試,自動(dòng)化,測(cè)試用例,運(yùn)維

?備注:通過計(jì)算用戶列表中的文件的數(shù)量來判斷文件是否添加成功。

用例腳本(collect.py):

注:用例登陸與退出參考用例001,本用例只關(guān)注收藏用戶分享的邏輯代碼。#判斷當(dāng)前文件個(gè)數(shù)

inputs=driver.find_elements_by_tag_name('input')
n=0
for i in inputs:
??? if i.get_attribute('type')=="checkbox":
??? n=n+1
print u"當(dāng)前列表文件為%d" %n



#收藏用戶分享文件
driver.find_element_by_class_name("collect").click()
time.sleep(3)

#再次獲取當(dāng)前文件的個(gè)數(shù)
inputs=driver.find_elements_by_tag_name('input')
ns=0
for ii in inputs:
???? if ii.get_attribute('type')=="checkbox":
???????? ns=ns+1
print u"當(dāng)前列表文件為%d" %ns



#判斷執(zhí)行收藏文件之后比收藏之間文件加1 ,否則拋異常
if? ns==n+1:
???? print "ok!"
else:
?? ? raise NameError('添加文件失敗!!')

三、刪除文件實(shí)例:

用例003:

自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例,軟件測(cè)試,自動(dòng)化,測(cè)試用例,運(yùn)維

備注:因?yàn)閯h除了一個(gè)文件對(duì)文件的數(shù)據(jù)發(fā)生的改變,如果多次執(zhí)行腳本,列表中的文件被刪除完了就會(huì)引發(fā)異常,所以在刪除一個(gè)文件后,需要再添加一文件,但添加文件操作不做驗(yàn)證。
用例腳本(del_one_file.py):#判斷當(dāng)前文件個(gè)數(shù)

inputs=driver.find_elements_by_tag_name('input')
n=0
for i in inputs:
????? if i.get_attribute('type')=="checkbox":
??????????? n=n+1
print u"當(dāng)前列表文件為%d" %n



#刪除操作
driver.find_element_by_xpath("/html/body/div/div[2]/div[2]/div/div[4]/table/tbody/tr/td/input").click()
driver.find_element_by_class_name("dele").click()
driver.find_element_by_xpath("/html/body/div[2]/div[2]/div[2]/div").click()
time.sleep(4)

#再次獲取當(dāng)前文件的個(gè)數(shù)
inputs=driver.find_elements_by_tag_name('input')
ns=0
for ii in inputs:
???????? if ii.get_attribute('type')=="checkbox":
?????????????? ns=ns+1
print u"當(dāng)前列表文件為%d" %ns



#判斷執(zhí)行刪除單個(gè)文件之后比刪除之后文件減1 ,否則拋異常
if? ns==n-1:
??? print "ok!"
else:
???? raise NameError('刪除文件失敗!!')
#收藏用戶分享單個(gè)文件


driver.find_element_by_class_name("collect").click()
time.sleep(3)

四、重命名文件用例實(shí)例

用例004:

自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例,軟件測(cè)試,自動(dòng)化,測(cè)試用例,運(yùn)維

備注:文件的重命名其實(shí)我們很難找到證據(jù)(驗(yàn)證點(diǎn))證明重命名成功,那么腳本整個(gè)運(yùn)行沒有報(bào)錯(cuò),我們也可模糊的判斷功能測(cè)試是OK 的。


用例腳本(renaming.py)

#勾選重命名的文件
driver.find_element_by_xpath("/html/body/div/div[2]/div[2]/div/div[4]/table/tbody[5]/tr/td/input").click()
time.sleep(3)


#鼠標(biāo)移動(dòng)到“更多”按鈕彈下拉框

element=driver.find_element_by_class_name("more-fe")???? #定位到“更多”按鈕
ActionChains(driver).move_to_element(element).perform()?? #鼠標(biāo)移動(dòng)到“更多”按鈕彈下拉框
time.sleep(2)???

#在li 標(biāo)簽(更多下拉框)中篩選到data-action==rename(重命名)選項(xiàng)點(diǎn)擊

lis=driver.find_elements_by_tag_name('li')
for li in lis:
????? if li.get_attribute('data-action') == 'rename':
??????????? li.click()
time.sleep(2)

在input 標(biāo)簽中篩選type==text 的重命名輸入框

inputs=driver.find_elements_by_tag_name('input')
for input in inputs:
?????? if input.get_attribute('type') == 'text':
??????????????? input.send_keys(u"新文件名") #進(jìn)行重名操作
??????????????? input.send_keys(Keys.ENTER) #回車確認(rèn)重命名
??????????????? time.sleep(2)

總結(jié):
在本章中,簡(jiǎn)單對(duì)比了手工測(cè)試用戶與自動(dòng)化測(cè)試用例的區(qū)別,自動(dòng)化測(cè)試用例編寫的原則,如何通過python 捕捉異常和拋出異常,以及webdriver 提供的get_screenshot_as_file()函數(shù),以及如何編寫自動(dòng)化用例與腳本等。


不過筆者先不要急于開始實(shí)施自動(dòng)化測(cè)試,雖然我們可以編寫單個(gè)的測(cè)試用例,并通過異常捕捉判斷用例是否運(yùn)行成功。但只有與通過測(cè)試框架的整合,我們才能真正有效可行的運(yùn)用自動(dòng)化測(cè)試技術(shù)。文章來源地址http://www.zghlxwxcb.cn/news/detail-660234.html

到了這里,關(guān)于自動(dòng)化測(cè)試用例設(shè)計(jì)實(shí)例的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 軟件測(cè)試/測(cè)試開發(fā)丨Web自動(dòng)化 PageObject設(shè)計(jì)模式

    軟件測(cè)試/測(cè)試開發(fā)丨Web自動(dòng)化 PageObject設(shè)計(jì)模式

    本文為霍格沃茲測(cè)試開發(fā)學(xué)社學(xué)員學(xué)習(xí)筆記分享 原文鏈接:https://ceshiren.com/t/topic/27167 馬丁福勒個(gè)人博客 selenium 官網(wǎng) 無法適應(yīng) UI 頻繁變化 無法清晰表達(dá)業(yè)務(wù)用例場(chǎng)景 大量的樣板代碼 driver/find/click 降低 UI 變化導(dǎo)致的測(cè)試用例脆弱性問題 讓用例清晰明朗,與具體實(shí)現(xiàn)無關(guān) 字

    2024年02月10日
    瀏覽(26)
  • 封裝設(shè)計(jì)!抽象BasePage,提升WEB自動(dòng)化測(cè)試用例質(zhì)量和效率

    ?目錄 前言: 一、什么是抽象BasePage 二、BasePage中的屬性和方法 三、BasePage中的代碼實(shí)現(xiàn) 四、抽象Page對(duì)象 五、測(cè)試用例 六、總結(jié) 對(duì)于測(cè)試工程師來說,WEB自動(dòng)化測(cè)試是非常重要的一部分。然而,WE

    2024年02月07日
    瀏覽(32)
  • 接口自動(dòng)化框架篇:流程封裝與基于加密接口的測(cè)試用例設(shè)計(jì)

    ?接口測(cè)試僅僅掌握 Requests 或者其他一些功能強(qiáng)大的庫(kù)的用法,是遠(yuǎn)遠(yuǎn)不夠的,還需要具備能根據(jù)公司的業(yè)務(wù)流程以及需求去定制化一個(gè)接口自動(dòng)化測(cè)試框架的能力。所以,接下來,我們主要介紹下接口測(cè)試用例分析以及通用的流程封裝是如何完成的。 首先在做用例分析之

    2024年02月08日
    瀏覽(14)
  • 【軟件測(cè)試】邊界值分析法測(cè)試用例設(shè)計(jì)實(shí)例

    原題鏈接:洛谷 P2602 [ZJOI2010] 數(shù)字計(jì)數(shù) 輸入兩個(gè)正整數(shù)a,b,求在 [ a , b ] [a,b] [ a , b ] 中的所有整數(shù)中,每個(gè)數(shù)碼(0~9)各出現(xiàn)了多少次。 輸入格式: 輸入兩個(gè)正整數(shù)a, b確定區(qū)間

    2023年04月09日
    瀏覽(24)
  • 【軟件測(cè)試/自動(dòng)化測(cè)試】WebDriver+Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化

    【軟件測(cè)試/自動(dòng)化測(cè)試】WebDriver+Selenium實(shí)現(xiàn)瀏覽器自動(dòng)化

    前言 使用場(chǎng)景 原理 環(huán)境準(zhǔn)備 ?開發(fā) First Script WebDriver API 瀏覽器 元素 總結(jié) Selenium是一款可以自動(dòng)化操作瀏覽器的開源項(xiàng)目,最初的目的是瀏覽器功能的自動(dòng)化測(cè)試,但是隨著項(xiàng)目的發(fā)展,人們根據(jù)它的特性也用來做一些更多的有意思的功能而不僅僅是UI的自動(dòng)化測(cè)試工具。

    2024年02月08日
    瀏覽(64)
  • 自動(dòng)化測(cè)試 ——自動(dòng)卸載軟件

    自動(dòng)化測(cè)試 ——自動(dòng)卸載軟件

    在平常的測(cè)試工作中,經(jīng)常要安裝軟件,卸載軟件, 即繁瑣又累。 安裝和卸載完全可以做成自動(dòng)化。 安裝軟件我們可以通過自動(dòng)化框架,自動(dòng)點(diǎn)擊Next,來自動(dòng)安裝。 卸載軟件我們可以通過msiexec命令行工具自動(dòng)化卸載軟件 平常我們手動(dòng)卸載軟件都是到控制面板中的\\\"添加/刪除

    2024年02月08日
    瀏覽(27)
  • 軟件測(cè)試 -- 自動(dòng)化測(cè)試(Selenium)

    ????????在這里記錄一下? 自動(dòng)化測(cè)試 -- Selenium 的一些基礎(chǔ)知識(shí)點(diǎn),只記錄方法。 Selenium 瀏覽器操作 Selenium 元素定位(包含 Web 表單) findElement 和 findElements ????????findElement 和 findElements 都可以用于定位元素,它們都需要傳入一個(gè) By 類型,但是他們的返回值不同,區(qū)

    2024年04月22日
    瀏覽(56)
  • 【軟件測(cè)試】自動(dòng)化測(cè)試selenium

    【軟件測(cè)試】自動(dòng)化測(cè)試selenium

    目錄 一、什么是自動(dòng)化測(cè)試 二、Selenium介紹 1、Selenium是什么 2、Selenium的原理 三、了解Selenium的常用API 1、webDriver API?? 1.1、元素定位 1.1.1、CSS選擇器 1.1.2、Xpath元素定位 1.1.3、面試題 ?1.2、操作測(cè)試對(duì)象 1.3、添加等待? 1.4、打印信息 ?1.5、瀏覽器的操作 1.6、鍵盤事件 1.7、鼠

    2024年01月17日
    瀏覽(26)
  • Selenium+python怎么搭建自動(dòng)化測(cè)試框架、執(zhí)行自動(dòng)化測(cè)試用例、生成自動(dòng)化測(cè)試報(bào)告、發(fā)送測(cè)試報(bào)告郵件

    Selenium+python怎么搭建自動(dòng)化測(cè)試框架、執(zhí)行自動(dòng)化測(cè)試用例、生成自動(dòng)化測(cè)試報(bào)告、發(fā)送測(cè)試報(bào)告郵件

    本人在網(wǎng)上查找了很多做自動(dòng)化的教程和實(shí)例,偶然的一個(gè)機(jī)會(huì)接觸到了selenium,覺得非常好用。后來就在網(wǎng)上查閱各種selenium的教程,但是網(wǎng)上的東西真的是太多了,以至于很多東西參考完后無法系統(tǒng)的學(xué)習(xí)和應(yīng)用。 以下整理的只是書中自動(dòng)化項(xiàng)目的知識(shí)內(nèi)容,介紹怎么搭

    2024年02月05日
    瀏覽(30)
  • 個(gè)人博客系統(tǒng)-測(cè)試用例+自動(dòng)化測(cè)試

    個(gè)人博客系統(tǒng)-測(cè)試用例+自動(dòng)化測(cè)試

    ? ? ? ? 使用selenium4 + Junit5單元測(cè)試框架,來進(jìn)行簡(jiǎn)單的自動(dòng)化測(cè)試。 1.?準(zhǔn)備工作 (1)引入依賴,此時(shí)的pom.xml文件: (2)創(chuàng)建公共類 創(chuàng)建common包,存放公共類。首先創(chuàng)建CommonDriver類來獲取驅(qū)動(dòng)。 ? ? ? ? 如果代碼中使用到了 進(jìn)行截圖、存儲(chǔ)文件 的操作以及使用了 參數(shù)

    2024年02月09日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包