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

從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)

這篇具有很好參考價值的文章主要介紹了從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、前言

doctest從字面意思上看,那就是文檔測試。doctest是python里面自帶的一個模塊,它實際上是單元測試的一種。
官方解釋:doctest 模塊會搜索那些看起來像交互式會話的 Python 代碼片段,然后嘗試執(zhí)行并驗證結果

doctest測試用例可以放在兩個地方

  1. 函數(shù)或者方法下的注釋里面
  2. 模塊的開頭

二、案例

先看第一個案例,將需要測試的片段,標準格式,需要運行的代碼前面加>>> ,相當于進入cmd這種交互環(huán)境執(zhí)行,期望的結果前面不需要加 >>>

>>> multiply(4, 3)
    12
>>> multiply('a', 3)
    'aaa'

放到multiply函數(shù)的注釋里

def multiply(a, b):
    """
    fuction: 兩個數(shù)相乘
    >>> multiply(4, 3)
    12
    >>> multiply('a', 3)
    'aaa'
    """
    return a * b
if __name__ == '__main__':
    import doctest
    doctest.testmod(verbose=True)

運行結果

Trying:
    multiply(4, 3)
Expecting:
    12
ok
Trying:
    multiply('a', 3)
Expecting:
    'aaa'
ok
1 items had no tests:
    __main__
1 items passed all tests:
   2 tests in __main__.multiply
2 tests in 2 items.
2 passed and 0 failed.
Test passed.

從運行的結果可以看出,雖然函數(shù)下方的注釋里面有其它內(nèi)容“fuction: 兩個數(shù)相乘”,但不會去執(zhí)行,只識別“>>>”這種符號。2個測試用例都是通過的,實際的結果與期望的結果一致

三、失敗案例

doctest的內(nèi)容放到.py模塊的開頭也是可以識別到的

# 保存為xxx.py
'''
fuction: 兩個數(shù)相乘
>>> multiply(4, 8)
12
>>> multiply('a', 5)
'aaa'
'''

def multiply(a, b):
    """
    fuction: 兩個數(shù)相乘
    """
    return a * b
if __name__ == '__main__':
    import doctest
    doctest.testmod(verbose=True)

運行結果2個都失敗

**********************************************************************
1 items had failures:
   2 of   2 in __main__
2 tests in 2 items.
0 passed and 2 failed.
***Test Failed*** 2 failures.

verbose參數(shù),設置為True則在執(zhí)行測試的時候會輸出詳細信息

四、cmd執(zhí)行

以上案例是在編輯器直接運行的,如果在cmd里面,也可以用指令去執(zhí)行

$ python -m doctest -v xxx.py

m 參數(shù)指定運行方式doctest
-v參數(shù)是verbose,帶上-v參數(shù)相當于verbose=True
從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)

五、pytest運行

pytest框架是可以兼容doctest用例,執(zhí)行的時候加個參數(shù) —doctest-modules ,這樣它就能自動搜索到doctest的用例

$ pytest -v —doctest-modules  xxx.py

從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)
如下是函數(shù)下的文檔

?fuction: 兩個數(shù)相乘

>>> multiply(4, 3)
12
>>> multiply('a', 5)
'aaa'

?運行結果

D:\test1122\a>pytest -v --doctest-modules  xxx.py
============================= test session starts =============================
platform win32 -- Python 3.6.0, pytest-3.6.3, py-1.5.4, pluggy-0.6.0 -- d:\soft\
python3.6\python.exe
cachedir: .pytest_cache
metadata: {'Python': '3.6.0', 'Platform': 'Windows-7-6.1.7601-SP1', 'Packages':
{'pytest': '3.6.3', 'py': '1.5.4', 'pluggy': '0.6.0'}, 'Plugins': {'metadata': '
1.7.0', 'html': '1.19.0', 'allure-adaptor': '1.7.10'}, 'JAVA_HOME': 'D:\\soft\\j
dk18\\jdk18v'}
rootdir: D:\test1122\a, inifile:
plugins: metadata-1.7.0, html-1.19.0, allure-adaptor-1.7.10
collected 1 item

xxx.py::xxx.multiply FAILED                                              [100%]

================================== FAILURES ===================================
___________________________ [doctest] xxx.multiply ____________________________
004
005     fuction: 兩個數(shù)相乘
006     >>> multiply(4, 3)
007     12
008     >>> multiply('a', 5)
Expected:
    'aaa'
Got:
    'aaaaa'

D:\test1122\a\xxx.py:8: DocTestFailure
========================== 1 failed in 0.16 seconds ===========================

結果可以看出,文檔里面的每一行都被執(zhí)行了,當遇到測試不通過的用例時,就不會繼續(xù)往下執(zhí)行了

六、doctest獨立文件

doctest內(nèi)容也可以和代碼抽離開,單獨用一個.txt文件保存從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)

在當前xxx.py同一目錄新建一個xxx.txt文件,寫入測試的文檔,要先導入該功能,導入代碼前面也要加 >>>
>>> from xxx import multiply
>>> multiply(4, 3)
12
>>> multiply('a', 3)
'aaa'

?cmd執(zhí)行“python -m doctest -v xxx.txt測試結果

>python -m doctest -v  xxx.txt
Trying:
    from xxx import multiply
Expecting nothing
ok
Trying:
    multiply(4, 3)
Expecting:
    12
ok
Trying:
    multiply('a', 3)
Expecting:
    'aaa'
ok
1 items passed all tests:
   3 tests in xxx.txt
3 tests in 1 items.
3 passed and 0 failed.
Test passed.

最后感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:

【軟件測試技術交流(資料分享)】:320231853(備注C)http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=VhgK91CsO3OcxW86SoFS1zYSMHCtLapU&authKey=t1D%2F3BhXbUcLKimCIzg91AXnhvhU0RvSTRQDRzK3JcwlXtJFCQFyiaGK0cYZBI5v&noverify=0&group_code=320231853

從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)

生命不息,奮斗不止。每一份努力都不會被辜負,只要堅持不懈,終究會有回報。珍惜時間,追求夢想。不忘初心,砥礪前行。你的未來,由你掌握!

生命短暫,時間寶貴,我們無法預知未來會發(fā)生什么,但我們可以掌握當下。珍惜每一天,努力奮斗,讓自己變得更加強大和優(yōu)秀。堅定信念,執(zhí)著追求,成功終將屬于你!

只有不斷地挑戰(zhàn)自己,才能不斷地超越自己。堅持追求夢想,勇敢前行,你就會發(fā)現(xiàn)奮斗的過程是如此美好而值得。相信自己,你一定可以做到!文章來源地址http://www.zghlxwxcb.cn/news/detail-505100.html

到了這里,關于從0到1精通自動化測試,pytest自動化測試框架,doctest測試框架(十四)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領支付寶紅包贊助服務器費用

相關文章

  • 從0到1精通自動化測試,pytest自動化測試框架,測試用例setup和teardown(三)

    從0到1精通自動化測試,pytest自動化測試框架,測試用例setup和teardown(三)

    目錄 一、前言 二、用例運行級別 三、函數(shù)式 1、setup_function / teardown_function 2、setup_module / teardown_module 四、類和方法 五、函數(shù)和類混合 學過 unittest 的都知道里面用前置和后置 setup 和 teardown 非常好用,在每次用例開始前和結束后都去執(zhí)行一次 當然還有更高級一點的 setupCla

    2024年02月09日
    瀏覽(89)
  • 從0到1精通自動化測試,pytest自動化測試框架,fixture之a(chǎn)utouse=True(十二)

    從0到1精通自動化測試,pytest自動化測試框架,fixture之a(chǎn)utouse=True(十二)

    平常寫自動化用例會寫一些前置的fixture操作,用例需要用到就直接傳該函數(shù)的參數(shù)名稱就行了。當用例很多的時候,每次都傳這個參數(shù),會比較麻煩 fixture里面有個參數(shù)autouse,默認是Fasle沒開啟的,可以設置為True開啟自動使用fixture功能,這樣用例就不用每次都去傳參了 調用

    2024年02月11日
    瀏覽(123)
  • 從0到1精通自動化測試,pytest自動化測試框架,allure2生成html報告(史上最詳細)(九)

    從0到1精通自動化測試,pytest自動化測試框架,allure2生成html報告(史上最詳細)(九)

    allure是一個report框架,支持java的Junit/testng等框架,當然也可以支持python的pytest框架,也可以集成到Jenkins上展示高大上的報告界面。 環(huán)境準備: python3.6 windows環(huán)境 pycharm pytest-allure-adaptor allure2.7.0 java1.8 pip安裝 pytest-allure-adaptor,github地址:https://github.com/allure-framework/allure-pytest 如

    2024年02月11日
    瀏覽(526)
  • 超詳細從入門到精通,pytest自動化測試框架實戰(zhàn)-fixture多樣玩法(九)

    超詳細從入門到精通,pytest自動化測試框架實戰(zhàn)-fixture多樣玩法(九)

    在編寫測試用例,都會涉及到用例執(zhí)行之前的環(huán)境準備工作,和用例執(zhí)行之后的環(huán)境清理工作。 代碼版的測試用例也不例外。 pytest自動化測試框架:https://www.bilibili.com/video/BV18K411m7FH/ 在自動化測試框架當中,我們也需要編寫: 用例執(zhí)行之前的環(huán)境準備工作代碼(前置工作代碼

    2023年04月11日
    瀏覽(94)
  • 自動化測試(三):接口自動化pytest測試框架

    自動化測試(三):接口自動化pytest測試框架

    API:Application Programming Interface 接口自動化按照自動化的工具可分為 基于 接口測試工具 的接口自動化 eg1:Postman+Newman+git/Svn+Jenkins(基于Javascript語言)接口自動化 Postman :創(chuàng)建和發(fā)送 API 請求,并對響應進行斷言和驗證。 Newman : Postman 的命令行工具,它允許測試人員在沒有界

    2024年02月10日
    瀏覽(94)
  • Pytest自動化測試框架---(單元測試框架)

    Pytest自動化測試框架---(單元測試框架)

    unittest是python自帶的單元測試框架,它封裝好了一些校驗返回的結果方法和一些用例執(zhí)行前的初始化操作,使得單元測試易于開展,因為它的易用性,很多同學也拿它來做功能測試和接口測試,只需簡單開發(fā)一些功能(報告,初始化webdriver,或者http請求方法)便可實現(xiàn)。 但自

    2024年02月14日
    瀏覽(120)
  • pytest 框架自動化測試

    pytest 框架自動化測試

    隨筆記錄 目錄 1. 安裝? 2. 安裝pytest 相關插件 2.1 準備階段 2.2 安裝? 2.3 驗證安裝成功? 3. pytest測試用例的運行方式 3.1 主函數(shù)模式 3.1.1 主函數(shù)執(zhí)行指定文件 ?3.1.2?主函數(shù)執(zhí)行指定模塊 3.1.3 主函數(shù)執(zhí)行某個文件中的某個類、方法、函數(shù) 3.1.4?主函數(shù)執(zhí)行生成allure報告 3.2 命令

    2024年02月19日
    瀏覽(98)
  • 自動化測試框架 —— pytest框架入門篇

    今天就給大家說一說pytest框架。 今天這篇文章呢,會從以下幾個方面來介紹: 1、首先介紹一下pytest框架 2、帶大家安裝Pytest框架 3、使用pytest框架時需要注意的點 4、pytest的運行方式 5、pytest框架中常用的插件 pytest 是 python 的第三方單元測試框架,比自帶 unittest 更簡潔和高效

    2024年02月03日
    瀏覽(97)
  • pytest接口測試自動化框架

    目錄 pytest簡介及安裝 pytest的使用規(guī)則 pytest運行方式 主函數(shù)方式 命令行方式 跳過、標記及預期失敗特殊場景處理 pytest前后置、夾具 pytest高級用法fixture pytest接口斷言 pytest結合allure-pytest生成allure測試報告 ????????談起用例管理框架:python中的unittest、pytest;java中的test

    2024年02月06日
    瀏覽(101)
  • 【自動化測試教程】 —— pytest 框架詳解 ~

    【自動化測試教程】 —— pytest 框架詳解 ~

    特點: 容易上手, 入門簡單, 文檔豐富, 文檔中有很多參考案例 支持簡單的單元測試和復雜的功能測試 支持參數(shù)化 執(zhí)行測試用例過程中, 支持跳過操作 支持重復失敗的case 支持運行Nose, unittest編寫測試用例 pytest支持很多第三方插件 方便和持續(xù)集成工具集成 斷言方法: assert res

    2024年02月12日
    瀏覽(104)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領取紅包

二維碼2

領紅包