那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用Python實(shí)現(xiàn)功能測(cè)試自動(dòng)化

星星科技指導(dǎo)員 ? 來源:embedded ? 作者:Rahul Vala ? 2023-05-04 11:20 ? 次閱讀

當(dāng)今的現(xiàn)代企業(yè)需要更快的軟件功能發(fā)布,以生產(chǎn)高質(zhì)量的產(chǎn)品,并在不犧牲軟件質(zhì)量的情況下快速進(jìn)入市場(chǎng)。為了確保成功部署,加速發(fā)布新功能或修復(fù)現(xiàn)有功能中的錯(cuò)誤需要嚴(yán)格的端到端軟件測(cè)試。

雖然手動(dòng)測(cè)試可用于小型應(yīng)用程序或軟件,但大型和復(fù)雜的應(yīng)用程序需要專用的資源和技術(shù),如 python 測(cè)試框架、自動(dòng)化測(cè)試工具等,以確保在更短的時(shí)間內(nèi)實(shí)現(xiàn)最佳的測(cè)試覆蓋率和更快的質(zhì)量發(fā)布。

PyTest 是一個(gè)測(cè)試框架,允許個(gè)人使用 Python 編寫測(cè)試代碼,使您能夠?yàn)閿?shù)據(jù)庫、API 和用戶界面創(chuàng)建簡(jiǎn)單且可擴(kuò)展的測(cè)試用例。PyTest 主要用于編寫 API 測(cè)試。它有助于開發(fā)從簡(jiǎn)單的單元測(cè)試到復(fù)雜的功能測(cè)試的測(cè)試。根據(jù)Future Market Insights集團(tuán)發(fā)布的一份報(bào)告,到14年底,全球自動(dòng)化測(cè)試市場(chǎng)預(yù)計(jì)將以3.93%的復(fù)合年增長(zhǎng)率增長(zhǎng),市場(chǎng)價(jià)值將達(dá)到6億美元。

為什么選擇 Pytest?

選擇正確的測(cè)試框架可能很困難,并且依賴于可行性、復(fù)雜性、可伸縮性和框架提供的功能等參數(shù)。PyTest 是測(cè)試自動(dòng)化工程師的首選測(cè)試框架,對(duì) Python 基礎(chǔ)知識(shí)有很好的了解。使用 PyTest 框架,您可以創(chuàng)建高覆蓋率單元測(cè)試、復(fù)雜功能測(cè)試和驗(yàn)收測(cè)試。除了是一個(gè)極其通用的測(cè)試自動(dòng)化框架之外,PyTest 還具有大量的測(cè)試執(zhí)行功能,例如參數(shù)化、標(biāo)記、標(biāo)記、并行執(zhí)行和依賴項(xiàng)。

使用 Pytest 作為測(cè)試框架時(shí)沒有樣板

Pytest 可以運(yùn)行用 unittest、doctest 和 nose 編寫的測(cè)試

Pytest 支持用于行為驅(qū)動(dòng)測(cè)試的插件

有 150 多個(gè)插件可用于支持不同類型的測(cè)試自動(dòng)化

下圖顯示了 Pytest 框架的典型結(jié)構(gòu)。

pYYBAGRTI9KAZiAdAACJYnJJaVE343.png

(Pytest 根框架)

如上面的結(jié)構(gòu)所示,框架核心組件的業(yè)務(wù)邏輯完全獨(dú)立于 Pytest 組件。Pytest 使用核心框架就像在測(cè)試腳本中實(shí)例化對(duì)象并調(diào)用其函數(shù)一樣。測(cè)試腳本文件名應(yīng)以“test_”開頭或以“_test”結(jié)尾。測(cè)試函數(shù)名稱也應(yīng)采用相同的格式。Pytest 中的報(bào)告可以通過 Pytest-html 報(bào)告來處理。

重要的 Pytest 特性

1. pytest 夾具

Pytest最突出的功能是Fixtures。顧名思義,夾具是 Pytest 中用于生成特定條件的裝飾器函數(shù),需要安排該條件才能成功運(yùn)行測(cè)試。

條件可以是任何前提條件,例如創(chuàng)建所需類的對(duì)象,將應(yīng)用程序帶到特定狀態(tài),在單元測(cè)試的情況下啟動(dòng)模擬程序,初始化依賴項(xiàng)等。夾具還負(fù)責(zé)拆除或還原測(cè)試執(zhí)行完成后生成的條件。通常,夾具負(fù)責(zé)測(cè)試的設(shè)置和拆卸條件。

夾具范圍

設(shè)置和拆卸不必僅用于測(cè)試功能。設(shè)置的范圍可能因測(cè)試功能而異,可能與整個(gè)測(cè)試會(huì)話一樣大。這意味著每個(gè)定義的范圍僅執(zhí)行一次設(shè)置-拆卸。為了實(shí)現(xiàn)相同的目的,我們可以定義范圍以及夾具裝飾器,即會(huì)話、模塊、類、函數(shù)。

夾具使用

Pytest 提供了隱式使用燈具或使用 autouse 參數(shù)顯式調(diào)用燈具的靈活性。要默認(rèn)調(diào)用夾具函數(shù),需要將 autouse 參數(shù)值設(shè)置為 True,否則設(shè)置為 False。

2. Conftest.py

測(cè)試框架中使用的所有夾具通常都以 conftest.py 定義。它是任何 Pytest 執(zhí)行的入口點(diǎn)。夾具不必是自動(dòng)使用的=True。所有定義的夾具都可以由所有測(cè)試文件訪問。conftest.py 需要放在 Pytest 框架的根目錄中。

3. Pytest 鉤子

Pytest 提供了許多鉤子,這些鉤子將被調(diào)用以執(zhí)行特定的設(shè)置。鉤子是剛好產(chǎn)生一次的生成器函數(shù)。用戶還可以為 Pytest 鉤子編寫包裝器。

4. 標(biāo)記

Pytest 提供了標(biāo)記,用于根據(jù)功能、范圍、測(cè)試類別等對(duì)一組測(cè)試進(jìn)行分組。可以根據(jù)標(biāo)記自動(dòng)篩選測(cè)試執(zhí)行。即接受、回歸套裝、登錄測(cè)試等。

標(biāo)記還充當(dāng)參數(shù)化測(cè)試的推動(dòng)因素。將對(duì)作為參數(shù)傳遞的所有參數(shù)執(zhí)行測(cè)試。請(qǐng)注意,Pytest 將一個(gè)參數(shù)的測(cè)試視為完全獨(dú)立的測(cè)試。許多事情都可以通過標(biāo)記來實(shí)現(xiàn),例如將測(cè)試標(biāo)記為跳過,在某些條件下跳過,具體取決于特定測(cè)試等。

5. 斷言

Pytest 不要求測(cè)試腳本具有其斷言。它可以完美地與Python內(nèi)置斷言一起工作。

6.皮特測(cè)試.ini

所有默認(rèn)配置數(shù)據(jù)都可以放在pytest中.ini并且conftest可以讀取相同的數(shù)據(jù),而無需任何特定的實(shí)現(xiàn)。

PyTest 支持大量插件,通過這些插件,幾乎任何級(jí)別的復(fù)雜系統(tǒng)都可以實(shí)現(xiàn)自動(dòng)化。Pytest 的一個(gè)主要好處是,任何類型的結(jié)構(gòu)實(shí)現(xiàn)都是使用原始 Python 代碼完成的,沒有任何樣板代碼。這意味著在 Pytest 中實(shí)現(xiàn)任何東西就像在 Python 中實(shí)現(xiàn)任何東西一樣靈活和干凈。

在更短的開發(fā)周期中,測(cè)試自動(dòng)化提供了幾個(gè)對(duì)生成高質(zhì)量應(yīng)用程序至關(guān)重要的好處。它減少了在手動(dòng)測(cè)試方法中發(fā)生不可避免的人為錯(cuò)誤的可能性。自動(dòng)化測(cè)試可提高軟件質(zhì)量,并降低缺陷危及交付時(shí)間的可能性。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1510

    瀏覽量

    62394
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4825

    瀏覽量

    69043
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4807

    瀏覽量

    85037
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    【NanoPi2申請(qǐng)】華為基站自動(dòng)化測(cè)試

    申請(qǐng)理由:我公司主要業(yè)務(wù)是基站維修。本項(xiàng)目是要做華為基站自動(dòng)化測(cè)試設(shè)備。軟件部分是Python+PyQt4完成的。主要功能是操作安捷倫的E4438c和N9020A對(duì)基站各項(xiàng)指標(biāo)作的
    發(fā)表于 12-02 16:14

    開關(guān)電源自動(dòng)化測(cè)試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

      摘 要: 按照以軟件為核心的模塊系統(tǒng)構(gòu)架,設(shè)計(jì)并實(shí)現(xiàn)了新一代開關(guān)電源自動(dòng)化測(cè)試系統(tǒng)。該系統(tǒng)能自動(dòng)完成開關(guān)電源
    發(fā)表于 11-29 16:59

    python控制CANoe實(shí)現(xiàn)自動(dòng)化測(cè)試的方法

    ”完成了python控制CANoe實(shí)現(xiàn)自動(dòng)化測(cè)試。那么,python能控制釘釘么?答案是可以的。那么用py
    發(fā)表于 12-29 08:12

    LabVIEW與Tektronix示波器實(shí)現(xiàn)電源測(cè)試自動(dòng)化

    LabVIEW與Tektronix示波器實(shí)現(xiàn)電源測(cè)試自動(dòng)化 在現(xiàn)代電子測(cè)試與測(cè)量領(lǐng)域,自動(dòng)化測(cè)試
    發(fā)表于 12-09 20:37

    ATE自動(dòng)化測(cè)試系統(tǒng)是什么_ATE自動(dòng)化測(cè)試系統(tǒng)介紹

    本文首先介紹了ATE自動(dòng)化測(cè)試系統(tǒng)發(fā)展線路,其次闡述了ATE自動(dòng)化測(cè)試系統(tǒng)的作用及原理、特點(diǎn)、優(yōu)勢(shì),最后介紹了ATE自動(dòng)化
    發(fā)表于 05-23 16:47 ?3.2w次閱讀

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

    測(cè)試框架,不妨“軟為硬用”。這里就基于python自動(dòng)化測(cè)試框架unittest來實(shí)現(xiàn)一個(gè)簡(jiǎn)單的自動(dòng)
    的頭像 發(fā)表于 05-20 14:47 ?2985次閱讀

    測(cè)試自動(dòng)化中的Python

      用于測(cè)試的編程需要與開發(fā)應(yīng)用程序的編程不同的方法。如果你想要一種專門用于測(cè)試編碼的簡(jiǎn)單而精簡(jiǎn)的語言,Python 是一個(gè)不錯(cuò)的選擇。Python
    的頭像 發(fā)表于 12-09 14:53 ?868次閱讀

    使用Python腳本實(shí)現(xiàn)自動(dòng)化運(yùn)維任務(wù)

    許多運(yùn)維工程師會(huì)使用 Python 腳本來自動(dòng)化運(yùn)維任務(wù)。Python 是一種流行的編程語言,具有豐富的第三方庫和強(qiáng)大的自動(dòng)化能力,適用于許多不同的領(lǐng)域。
    的頭像 發(fā)表于 04-08 10:36 ?1756次閱讀

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

    自動(dòng)化測(cè)試框架,即是應(yīng)用于自動(dòng)化測(cè)試所用的框架。按照框架的定義,自動(dòng)化測(cè)試框架要么是提供可重用的
    發(fā)表于 04-18 14:44 ?953次閱讀

    自動(dòng)化測(cè)試選擇合適的Python框架

    測(cè)試自動(dòng)化是使用框架和工具自動(dòng)執(zhí)行測(cè)試以更快地執(zhí)行測(cè)試并減少對(duì)人工測(cè)試人員的需求的實(shí)踐。在這種軟
    的頭像 發(fā)表于 05-04 12:02 ?1441次閱讀

    python自動(dòng)化測(cè)試攻城記

    本文介紹實(shí)施自動(dòng)化測(cè)試需要具備的技能及具體實(shí)踐流程。
    的頭像 發(fā)表于 08-16 11:39 ?1159次閱讀
    <b class='flag-5'>python</b><b class='flag-5'>自動(dòng)化</b><b class='flag-5'>測(cè)試</b>攻城記

    Facebook群組自動(dòng)化python – 網(wǎng)絡(luò)自動(dòng)化

    電子發(fā)燒友網(wǎng)站提供《Facebook群組自動(dòng)化python – 網(wǎng)絡(luò)自動(dòng)化.zip》資料免費(fèi)下載
    發(fā)表于 07-05 14:26 ?0次下載
    Facebook群組<b class='flag-5'>自動(dòng)化</b><b class='flag-5'>python</b> – 網(wǎng)絡(luò)<b class='flag-5'>自動(dòng)化</b>

    Python 模擬鍵盤鼠標(biāo)的方式實(shí)現(xiàn)自動(dòng)化

    在某些情況下,如果我們需要進(jìn)行自動(dòng)化操作的應(yīng)用沒有提供相應(yīng)的接口,我們無法直接通過Python來調(diào)用API實(shí)現(xiàn)自動(dòng)化。這種情況下,Python
    的頭像 發(fā)表于 11-02 14:48 ?1467次閱讀
    <b class='flag-5'>Python</b> 模擬鍵盤鼠標(biāo)的方式<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>自動(dòng)化</b>

    電源測(cè)試怎么自動(dòng)化?電源模塊自動(dòng)化測(cè)試系統(tǒng)如何實(shí)現(xiàn)

    納米軟件在電測(cè)行業(yè)深耕十余年,在行業(yè)的大背景下,為了進(jìn)一步完善自動(dòng)化測(cè)試,開發(fā)出了新的智能的電源模塊自動(dòng)化測(cè)試系統(tǒng)ATECLOUD-POW
    的頭像 發(fā)表于 12-15 14:40 ?964次閱讀
    電源<b class='flag-5'>測(cè)試</b>怎么<b class='flag-5'>自動(dòng)化</b>?電源模塊<b class='flag-5'>自動(dòng)化</b><b class='flag-5'>測(cè)試</b>系統(tǒng)如何<b class='flag-5'>實(shí)現(xiàn)</b>?

    Python自動(dòng)化測(cè)試框架及其應(yīng)用

    Pytest是一個(gè)非常成熟的全功能Python測(cè)試框架,與python自帶的unittest測(cè)試框架類似,但是比unittest框架使用起
    的頭像 發(fā)表于 04-03 16:15 ?599次閱讀
    <b class='flag-5'>Python</b><b class='flag-5'>自動(dòng)化</b><b class='flag-5'>測(cè)試</b>框架及其應(yīng)用
    百家乐强弱走势| 百家乐官网赌场策略论坛| 澳门顶级赌场| 黄金城百家乐手机用户| 信誉百家乐博彩网| 博彩百家乐官网字谜总汇二丹东| 百家乐官网投注平台导航网 | 百家乐微笑打| 百家乐挂机软件| 沙龙百家乐娱乐城| 谈谈百家乐赢钱技巧| 八卦24山| 缅甸百家乐官网视频| 百家乐官网几点不用补| V博百家乐官网的玩法技巧和规则 中骏百家乐官网的玩法技巧和规则 | 百家乐官网庄比闲多多少| 百家乐官网如何打公式| 百家乐官网长玩必输| 百家乐官网d博彩论坛| 圣淘沙百家乐官网游戏| 百家乐官网算牌e世博| 筹码百家乐官网500| 百家乐官网赌博机假在哪里| 澳门百家乐官网怎么| 百家乐官网赌场代理| 百家乐官网押注方法| 大佬百家乐官网的玩法技巧和规则| 太阳百家乐官网3d博彩通| 现场百家乐官网电话投注| 百家乐官网怎么对冲打| 百家乐官网赌博规律| 香港百家乐官网赌城| 玩百家乐官网去哪个娱乐城最安全 | 威尼斯人娱乐城博彩网| 大发888官方6222.co| 娱乐城新用户送彩金| 大港区| 现金百家乐官网攻略| 希尔顿百家乐官网娱乐城 | 大发888游戏注册| 大发888游戏平台hana|