色欲香天天综合网站,亚洲AV优女天堂熟女,色一情一乱一伦一区二区三欧美,日本久久综合久久综合

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析

本文共有3963字,快速閱讀需要大約5分鐘,賞味期限持久。 隨著軟件測(cè)試技術(shù)的發(fā)展,人們已經(jīng)從最初的純粹的手工測(cè)試轉(zhuǎn)變?yōu)槭止づc自動(dòng)化測(cè)試技術(shù)相結(jié)合的測(cè)試方法。近年來(lái),自動(dòng)化測(cè)試越來(lái)越受到人們的...

本文共有3963字,快速閱讀需要大約5分鐘,賞味期限持久。

隨著軟件測(cè)試技術(shù)的發(fā)展,人們已經(jīng)從最初的純粹的手工測(cè)試轉(zhuǎn)變?yōu)槭止づc自動(dòng)化測(cè)試技術(shù)相結(jié)合的測(cè)試方法。近年來(lái),自動(dòng)化測(cè)試越來(lái)越受到人們的重視,對(duì)于自動(dòng)化測(cè)試的研究也越來(lái)越多。

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖

背景

項(xiàng)目版本功能日趨增加,系統(tǒng)模塊越來(lái)越多,功能趨于完善,此外系統(tǒng)經(jīng)常更新,測(cè)試人員無(wú)法滿足多模塊的測(cè)試需求,測(cè)試壓力日漸增大,尤其在做回歸測(cè)試時(shí),無(wú)法確保每次更新后系統(tǒng)都得到完整的回歸測(cè)試。

一、自動(dòng)化測(cè)試基礎(chǔ)知識(shí)

什么是自動(dòng)化測(cè)試

1、把人為驅(qū)動(dòng)的測(cè)試行為改成機(jī)器執(zhí)行,通過(guò)設(shè)計(jì)的測(cè)試用例,由機(jī)器按照測(cè)試用例的執(zhí)行步驟對(duì)其進(jìn)行自動(dòng)操作,輸出結(jié)果,由測(cè)試人員進(jìn)行比較。

2、自動(dòng)化測(cè)試往往通過(guò)一些測(cè)試工具或框架,編寫自動(dòng)化測(cè)試用例,來(lái)模擬手工測(cè)試。

3、自動(dòng)化測(cè)試能極大的節(jié)省人力、時(shí)間和硬件資源,提高測(cè)試效率。

自動(dòng)化測(cè)試的優(yōu)勢(shì)

1、自動(dòng)化測(cè)試工具可以根據(jù)需要,準(zhǔn)備大量的測(cè)試數(shù)據(jù)。

2、可以使用相關(guān)腳本技術(shù)準(zhǔn)備大量的測(cè)試用例。

3、測(cè)試結(jié)果有時(shí)需要再進(jìn)行相應(yīng)的數(shù)據(jù)處理。

4、可以對(duì)大量數(shù)據(jù)或數(shù)據(jù)格式進(jìn)行快速比對(duì)。

自動(dòng)化測(cè)試的劣勢(shì)

1、相對(duì)手工測(cè)試,自動(dòng)化測(cè)試對(duì)測(cè)試人員的能力要求相對(duì)較高。

2、自動(dòng)化測(cè)試用例需要根據(jù)版本迭代進(jìn)行更新,有一定維護(hù)成本。

3、不能指望自動(dòng)化測(cè)試去發(fā)現(xiàn)更多新的BUG,自動(dòng)化測(cè)試能發(fā)現(xiàn)的缺陷遠(yuǎn)遠(yuǎn)比手工測(cè)試的少。

4、自動(dòng)化測(cè)試的產(chǎn)出價(jià)值往往在于長(zhǎng)期的回歸測(cè)試,短期內(nèi)發(fā)揮的作用可能不明顯。

5、自動(dòng)化測(cè)試不能提高測(cè)試的有效性,只能用于提高測(cè)試的效率。

對(duì)于自動(dòng)化測(cè)試的誤解

1、有了自動(dòng)化測(cè)試不再需要手工測(cè)試。

2、自動(dòng)化測(cè)試對(duì)有些測(cè)試比如:本地化測(cè)試、用戶體驗(yàn)測(cè)試、探索性測(cè)試,測(cè)試環(huán)境搭建方面并不能完全代替手工測(cè)試。

3、自動(dòng)化測(cè)試是對(duì)產(chǎn)品的運(yùn)行,對(duì)測(cè)試點(diǎn)要有一定的手工測(cè)試基礎(chǔ),自動(dòng)化測(cè)試和手動(dòng)測(cè)試相輔相成。

4、自動(dòng)化測(cè)試并不僅指自動(dòng)化運(yùn)行測(cè)試產(chǎn)品,數(shù)據(jù)處理也是非常重要的一個(gè)環(huán)節(jié)。

自動(dòng)化測(cè)試前提條件及原則

1、項(xiàng)目周期長(zhǎng),需求穩(wěn)定近期未變動(dòng)。

2、前端開發(fā)無(wú)需多次修改的頁(yè)面,無(wú)缺陷遺留的模塊。

3、自動(dòng)化測(cè)試腳本可重復(fù)使用,比較頻繁的回歸測(cè)試(由于模塊較多,暫時(shí)回歸測(cè)試范圍限定為模塊主流程)。

4、手工測(cè)試難以實(shí)現(xiàn),需要在多平臺(tái)上運(yùn)行相同的測(cè)試案例及大量重復(fù)任務(wù)。

5、前期自動(dòng)化實(shí)施應(yīng)避開復(fù)雜度極高的模塊

如何實(shí)施自動(dòng)化測(cè)試

1、獲取信息和測(cè)試需求分析:總體把握系統(tǒng)架構(gòu)和設(shè)計(jì),分析出系統(tǒng)的測(cè)試需求。

2、設(shè)計(jì):設(shè)計(jì)測(cè)試用例,并且挑選出需要自動(dòng)化實(shí)現(xiàn)的測(cè)試用例。

3、實(shí)現(xiàn):編寫、調(diào)試和實(shí)現(xiàn)測(cè)試腳本。

4、執(zhí)行:執(zhí)行腳本的過(guò)程,需要不斷分析執(zhí)行過(guò)程中的異常。

5、測(cè)試結(jié)果分析:分析哪些是Bug,哪些是測(cè)試框架本身的問(wèn)題。

6、維護(hù):自動(dòng)化測(cè)試腳本維護(hù)是一個(gè)難以解決又必須要解決的問(wèn)題。

7、總結(jié):在自動(dòng)化測(cè)試過(guò)程中總結(jié)自動(dòng)化實(shí)踐的投入產(chǎn)出比。

自動(dòng)化測(cè)試的層次劃分

1、越往上,越接近QA、業(yè)務(wù)/最終用戶,越往下,越接近開發(fā)。

2、越往上,測(cè)試執(zhí)行越慢;越往下,測(cè)試執(zhí)行越快。

3、越往上,測(cè)試成本越高(越耗時(shí),失敗時(shí)的信息越模糊,越難跟蹤),越往下,測(cè)試成本越低。

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖1

二、自動(dòng)化測(cè)試工具和框架

常見的自動(dòng)化測(cè)試的工具

自動(dòng)化測(cè)試工具開發(fā)語(yǔ)言:Java、Python等

基礎(chǔ)測(cè)試工具

(1)單元測(cè)試:junit(java)、unittest(python)

(2)接口測(cè)試:httpclient(java)、restassure(java)、request(python)

(3)UI測(cè)試:selenium webdriver( web )、appium(app)

3、常見自動(dòng)化測(cè)試工具

(1)接口測(cè)試:Jmeter、soapui、postman

(2)UI測(cè)試:katalon、Robotframework、Android

自動(dòng)化測(cè)試腳本技術(shù)

1、線性腳本:錄制、回放

2、結(jié)構(gòu)化腳本:含有控制腳本執(zhí)行的指令,支持順序、選擇和循環(huán)

3、共享腳本:可以被多個(gè)測(cè)試用例使用,腳本之間可以互相調(diào)用

4、數(shù)據(jù)驅(qū)動(dòng)腳本: 數(shù)據(jù)驅(qū)動(dòng)腳本是將測(cè)試輸入存儲(chǔ)在獨(dú)立的文件中,腳本中只存放控制信息

5、關(guān)鍵字驅(qū)動(dòng)腳本:關(guān)鍵字驅(qū)動(dòng)腳本實(shí)際上是較重復(fù)的數(shù)據(jù)驅(qū)動(dòng)技術(shù)的邏輯擴(kuò)展 ,即測(cè)試用例的執(zhí)行步驟(操作,操作對(duì)象,操作值)存放在文件中,直接執(zhí)行

自動(dòng)化測(cè)試操作的基本原理

1、接口自動(dòng)化測(cè)試操作

(1)模擬請(qǐng)求 url和報(bào)文,準(zhǔn)備測(cè)試數(shù)據(jù)()抓包獲取接口信息,對(duì)接口的一個(gè)分析,有文檔或無(wú)文檔

(2)模擬客戶端發(fā)送 HTTP請(qǐng)求(get、post)

(3)模擬客戶端從服務(wù)器接收返回報(bào)文

(4)驗(yàn)證返回結(jié)果是否符合預(yù)期

2、UI自動(dòng)化測(cè)試的操作

(1)通過(guò)id、name、xpath、cssSelector等方法定位頁(yè)面元素(findelement、findelements)

(2)對(duì)定位到的頁(yè)面元素執(zhí)行相應(yīng)的操作( click、input等)

(3)對(duì)操作后出現(xiàn)的結(jié)果和預(yù)期結(jié)果做一個(gè)比較( assert )

自動(dòng)化測(cè)試基礎(chǔ)工具原理

1、Selenium(解析前端代碼與控制瀏覽器)

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖2

自動(dòng)化測(cè)試的PO模式

1、在PO模式中抽象封裝成一個(gè)BasePage類,該基類擁有一個(gè)只實(shí)現(xiàn)webdriver實(shí)例的屬性

2、每一個(gè)page都繼承BasePage,通過(guò)driver來(lái)管理本page中元素,將page中的操作封裝成一個(gè)個(gè)的方法TestCase依賴page類,實(shí)現(xiàn)相應(yīng)的測(cè)試步驟

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖3

自動(dòng)化測(cè)試框架

1、關(guān)鍵字驅(qū)動(dòng)

(1)將測(cè)試用例分成四個(gè)不同的部分。首先是測(cè)試步驟(Test Step),二是測(cè)試步驟中的對(duì)象(Test Object),三是測(cè)試對(duì)象執(zhí)行的動(dòng)作(Action),四是測(cè)試對(duì)象需要的數(shù)據(jù)(Test Data)。

(2)將數(shù)據(jù)與關(guān)鍵字結(jié)合來(lái)描述如何執(zhí)行測(cè)試。也就是將測(cè)試用例腳本中的步驟提取出來(lái),放在獨(dú)立的數(shù)據(jù)文件中,變成簡(jiǎn)單編寫的方式。這種方法具備數(shù)據(jù)驅(qū)動(dòng)的優(yōu)勢(shì),同時(shí)非編程人員也能建立測(cè)試。

(3)關(guān)鍵字驅(qū)動(dòng)的模式是建立在數(shù)據(jù)驅(qū)動(dòng)手段之上,關(guān)鍵字驅(qū)動(dòng)文件包含指令 (關(guān)鍵詞),而不只是數(shù)據(jù)。

(4)這個(gè)測(cè)試框架可以通過(guò)很少的代碼來(lái)產(chǎn)生大量的測(cè)試用例。同樣的代碼在用數(shù)據(jù)表來(lái)產(chǎn)生各個(gè)測(cè)試用例的同時(shí)被復(fù)用。

2、數(shù)據(jù)驅(qū)動(dòng)

(1)從某個(gè)數(shù)據(jù)文件(例如Excel文件、Xml文件、Json文件、數(shù)據(jù)庫(kù)等)中讀取輸入測(cè)試數(shù)據(jù),然后通過(guò)變量傳入編寫的測(cè)試腳本中。

(2)數(shù)據(jù)文件的讀取、測(cè)試狀態(tài)和所有測(cè)試步驟都被編寫進(jìn)測(cè)試腳本里;測(cè)試數(shù)據(jù)只包含在數(shù)據(jù)文件中,而不是腳本里,測(cè)試腳本只是一個(gè)”驅(qū)動(dòng)”,或者說(shuō)是一個(gè)傳送數(shù)據(jù)的機(jī)制。

(3)數(shù)據(jù)驅(qū)動(dòng)的方法主要用于需要通過(guò)不同數(shù)據(jù)來(lái)保證測(cè)試覆蓋率的場(chǎng)景,比如被測(cè)系統(tǒng)業(yè)務(wù)邏輯固定不變或變動(dòng)較小,即測(cè)試用例步驟是固定的,但是所需要的測(cè)試數(shù)據(jù)是變化的情況,通常來(lái)說(shuō),數(shù)據(jù)都是保存在外面文件或數(shù)據(jù)庫(kù)中,運(yùn)行時(shí)自動(dòng)獲取。即測(cè)試框架中要支持?jǐn)?shù),據(jù)與腳本分離,一個(gè)測(cè)試腳本可以驅(qū)動(dòng)執(zhí)行多個(gè)相似測(cè)試場(chǎng)景。

(4)這個(gè)框架意圖減少需要執(zhí)行所有測(cè)試用例所需要的總的測(cè)試腳本數(shù),數(shù)據(jù)驅(qū)動(dòng)需要很少的代碼來(lái)產(chǎn)生大量的測(cè)試用例。

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖4

三、自動(dòng)化測(cè)試框架的選擇與搭建

1、技術(shù)方案

Selenium(Webdriver) + Python(unittest)+ cx_Oracle + HTMLTestRunner

Selenium的WebDriver是一款開源工具。利用比較簡(jiǎn)潔的Python語(yǔ)言進(jìn)行自動(dòng)化測(cè)試,對(duì)于人員的學(xué)習(xí)成本來(lái)講比較實(shí)用,學(xué)習(xí)時(shí)間短,有優(yōu)勢(shì)。

Python自帶的unittest單元測(cè)試框架可以很方便的實(shí)現(xiàn)自動(dòng)化用例的設(shè)計(jì)和執(zhí)行以及自動(dòng)化用例套件的管理等任務(wù)。Python是純面向?qū)ο蟮恼Z(yǔ)言,后續(xù)也可以過(guò)渡到Java + Selenium進(jìn)行更加豐富的自動(dòng)化測(cè)試;此外,可以選擇Jenkins作為持續(xù)集成服務(wù)器,配合Python+Selenium的方案進(jìn)行自動(dòng)化冒煙測(cè)試。

此方案采用了Page Object設(shè)計(jì)模式,將頁(yè)面、用例、數(shù)據(jù)三者分離。這樣可以使測(cè)試案例可以更關(guān)注與業(yè)務(wù)而非界面細(xì)節(jié),提高測(cè)試案例的可讀性;降低代碼冗余,增加方法的復(fù)用性。

2、環(huán)境選擇

根據(jù)測(cè)試組自動(dòng)化測(cè)試需求討論結(jié)果,在uat、stage環(huán)境下使用自動(dòng)化測(cè)試技術(shù)做回歸測(cè)試。(執(zhí)行前需確保該環(huán)境可正常使用)

由于uat、stage環(huán)境頻繁發(fā)版,影響自動(dòng)化測(cè)試框架調(diào)試及腳本編寫,申請(qǐng)一個(gè)穩(wěn)定環(huán)境做調(diào)試及編寫工作。

3、自動(dòng)化測(cè)試流程

(1)選取模塊

(2)選擇用例(主流程用例)

(3)按頁(yè)面編寫操作方法

(4)按用例編寫用例流程腳本

(5)按用例編寫數(shù)據(jù)查詢方法

(6)執(zhí)行用例

(7)輸出報(bào)告(后期擴(kuò)展,增加執(zhí)行日志和異常截圖以便跟蹤缺陷)。

綜上,當(dāng)腳本內(nèi)容編寫結(jié)束并且業(yè)務(wù)需求和測(cè)試需求均無(wú)更改的時(shí)候,執(zhí)行后兩步操作即可。查看報(bào)告內(nèi)容,如發(fā)現(xiàn)缺陷,需按用例內(nèi)容重現(xiàn)缺陷并提交至禪道管理系統(tǒng)。

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖5

4、后續(xù)維護(hù)

(1)業(yè)務(wù)需求變更

當(dāng)業(yè)務(wù)需求變更時(shí),應(yīng)在執(zhí)行用例時(shí)越過(guò)變更內(nèi)容用例,變更內(nèi)容上線后按需求變更內(nèi)容對(duì)腳本及用例進(jìn)行相應(yīng)調(diào)整。調(diào)整結(jié)束,需再次執(zhí)行確保用例穩(wěn)定。

(2)被測(cè)模塊重構(gòu)

當(dāng)被測(cè)模塊重構(gòu)完成時(shí),需執(zhí)行該模塊自動(dòng)化測(cè)試用例,查看是否正常執(zhí)行,若無(wú)問(wèn)題出現(xiàn)則不需調(diào)整,若出現(xiàn)問(wèn)題需及時(shí)調(diào)試解決。

(3)技術(shù)變更

隨著自動(dòng)化測(cè)試框架的不斷調(diào)優(yōu)、擴(kuò)展功能,基礎(chǔ)模塊和封裝的頁(yè)面等也會(huì)隨之變化。進(jìn)而,自動(dòng)化測(cè)試需要定期執(zhí)行,以保證調(diào)優(yōu)、擴(kuò)展后框架的穩(wěn)定性,從而達(dá)到保障回歸測(cè)試的正常進(jìn)行。

5、資源調(diào)配

(1)環(huán)境:

a、項(xiàng)目環(huán)境與線上項(xiàng)目近似,獨(dú)立發(fā)版,版本內(nèi)容相對(duì)穩(wěn)定,數(shù)據(jù)庫(kù)獨(dú)立,不受其它環(huán)境影響。

b、本機(jī)環(huán)境,win7&win10 Chrome 72 32bit。

(2)用戶:獨(dú)立用戶,權(quán)限盡量調(diào)高,以免由用戶權(quán)限影響訪問(wèn)某些功能點(diǎn),減少用例遺漏。

(3)人員:建立自動(dòng)化測(cè)試的組,理想狀態(tài)下3-4個(gè)人員,測(cè)試開發(fā)、中高級(jí)自動(dòng)化測(cè)試工程師、初級(jí)自動(dòng)化工程師。

(4)培訓(xùn):對(duì)初級(jí)自動(dòng)化工程師培訓(xùn),設(shè)計(jì)的框架以及封裝的驅(qū)動(dòng)等。

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖6

四、自動(dòng)化測(cè)試分階段實(shí)現(xiàn)

1、搭建基礎(chǔ)版框架,完成一個(gè)模塊的自動(dòng)化測(cè)試demo

采用Page Object設(shè)計(jì)模式,對(duì)頁(yè)面元素,用例流程,數(shù)據(jù)進(jìn)行封裝隔離,在通用模塊或基礎(chǔ)模塊中對(duì)webdriver進(jìn)行二次封裝,自動(dòng)生成測(cè)試報(bào)告以便分析自動(dòng)化測(cè)試執(zhí)行結(jié)果。

2、按基礎(chǔ)版框架,擴(kuò)展測(cè)試范圍

選取適合做自動(dòng)化測(cè)試的功能模塊,按基礎(chǔ)框架思路編寫腳本、用例等,然后對(duì)框架做擴(kuò)展,實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng)、定時(shí)執(zhí)行測(cè)試,發(fā)送報(bào)告郵件等便于使用的非核心功能。

3、覆蓋大多數(shù)模塊的回歸測(cè)試

根據(jù)人員等資源的協(xié)調(diào)情況,將自動(dòng)化測(cè)試用例擴(kuò)展至覆蓋大部分模塊回歸測(cè)試的程度。由執(zhí)行自動(dòng)化測(cè)試完成回歸測(cè)試,以達(dá)到提高回歸測(cè)試的效率,降低回歸測(cè)試人力要求的目的。

小結(jié)

自動(dòng)化測(cè)試技術(shù)在現(xiàn)代測(cè)試技術(shù)中是有一定優(yōu)勢(shì)的,但是自動(dòng)化測(cè)試不是在任何情況下都必須的,適當(dāng)?shù)?、或者是有效成本投入,需要我們?cè)诤线m的時(shí)機(jī)引入自動(dòng)化測(cè)試,使手工測(cè)試和自動(dòng)化測(cè)試實(shí)現(xiàn)完美結(jié)合。

請(qǐng)關(guān)注+私信回復(fù):“測(cè)試”就可以免費(fèi)拿到軟件測(cè)試學(xué)習(xí)資料。

5分鐘了解自動(dòng)化測(cè)試,自動(dòng)化優(yōu)勢(shì)、劣勢(shì)、工具和框架選擇全剖析插圖7

聯(lián)系我們

聯(lián)系我們

0769-81627526

在線咨詢: QQ交談

郵箱: info@kingpo.hk

工作時(shí)間:周一至周五,9:00-17:30,節(jié)假日休息
關(guān)注微信
微信掃一掃關(guān)注我們

微信掃一掃關(guān)注我們

手機(jī)訪問(wèn)
手機(jī)掃一掃打開網(wǎng)站

手機(jī)掃一掃打開網(wǎng)站

返回頂部
拜城县| 财经| 福海县| 临沧市| 苗栗县| 奈曼旗| 德阳市| 建始县| 开化县| 吐鲁番市| 嵊州市| 阿合奇县| 阿拉尔市| 文安县|