改善测试结果可视化:使用 pytest-sugar 插件提升测试体验

前言

我们有时候喜欢将执行结果用不同颜色进行显示,这样有助于查看,一目了然。那pytest如何输出漂亮的、带有颜色的结果呢?我们带着疑问一起看看。

pytest-sugar

pytest-sugar插件,它可以为pytest测试运行器提供漂亮的、带有颜色的输出,以改善测试结果的可视化。

安装pytest-sugar

首先,我们需要安装pytest-sugar插件。

复制代码
pip install pytest-sugar

安装完成后,pytest-sugar会自动与pytest关联,并在运行测试时提供更好的输出。

使用pytest-sugar

我们实践一下,看看pytest-sugar改善测试结果的可视化效果。

这里我们写一些简单的测试用例,像下面

test_demo.py

csharp 复制代码
def test_add():
    assert 2 + 3 == 5
​
def test_subtract():
    assert 5 - 3 == 2
​
def test_multiply():
    assert 2 * 3 == 6
​
def test_divide():
    assert 6 / 3 == 2

先看看没有按照pytest-sugar插件时的运行效果

arduino 复制代码
test_dir/test_demo.py::test_add PASSED
test_dir/test_demo.py::test_subtract PASSED
test_dir/test_demo.py::test_multiply PASSED
test_dir/test_demo.py::test_divide PASSED

现在,我们先安装pytest-sugar,无需额外配置,继续使用`pytest命令运行这些测试,并查看pytest-sugar插件的效果,不出意外的话,你将会看到一个漂亮的、带有颜色的输出界面,其中包含了每个测试的结果以及相关的信息。执行结果如下:

arduino 复制代码
 test_dir/test_demo.py::test_add ✓                                                                                        25% ██▌
 test_dir/test_demo.py::test_subtract ✓                                                                                   50% █████
 test_dir/test_demo.py::test_multiply ✓                                                                                   75% ███████▌
 test_dir/test_demo.py::test_divide ✓                                                                                    100% ██████████

控制台看到会更加漂亮的,pytest-sugar以更加友好和可读的方式呈现了测试结果。它使用了符号 ✓ 表示测试通过,没有任何问题,让你一目了然地知道测试是否通过。此外,测试运行的总体摘要也以清晰的方式展示。

运行原理

它主要通过以下几个方面来实现:

  1. 改进测试结果显示:pytest-sugar使用了一种更友好和易读的方式来呈现测试结果。它使用了符号 ✓ 表示测试通过,使用了符号 ✗ 表示测试失败,以及其他符号来表示不同的状态。这种可视化的结果让开发者更容易理解测试的执行情况。
  2. 颜色高亮:pytest-sugar通过使用颜色高亮显示测试结果,使其更加突出和易于区分。例如,通过的测试结果可能以绿色显示,而失败的测试结果可能以红色显示。这种颜色编码有助于快速识别测试的状态。
  3. 显示测试持续时间:pytest-sugar还提供了每个测试运行所花费的时间。这可以帮助开发者评估测试的性能,并快速识别可能需要优化的测试。
  4. 显示详细的失败信息:当测试失败时,pytest-sugar会显示详细的失败信息,包括断言失败的具体位置和相关的调用栈信息。这有助于开发者快速定位问题并进行修复。

总的来说,pytest-sugar通过改进测试结果的可视化呈现和增强显示功能,提供了更好的测试体验。它使得测试结果更易读、易懂,有助于开发者更快地定位和解决问题。

最后

pytest-sugar插件为pytest测试运行器提供了更好的输出和可视化效果。它使得测试结果更加易读、易懂,有助于开发者更快地定位和解决问题。实用的插件。

相关推荐
抠头专注python环境配置22 分钟前
基于Python与深度学习的智能垃圾分类系统设计与实现
pytorch·python·深度学习·分类·垃圾分类·vgg·densenet
愈努力俞幸运39 分钟前
flask 入门 token, headers,cookie
后端·python·flask
毕设源码-朱学姐42 分钟前
【开题答辩全过程】以 基于springboot的日用药品仓库管理系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
梦想是成为算法高手1 小时前
带你从入门到精通——知识图谱(一. 知识图谱入门)
人工智能·pytorch·python·深度学习·神经网络·知识图谱
用什么都重名1 小时前
Conda 虚拟环境安装配置路径详解
windows·python·conda
阿也在北京1 小时前
基于Neo4j和TuGraph的知识图谱与问答系统搭建——胡歌的导演演员人际圈
python·阿里云·知识图谱·neo4j
计算机徐师兄1 小时前
Python基于知识图谱的胆囊炎医疗问答系统(附源码,文档说明)
python·知识图谱·胆囊炎医疗问答系统·python胆囊炎医疗问答系统·知识图谱的胆囊炎医疗问答系统·python知识图谱·医疗问答系统
北冥码鲲1 小时前
【保姆级教程】从零入手:Python + Neo4j 构建你的第一个知识图谱
python·知识图谱·neo4j
B站计算机毕业设计超人1 小时前
计算机毕业设计Python+大模型音乐推荐系统 音乐数据分析 音乐可视化 音乐爬虫 知识图谱 大数据毕业设计
人工智能·hadoop·爬虫·python·数据分析·知识图谱·课程设计