pytest簡單使用和生成測試報告

目錄

1.?基本使用

1--安裝

2--pytest書寫規則

3--為pycharm設置? 以 pytest的方式運行

4--setup和teardown

5--setup_class和teardown

2.?pytest生成測試報告


  1. 基本使用

    1. 安裝

      1. pytest文檔地址
        1. pytest documentation
      2. ?pip install pytest
      3. 點擊pycharm左邊的控制臺按鈕
        1. 輸入pip install pytest
      4. 出現下面的情況就算成功了
    2. pytest書寫規則

      1. 測試的文件名必須以test開頭,或者結尾
        1. test_12312_demo.py
        2. asd_112_demo_test.pyy
      2. 測試類必須以Test開頭
        1. TestLoginApi
    3. 為pycharm設置? 以 pytest的方式運行

      1. 使用快捷鍵 ctrl + alt +s 呼出pycharm設置面板
        1. 找tools
          1. python integrated tools
            1. 找到Default test Runner?
              1. 設置pytest
                1. 最后點擊ok按鈕
    4. 編寫一個簡單的例子
      1. class TestDemo:# 定義一個測試用例def test_demo_001(self):print("這是一個測試test_demo_001")def test_demo_002(self):print("test_demo_002")

        1. 測試結果如下
      2. 命令行執行
        1. pytest -s .\test_demo.py
    5. setup和teardown

      1. def setup(self):print("前置處理")
      2. def teardown(self):print("后置處理")
      3. 在執行的過程中
      4. 發現這些函數并沒有執行
        1. 這個的原因是因為setup 和 teardown在pytest 8.0 以后的版本已經廢棄了
        2. 可以使用setup_method和 teardown_method
          1. def setup_method(self):print("前置處理\n")def teardown_method(self):print("后置處理")
        3. 運行結果
        4. 可以看到在每個方法執行前后都會執行
      5. pytest8.0以前的版本使用setup和teardown。pytest8.0以后的版本使用setup_method和teardown_method
    6. setup_class和teardown

      1. def setup_class(self):print("--------類級別的前置處理器---------")def teardown_class(self):print("--------類級別的后置處理器---------")
      2. ?
      3. 可以看到只會運行一次
  2. pytest生成測試報告

    1. 安裝測試報告插件
      1. pip install pytest-html
      2. 出現下面的情況就算安裝完成了
    2. 使用指令生成測試報告
      1. pytest --html=.\reports.html .\test_demo.py
      2. pytest --html=生成報告的路徑 執行測試用例的路徑
      3. 打開測試報告
        1. 找到reports.html文件?
          1. 鼠標右鍵
            1. Open in
              1. Brower
                1. Chrome
                2. 這里可以選擇你安裝的瀏覽器去打開
                3. 我這里安裝了Chrome,就選擇了Chrome
      4. 可以看到生成的測試報告
      5. 可以看到這些結果展示還是很直觀 的

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/90100.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/90100.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/90100.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Spring Boot 第一天知識匯總

一、Spring Boot 是什么?簡單說,Spring Boot 是簡化 Spring 應用開發的框架 —— 它整合了整個 Spring 技術棧,提供了 “一站式” J2EE 開發解決方案。核心優點:快速創建獨立運行的 Spring 項目,無需繁瑣配置&#xff…

MySql主從部署

MySql主從部署 1、操作環境 硬件環境:香橙派5 aarch64架構 軟件環境:Ubuntu 22.04.3 LTS 軟件版本:mysql-8.0.42 操作方式:mysql_1,mysql_2容器 主節點:mysql_1 啟動命令:docker run --name mysql_master \…

Redis——Redis進階命令集詳解(下)

本文詳細介紹了Redis一些復雜命令的使用,包括Redis事務相關命令,如MULTI、EXEC、DISCARD 和 WATCH ,發布訂閱操作命令,如PUBLISH 、SUBSCRIBE 、PSUBSCRIBE ,BitMap操作命令,如SETBIT、GETBIT、BITCOUNT、BITOP,HyperL…

C#使用socket報錯 System.Net.Sockets.SocketException:“在其上下文中,該請求的地址無效。

bind: 在其上下文中,該請求的地址無效。問題定位 程序中運行socket服務端程序時,綁定的IP地址無效,即請求的IP地址在你的機子上找不到。原因有以下幾種可能: 1)server端綁定的IP地址不是本機的IP地址。 2)之…

計算機底層入門 05 匯編學習環境通用寄存器內存

2.3 匯編學習環境我們通過上一章筆記,得知 計算機好像 只會通過位運算 進行 數字的加法。 而機器語言的魅力就是 位運算,解析規則。它們也都是通過 電路 來進行實現的。這就是 計算機最底層的本質了!!! 匯編語言 所謂的…

Java學習---Spring及其衍生(上)

在 Java 開發領域,Spring 生態占據著舉足輕重的地位。從最初的 Spring 框架到后來的 SpringBoot、SpringMVC 以及 SpringCloud,每一個組件都在不同的場景下發揮著重要作用。本文將深入探討這幾個核心組件,包括它們的定義、原理、作用、優缺點…

LVGL應用和部署(個人開發嵌入式linux產品)

【 聲明:版權所有,歡迎轉載,請勿用于商業用途。 聯系信箱:feixiaoxing 163.com】隨著經濟越來越走向常態化發展,將來的公司基本是兩個趨勢,一個是公司越做越大,越來越趨向于壟斷;另外…

CPU,減少晶體管翻轉次數的編碼

背景 以4比特為單位,共16個數。仔細思考狀態轉換過程中的晶體管翻轉次數。 0000 0001,1 0010,2 0011,1 0100,3 0101,1 0110,2 0111,1 1000,4 1001,1 1010&…

LLM 中的 溫度怎么控制隨機性的?

LLM 中的 溫度怎么控制隨機性的? 在LLM的解碼過程中,溫度(Temperature)通過調整token概率分布的“陡峭程度”來控制隨機性:溫度越低,概率分布越陡峭(高概率token的優勢越明顯),隨機性越低;溫度越高,分布越平緩(高低概率token的差異被縮小),隨機性越高。 溫度,…

freemodbus使用

文章目錄? **CubeMX配置**1. UART配置(RS485通信)2. Timer配置(RTU字符間隔檢測)3. GPIO配置(RS485方向控制)? **STM32F103 RS485 FreeModbus RTU 配置概覽****1?? CubeMX硬件配置****2?? FreeModb…

【Ansible】Ansible 管理 Elasticsearch 集群啟停

一、集群節點信息 通過 Ansible inventory 定義的集群節點分組如下:[es](Elasticsearch 節點) 192.168.100.150192.168.100.151192.168.100.152[logstash](Logstash 節點) 192.168.100.151[kibana](Kibana …

Effective Python 第15條 不要過分依賴給字典添加條目時所用的順序

引言:字典順序的重要性 在Python編程中,字典(dict)是一種常用的數據結構,用于存儲鍵值對。然而,字典的迭代順序問題常常困擾著開發者。從Python 3.7開始,字典保證了鍵的插入順序,這一…

事務隔離級別和傳播方式

事務隔離級別 事務隔離級別是數據庫系統中控制事務間相互影響程度的重要機制。不同的隔離級別在數據一致性保證和系統性能之間提供不同的權衡選擇。下面我將詳細解析四種標準隔離級別、它們能解決的問題以及可能存在的并發問題。 一、四種標準隔離級別 1. 讀未提交 (Read Uncom…

不同地區的主要搜索引擎工具

研究seo,想匯總一下不同國家的搜索引擎工具,順帶了解一下這些公司提供的服務。 韓國:NAVER——>LINE 日本: 我還不知道,如果你知道可以評論告訴我 俄羅斯:yandex yandex有點像本土化的google 搜索引擎 郵箱 網盤 在…

實操:AWS CloudFront的動態圖像轉換

概述 適用于 Amazon CloudFront 的動態圖像轉換(前身為無服務器圖像處理器),通過 Amazon CloudFront 的全球內容分發網絡(CDN)實現實時圖像處理。此 AWS 解決方案可幫助您優化視覺內容交付,同時顯著降低運營…

Spring Boot 實戰詳解:從靜態資源到 Thymeleaf 模板引擎

Spring Boot 憑借其 "約定大于配置" 的理念,極大簡化了 Java 應用開發流程。本文將從 Spring Boot 核心特性出發,詳細解析靜態資源映射規則、Thymeleaf 模板引擎的使用,并結合完整實戰案例,幫助開發者快速上手 Spring B…

docker的鏡像與推送

docker build# 1. 基本構建命令(使用當前目錄的 Dockerfile) docker build .# 2. 指定 Dockerfile 路徑和構建上下文 docker build -f /path/to/Dockerfile /path/to/build/context# 3. 為鏡像設置名稱和標簽 docker build -t my-image:latest .# 4. 設置…

計算機網絡學習----域名解析

在互聯網世界中,我們習慣通過域名(如www.example.com)訪問網站,而非直接記憶復雜的 IP 地址(如 192.168.1.1)。域名與 IP 地址之間的轉換過程,就是域名解析。它是互聯網通信的基礎環節&#xff…

構建高性能推薦系統:MixerService架構解析與核心實現

——深入剖析推薦服務的分層設計、工作流引擎與高可用策略 一、整體架構與分層設計 該推薦服務采用經典分層架構模式?7,各層職責清晰: ?HTTP接口層? 支持 GET/POST 請求解析,自動映射參數到 RcmdReq 協議對象統一錯誤處理:參…

【安全漏洞】隱藏服務器指紋:Nginx隱藏版本號配置修改與重啟全攻略

?? 隱藏服務器指紋:Nginx配置修改與重啟全攻略 你是否知道,默認情況下Nginx會在HTTP響應頭中暴露版本號?這個看似無害的Server: nginx/1.x.x字段,實則可能成為黑客的"藏寶圖"。今天我們就來揭秘如何通過簡單配置提升服務器安全性,并手把手教你完成Windows環境…