精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

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

使用Python實現(xiàn)功能測試自動化

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

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

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

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

為什么選擇 Pytest?

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

使用 Pytest 作為測試框架時沒有樣板

Pytest 可以運行用 unittest、doctest 和 nose 編寫的測試

Pytest 支持用于行為驅(qū)動測試的插件

有 150 多個插件可用于支持不同類型的測試自動化

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

pYYBAGRTI9KAZiAdAACJYnJJaVE343.png

(Pytest 根框架)

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

重要的 Pytest 特性

1. pytest 夾具

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

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

夾具范圍

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

夾具使用

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

2. Conftest.py

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

3. Pytest 鉤子

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

4. 標(biāo)記

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

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

5. 斷言

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

6.皮特測試.ini

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

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

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

審核編輯:郭婷

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

    關(guān)注

    2

    文章

    1484

    瀏覽量

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

    關(guān)注

    30

    文章

    4744

    瀏覽量

    68345
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4782

    瀏覽量

    84449
收藏 人收藏

    評論

    相關(guān)推薦

    【NanoPi2申請】華為基站自動化測試

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

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

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

    python控制CANoe實現(xiàn)自動化測試的方法

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

    LabVIEW與Tektronix示波器實現(xiàn)電源測試自動化

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

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

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

    自動化測試框架unittes詳解

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

    測試自動化中的Python

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

    使用Python腳本實現(xiàn)自動化運維任務(wù)

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

    什么是自動化測試框架

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

    自動化測試選擇合適的Python框架

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

    python自動化測試攻城記

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

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

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

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

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

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

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

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

    Pytest是一個非常成熟的全功能Python測試框架,與python自帶的unittest測試框架類似,但是比unittest框架使用起
    的頭像 發(fā)表于 04-03 16:15 ?513次閱讀
    <b class='flag-5'>Python</b><b class='flag-5'>自動化</b><b class='flag-5'>測試</b>框架及其應(yīng)用