四虎国产精品永久地址998_chinesexxx少妇露脸_日本丁香久久综合国产精品_一区二区久久久久_四虎av影视_久久久久国产一区二区三区不卡

中培偉業(yè)IT資訊頻道
您現(xiàn)在的位置:首頁 > IT資訊 > 軟件研發(fā) > 自動(dòng)化測試的 Python 框架有哪些,它們的優(yōu)點(diǎn)是什么?

自動(dòng)化測試的 Python 框架有哪些,它們的優(yōu)點(diǎn)是什么?

2020-09-11 16:15:13 | 來源:中培企業(yè)IT培訓(xùn)網(wǎng)

隨著技術(shù)的進(jìn)步和自動(dòng)化技術(shù)的出現(xiàn),一些自動(dòng)化測試框架已經(jīng)出現(xiàn)在市場上。調(diào)整特定的測試適用性和效率參數(shù)后,可以使用這些框架來測試項(xiàng)目的任何模塊。這樣可以節(jié)省時(shí)間,并且由于這些框架得到了廣泛使用,因此它們非常穩(wěn)健,并具有多種用例集和技術(shù),可以輕松發(fā)現(xiàn)小缺陷。那么自動(dòng)化測試的 Python 框架有哪些,它們的優(yōu)點(diǎn)是什么?

  1.Robot Framework

作為最重要的Python測試框架之一,Robot Framework主要被用在測試驅(qū)動(dòng)類型的開發(fā)與驗(yàn)收中。雖然是由Python開發(fā)而來,但是它也可以在基于.Net的IronPython和基于Java的Jython上運(yùn)行。同時(shí),作為一個(gè)Python框架,Robot還能夠兼容諸如Windows、MacOS、以及Linux等平臺(tái)。

  優(yōu)點(diǎn)

·通過使用關(guān)鍵字驅(qū)動(dòng)測試的方法,它能夠幫助測試人員輕松地創(chuàng)建具有可讀性的測試用例,進(jìn)而簡化了整個(gè)自動(dòng)化的過程。

·用戶能夠輕松地測試數(shù)據(jù)中的語法。

·因?yàn)槭怯筛鞣N通用工具和測試庫所組成,所以它不但擁有龐大的生態(tài)系統(tǒng),而且可以在單獨(dú)的項(xiàng)目中使用其各個(gè)元素。

·由于擁有許多類型的API,因此該框架具有高度的可擴(kuò)展性。

·雖然并非內(nèi)置功能,但是Robot可以通過Selenium Grid,來幫助用戶運(yùn)行各種并行測試。

  2.Pytest

適用于多種軟件測試的Pytest,是另一個(gè)Python類型的自動(dòng)化測試框架。憑借著其開源和易學(xué)的特點(diǎn),該工具經(jīng)常被QA團(tuán)隊(duì)、開發(fā)團(tuán)隊(duì)、個(gè)人團(tuán)隊(duì)、以及各種開源項(xiàng)目所使用。鑒于Pytest具有“斷言重寫”之類的實(shí)用功能,許多大型互聯(lián)網(wǎng)應(yīng)用,如Dropbox和Mozilla,都已經(jīng)從下面將要提到的unittest切換到了Pytest之上。

  優(yōu)點(diǎn)

·過去,開發(fā)人員必須將他們的測試包含在各種大型的類中。如今,Pytest可以讓用戶寫出更為緊湊的測試套件。

·其他的測試工具會(huì)要求開發(fā)或測試人員使用調(diào)試器,或以日志檢查的方式檢測某個(gè)特定值的來源。而用戶在用Pytest來編寫測試用例時(shí),完全可以將所有的值都存儲(chǔ)在測試用例之中,直到再獲悉有哪些值失敗了、以及哪些值得到了斷言。

·由于涉及到的樣板代碼并不多,因此用戶能夠容易地編寫和理解各種測試。

·測試夾具函數(shù)常被用來向測試函數(shù)添加某個(gè)參數(shù),并返回不同的值。在Pytest中,您可以通過使用一個(gè)夾具來模塊化另外一個(gè)。同時(shí),用戶可以使用多個(gè)夾具,在無需重寫測試用例的情況下,將測試覆蓋到所有參數(shù)的組合。

·Pytest開發(fā)人員通過發(fā)布各種實(shí)用插件,來保持框架的可擴(kuò)展性。例如:pytest-xdist可以在不使用其他測試器的情況下,被用于執(zhí)行并行測試。同時(shí),單元測試也可以在無需復(fù)制任何代碼的情況下,實(shí)現(xiàn)參數(shù)化。

·通過為開發(fā)人員提供各種特殊的例程,它能夠使得測試用例的編寫更為簡單、更不易出錯(cuò),同時(shí)代碼也會(huì)變得更短、更易被理解。

  3.UnitTest/PyUnit

受到了JUnit啟發(fā)的UnitTest/PyUnit,也是一種標(biāo)準(zhǔn)化的針對單元測試的Python類自動(dòng)化測試框架。它的基類TestCase提供了各種斷言方法、以及所有清理和設(shè)置的例程。因此,TestCase子類中的每一種方法都是以“test”作為名詞前綴,以標(biāo)識(shí)它們能夠被作為測試用例所運(yùn)行。用戶可以使用load方法和TestSuite類來分組、并加載各種測試。

當(dāng)然,您也可以通過聯(lián)合使用,來構(gòu)建自定義的測試運(yùn)行器。正如我們使用Junit去測試Selenium那樣,UnitTest也會(huì)用到UnitTest-sml-reporting、并能生成各種XML類型的報(bào)告。

  優(yōu)點(diǎn)

·開發(fā)人員并不需要安裝任何其他的模塊。

·UnitTest是xUnit的衍生產(chǎn)品,其工作原理與其他xUnit框架十分類似。因此對于那些沒有過硬Python背景的人來說,也能很快地上手。

·用戶能夠以更為簡單的方式運(yùn)行單個(gè)測試用例。您只需在終端上預(yù)定好名稱,該框架便可靈活地執(zhí)行各種用例的測試,并產(chǎn)生精煉的輸出。

·它能夠在幾毫秒內(nèi)生成各種測試報(bào)告。

  4.Behave

我們都知道:行為驅(qū)動(dòng)開發(fā),是一種基于敏捷軟件開發(fā)的方法。它能夠鼓勵(lì)開發(fā)人員、業(yè)務(wù)參與者和QA人員,三者之間的協(xié)作。作為另一種Python測試框架,Behave允許團(tuán)隊(duì)避開各種復(fù)雜的情況,去執(zhí)行BDD測試。從本質(zhì)上說,該框架與SpecFlow和Cucumber非常相似,常被用于執(zhí)行自動(dòng)化測試。用戶可以通過簡單易讀的語言來編寫測試用例,并能夠在其執(zhí)行期間粘貼到代碼之中。而且,那些被設(shè)定的行為規(guī)范與步驟,也可以被重用到其他的測試方案中。

  優(yōu)點(diǎn)

·由于系統(tǒng)行為使用了半正式語言、以及域詞匯表,因此Behave有助于在組織中保持一致性的行為。

·讓那些工作在不同模塊上的開發(fā)團(tuán)隊(duì),通過協(xié)調(diào)處理來具有類似的特征。

·其構(gòu)建的各個(gè)功能塊能夠執(zhí)行各種測試用例。

·由于具有更多值得用戶推理和思考的細(xì)節(jié),因此目標(biāo)產(chǎn)品會(huì)具有更好的規(guī)范性。

·根據(jù)類似的規(guī)范格式,它能夠讓項(xiàng)目經(jīng)理和利益相關(guān)者,對開發(fā)團(tuán)隊(duì)和QA團(tuán)隊(duì)的輸出具有更清楚地了解。

  5.Lettuce

Lettuce是另一種基于Cucumber和Python的行為驅(qū)動(dòng)類自動(dòng)化工具。Lettuce主要專注于那些具有行為驅(qū)動(dòng)開發(fā)特征的普通任務(wù)。它不但簡單易用,而且能夠使得整個(gè)測試過程更流暢、甚至更有趣。

優(yōu)點(diǎn)

·和其他BDD測試框架類似,Lettuce能夠讓開發(fā)人員創(chuàng)建多個(gè)場景,并用簡單的自然語言去描述不同的功能。

·根據(jù)類似的規(guī)范格式,開發(fā)與QA團(tuán)隊(duì)能夠協(xié)調(diào)共事。

·對于黑盒測試而言,Lettuce非常適合于那些行為驅(qū)動(dòng)的測試用例。

上述就是關(guān)于自動(dòng)化測試的Python框架有哪些,它們的優(yōu)點(diǎn)是什么的全部內(nèi)容介紹,想了解更多關(guān)于自動(dòng)化測試的Python框架的信息,請繼續(xù)關(guān)注中培偉業(yè)。

標(biāo)簽: 自動(dòng)化測試
主站蜘蛛池模板: 江陵县| 林甸县| 海丰县| 张掖市| 汪清县| 保山市| 隆化县| 苏尼特左旗| 永安市| 正定县| 赞皇县| 平顺县| 手游| 青铜峡市| 获嘉县| 临城县| 克什克腾旗| 乐平市| 泾川县| 龙南县| 大理市| 新和县| 陆丰市| 开封县| 鹤峰县| 华安县| 颍上县| 平阳县| 临澧县| 涡阳县| 建湖县| 太仆寺旗| 屏山县| 贺州市| 从江县| 武功县| 石棉县| 敖汉旗| 碌曲县| 广东省| 庆元县|