黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

python代碼覆蓋率(下)--- coverage.py api

系統 2413 0

前言

使用pytest-cov 無法統計用 api調用服務的測試腳本所覆蓋率,但大部分的項目基本也是使用api調用。所以我們額外需要使用coverage.py api 來統計。
當你安裝pytest-cov時,已經默認安裝了coverage 這個庫。

服務啟動

要想掃描到代碼,必須在服務啟動的時候要插入coverage相關配置。
我這邊是flask 啟動的,所以在flask啟動的代碼上添加,如下:

            
              
                if
              
               __name__ 
              
                ==
              
              
                '__main__'
              
              
                :
              
              
    cov 
              
                =
              
               Coverage
              
                (
              
              
                )
              
              
    cov
              
                .
              
              start
              
                (
              
              
                )
              
              
                # 開始檢測代碼
              
              
                print
              
              
                (
              
              
                "qidong"
              
              
                )
              
              
    app
              
                .
              
              run
              
                (
              
              debug
              
                =
              
              
                True
              
              
                ,
              
               host
              
                =
              
              
                '0.0.0.0'
              
              
                ,
              
              port
              
                =
              
              
                9098
              
              
                )
              
              
                #原本只有這一行
              
              
    cov
              
                .
              
              stop
              
                (
              
              
                )
              
              
                # 停止紀錄
              
              
                print
              
              
                (
              
              
                "guanbi"
              
              
                )
              
              
    cov
              
                .
              
              save
              
                (
              
              
                )
              
              
                # 保存在 .coverage 中
              
              
                print
              
              
                (
              
              
                "save"
              
              
                )
              
              
    cov
              
                .
              
              html_report
              
                (
              
              
                )
              
              
                # 生成 HTML 報告
              
            
          

原本我們是python xx.py 這樣啟動,但現在不可以。
需要改成這樣,source 表示目錄,xx表示執行文件。

            
              	coverage run --source='/xxx/' xx.py    

            
          

啟動運行圖如下: python代碼覆蓋率(下)--- coverage.py api_第1張圖片 然后調用你的自動化腳本(自動化腳本是直接調的該服務提供的api 。)
python代碼覆蓋率(下)--- coverage.py api_第2張圖片
自動化如果正常運行,能看到運行的請求

以上說明你的腳本跟服務是沒問題的

ctr-c停掉該腳本后,最后顯示save,如果顯示”Coverage.py warning: No data was collected. (no-data-collected)“ 說明的服務運行方式有問題,coverage 服務沒有運行到你代碼

報告生成

輸入以下命令

            
              coverage report

            
          

python代碼覆蓋率(下)--- coverage.py api_第3張圖片

最后一步最后輸入

            
              coverage html

            
          

這樣就可以省 html 文件了。

導出在window上看,具體點擊某個文件,點擊run,你可以看到綠色的就是運行的。但有問題是,你會發現有些代碼應該是要被執行,但卻沒有被執行。所以coverage的數據準不準很難說。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!??!

發表我的評論
最新評論 總共0條評論