改善测试结果可视化:使用 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测试运行器提供了更好的输出和可视化效果。它使得测试结果更加易读、易懂,有助于开发者更快地定位和解决问题。实用的插件。

相关推荐
陈天伟教授6 小时前
人工智能训练师认证教程(2)Python os入门教程
前端·数据库·python
2301_764441337 小时前
Aella Science Dataset Explorer 部署教程笔记
笔记·python·全文检索
爱笑的眼睛117 小时前
GraphQL:从数据查询到应用架构的范式演进
java·人工智能·python·ai
BoBoZz197 小时前
ExtractSelection 选择和提取数据集中的特定点,以及如何反转该选择
python·vtk·图形渲染·图形处理
liwulin05067 小时前
【PYTHON-YOLOV8N】如何自定义数据集
开发语言·python·yolo
木头左7 小时前
LSTM量化交易策略中时间序列预测的关键输入参数分析与Python实现
人工智能·python·lstm
电子硬件笔记8 小时前
Python语言编程导论第七章 数据结构
开发语言·数据结构·python
HyperAI超神经8 小时前
【vLLM 学习】Prithvi Geospatial Mae
人工智能·python·深度学习·学习·大语言模型·gpu·vllm
逻极8 小时前
Python MySQL防SQL注入实战:从字符串拼接的坑到参数化查询的救赎
python·mysql·安全·sql注入