pytest-sugar 执行过程中显示进度条的脚本分享

Pytest-sugar是一款用来改善控制台显示的插件,增加了进度条显示,使得在用例执行过程中可以看到进度条,而且进度条是根据用例是否通过标注不同颜色,用例通过标记为绿色,用例失败则标记为红色,非常醒目。
首先使用如下命令安装pytest-sugar插件

pip install pytest-sugar

然后准备比如如下测试脚本。

def test_1():
    print("in test_1")
    assert 1==1
def test_2():
    print("in test_2")
    assert 1==1
def test_3():
    print("in test_3")
    assert 1==1
def test_4():
    print("in test_4")
    assert 1==1
def test_5():
    print("in test_5")
    assert 1==1
def test_6():
    print("in test_6")
    assert 1==1

执行pytest命令结果如下,可以发现在test_demo.py 后面跟着打印了若干个对号,同时又一段条形图,在控制台根据用例是否通过显示为绿色或者红色。

(demo-HCIhX0Hq) E:\demo>pytest
Test session starts (platform: win32, Python 3.7.9, pytest 7.2.0, pytest-sugar 0.9.6)
benchmark: 4.0.0 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
rootdir: E:\demo, configfile: pytest.ini
plugins: allure-pytest-2.12.0, assume-2.4.3, attrib-0.1.3, benchmark-4.0.0, rerunfailures-10.2, sugar-0.9.6
collecting ...
 test_demo.py ✓✓✓✓✓✓                         100% ██████████

Results (0.10s):
       6 passed

(demo-HCIhX0Hq) E:\demo>

当安装了pytest-sugar后默认情况下就是开启的,若不想使用pytest-sugar了可以直接卸载或者使用如下命令,也可以禁止使用pytest-sugar。如下所示。

(demo-HCIhX0Hq) E:\demo>pytest -p no:sugar
=================== test session starts ===================
platform win32 -- Python 3.7.9, pytest-7.2.0, pluggy-1.0.0
benchmark: 4.0.0 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
rootdir: E:\demo, configfile: pytest.ini
plugins: allure-pytest-2.12.0, assume-2.4.3, attrib-0.1.3, benchmark-4.0.0, rerunfailures-10.2
collected 6 items

test_demo.py ......                                  [100%]

==================== 6 passed in 0.09s ====================

(demo-HCIhX0Hq) E:\demo>

补充知识:

pytest-sugar使用

无他,主要是安装了pytest-sugar之后,使用pytest运行代码,风格依然没有变化,在此记录一下

1. 安装pytest-sugar

pip install pytest-sugar

2. 运行

安装完成后,通过pytest运行代码,sugar不生效,查看pytest-sugar官方文档: https://pypi.org/project/pytest-sugar/

发现pytest-sugar需要有其他依赖(共3个):

  • Python 2.7, 3.4 or newer
  • pytest2.9.0 or newer
  • pytest-xdist 1.14 or above if you want the progress bar to work while running tests in parallel

我运行不生效的原因是:没有安装pytest-xdist,安装后,运行生效

3.不使用sugar用法:

py.test -p no:sugar

到此这篇关于pytest-sugar 执行过程中显示进度条的文章就介绍到这了,更多相关pytest sugar 显示进度条内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解pytest实现mark标记功能详细介绍

    mark标记 ​在实际工作中,我们要写的自动化用例会比较多,也不会都放在一个py文件中,如果有几十个py文件,上百个方法,而我们只想运行当中部分的用例时怎么办? ​pytest提供了一个非常好用的mark功能,可以给测试用例打上各种各样的标签,运行用例时可以指定运行某个标签.mark功能作用就是灵活的管理和运行测试用例. ​标签既可以打到方法上,也可以打到类上,标记的两种方式: 直接标记类或方法或函数:@pytest.mark.标签名 类属性:pytestmark = [pytest.mark.

  • 详解Pytest测试用例的执行方法

    pytest概述 pytest是一个非常成熟的全功能的Python测试框架,主要特点有以下几点: 1.简单灵活,容易上手,文档丰富: 2.支持参数化,可以细粒度地控制要测试的测试用例: 3.能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试.接口自动化测试(pytest+requests); 4.pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如pytest-selenium(集成selenium).pytest-html(完美html

  • pytest官方文档解读之安装和使用插件的方法

    目录 一.pip 安装 二.查找可用插件 三.在测试模块或者conftest文件中加载指定插件 四.查看被激活的插件 五.注销插件 本节讨论安装和使用第三方插件.关于编写自己的插件,我们下一章继续. 一.pip 安装 就像安装一些其他第三方库一样,使用pip也可以很容易地安装第三方插件,pytest-NAME这是你要安装的插件名称: # 安装 pip install pytest-NAME #卸载 pip uninstall pytest-NAME 比如我这里安装一个pytest-xdist的插

  • Pytest执行unittest TestSuite(测试套件)的实现方法

    前言 TestSuite一直是unittest的灵活与精髓之处,在繁多的测试用例中,可以任意挑选和组合各种用例集,比如smoke用例集.level1用例集.webtest用例集.bug回归用例集等等,当然这些TestSuite需要我们提前定义好,并把用例加载进去.Pytest采取的是完全不同的用例组织和运行方式.用例的运行主要基于名称匹配:组织则基于用例目录,用例命名格式及用例mark标签, 这种方式省去了麻烦的提前定义TestSuite及加载用例的过程,执行时通过路径/用例名格式/不同的标签组

  • Python pytest装饰器总结(实例详解)

    几个常用装饰器 pytest.ini 配置文件 例子: [pytest] addopts = -v -s --html=py_test/scripts/report/report.html -p no:warnings --reruns=10 testpaths = ./py_test/scripts python_files= test_rerun.py python_classes = Test* python_function = test* xfail_strict = true add

  • Pytest使用logging模块写日志的实例详解

    logging是python语言中的一个日志模块,专门用来写日志的,日志级别通常分为debug.info.warning.error.critical几个级别,一般情况下,默认的日志级别为warning,在调试或者测试阶段,日志级别可以设置为debug或者info,当在生产环境上线后日志级别一般为warning或者error级别,下面就快速体验一下logging模块写日志的用法,这里创建一个python文件,比如demo.py 文件,然后在即可在python文件中使用logging写日志了,比如

  • python单测框架之pytest常见用法

    目录 单测框架的作用 pytest简介 pytest默认规则 pytest的运行方式 主函数模式 命令行模式 参数详解 读取pytest.ini配置文件运行 分组执行 忽略执行 单测框架的作用 测试发现:从多个文件中寻找测试用例. 测试执行:按照一定顺序去执行并且生成结果. 测试断言:判断最终结果与实际结果的差异. 测试报告:统计测试进度.耗时.通过率,生成测试报告. pytest简介 pytest是python的单测框架,使用灵活,插件丰富,以下是pytest常用的插件 pytest pyte

  • pytest测试框架+allure超详细教程

    目录 1.测试识别和运行 2.参数化 3.测试报告美化-allure 1.测试识别和运行 文件识别: 在给定的目录中,搜索所有test_.py或者_test.py文件 用例识别: Test*类包含的所有test_*的方法(测试类不能有__init__方法) 不在类中的所有test_*方法 pytest也能执行unit test写的用例和方法 运行方式1.pycharm页面修改默认的测试运行方式settings页面,输入pytest,修改Default test runner 2.右键执行pyth

  • pytest使用@pytest.mark.parametrize()实现参数化的示例代码

    目录 1.方法详情: 2.使用方法 2.1.一个列表中一个参数多个值 2.2.多参数多值 2.3.多个参数混合使用 2.4.传入字典数据 1.方法详情: parametrize(argnames,argvalues,indirect=False,ids=None,scope=None)常用参数:argnames:参数名argvalues:参数值(可以为list和tuple,或者字典列表,字典元组等),参数值有N个,用例就会执行N次. 2.使用方法 2.1.一个列表中一个参数多个值 示例代码: d

  • Ajax在请求过程中显示进度的简单实现

    Ajax在Web应用中使用得越来越频繁.在进行Ajax调用过程中一般都具有这样的做法:显示一个GIF图片动画表明后台正在工作,同时阻止用户操作本页面(比如Ajax请求通过某个按钮触发,用户不能频繁点击该按钮产生多个并发Ajax请求):调用完成后,图片消失,当前页面运行重新编辑.以下图为例,页面中通过一个Load链接以Ajax请求的方式加载数据(左).当用户点击该链接之后,Ajax请求开始,GIF图片显示"Loading"状态,同时当前页面被"罩住"防止用户继续点击L

  • Python使用progressbar模块实现的显示进度条功能

    本文实例讲述了Python使用progressbar模块实现的显示进度条功能.分享给大家供大家参考,具体如下: progressbar安装: pip install progressbar 用法一 # -*- coding=utf-8 -*- import time from progressbar import * total = 1000 def dosomework(): time.sleep(0.01) progress = ProgressBar() for i in progress

  • 使用AJAX实现Web页面进度条的实例分享

    在应用程序的安装和下载过程中,进度条的使用已经是非常普遍了.进度条可以用来表识项目的完成进度,可以用百分比或数字表示,可以水平放置.利用Ajax技术创建进度条,功能显得更加强大的快捷. 现在创建一个实例,以演示使用Ajax技术实现进度条.该实例同样可以分为客户端代码和服务端代码.   1,服务端代码    服务端代码主要实现一句客户端的请求信息,返回相应的百分比数字.打开记事本,输入下列代码: <%@ page contentType="text/html; charset=gb2312&

  • ant design中upload组件上传大文件,显示进度条进度的实例

    Upload组件是自带上传进度,但是样式调起来很麻烦,我们要做的就是自定义一个 首先页面要引入组件 Upload, Progress uploadAttachmentsProps = { action: `/api/upload`, showUploadList: false, // 这里关闭自带的列表 beforeUpload: (info) => { /* 上传前的钩子,可以用来判断类型,和大小 if ('是否符合类型') { return false } if ('是否符合类型') { r

  • Python实现实时显示进度条的6种方法

    目录 第1种:普通进度条 第2种:带时间的普通进度条 第3种:tqdm库 第4种: alive_progress库 第5种:PySimpleGUI库 第6种:progressbar库 相信大家对进度条一定不陌生了,比如在我们安装python库的时候可以看到下载的进度,此外在下载文件时也可以看到类似的进度条,比如下图这种: 应用场景:下载文件.任务计时等 今天辰哥就给大家分享Python的6种不同的实现实时显示处理进度的方式,文中每一种方式都附带一个案例,并提供官方文档,供大家学习,自定义去修改.

  • Python实现实时显示进度条的六种方法

    目录 第1种:普通进度条 第2种:带时间的普通进度条 第3种:tqdm库 第4种: alive_progress库 第5种:PySimpleGUI库 第6种:progressbar库 总结 相信大家对进度条一定不陌生了,比如在我们安装python库的时候可以看到下载的进度,此外在下载文件时也可以看到类似的进度条,比如下图这种: 应用场景:下载文件.任务计时等 今天辰哥就给大家分享Python的6种不同的实现实时显示处理进度的方式,文中每一种方式都附带一个案例,并提供官方文档,供大家学习,自定义去

  • struts2实现文件上传显示进度条效果

    一. struts2读取进度原理分析(作为草稿存了好久,刚刚发布出来......) 1. 在strut2中控制文件上传信息的类是实现MultiPartRequest接口的JakartaMultiPartRequest 其实第一次看到源文件时我打了个退堂鼓,因为觉得内容太长了,不想看.冷静下来将思路理顺,将分开的各个方法还原到一个方方中中,发现还是很好理解的: @Override public void parse(HttpServletRequest request, String saveDi

  • Struts2实现文件上传时显示进度条功能

    最近在做一个资源共享的项目中,采用了Struts2.1.8+Spring2.5.6+hibernate3.32的框架整合方式进行开发.在文件上传这块,因为需要实现文件上传时显示进度条的功能,所以尝试了一下.怕以后忘记,先贴出来分享下. 要在上传文件时能显示进度条,首先需要实时的获知web服务端接收了多少字节,以及文件总大小,这里我们在页面上使用AJAX技术每一秒向服务器发送一次请求来获得需要的实时上传信息.但是当我们使用struts2后怎么在服务端获得实时的上传大小呢?这里需要用到commons

  • Android使用AsyncTask下载图片并显示进度条功能

    在Android中实现异步任务机制有两种方式,Handler和AsyncTask.这篇文章给大家介绍Android使用AsyncTask下载图片并显示进度条功能. AsyncTask下载图片并显示下载进度,异步类AsyncTask配合进度条,简练! public class AsyncTaskActivity2 extends Activity { private Button btnDown;//图片框 private ImageView ivImage;//图片URL private sta

  • Vue项目页面跳转时浏览器窗口上方显示进度条功能

    在vue项目中,为了减少首屏加载的时间,通常会开启路由的懒加载.路由懒加载配合gizp确实能帮助我们大大的加快首屏的加载时间. 然而,路由懒加载会使得我们在第一次打开一个新页面的时候,会有一个加载时间.如果在这个时候我们没有一个提示的话,给人的感觉会是好像我点了页面跳转但是没反应.所以,这个时候我们可以加一个进度条来告知用户. 具体实现,我们使用NProgress这个滚动条效果插件. 1.安装: cnpm install --save nprogress 2.在main.js中引入: impor

随机推荐