首页 > 其他分享 >【pytest】失败用例,桌面截图

【pytest】失败用例,桌面截图

时间:2024-07-01 20:52:38浏览次数:1  
标签:binary 截图 rep 用例 pytest image PNG

@pytest.hookimpl(tryfirst=True, hookwrapper=True)
def pytest_runtest_makereport(item, call):
    # execute all other hooks to obtain the report object
    outcome = yield
    rep = outcome.get_result()  # rep可以拿到用例的执行结果详情

    if rep.when == "call" and rep.failed:
        im = ImageGrab.grab()

        # 使用 io.BytesIO 来捕获截图的二进制数据(PNG 格式)
        binary_image = io.BytesIO()
        im.save(binary_image, format='PNG')

        # 将字节流的位置重置到开头,以便我们可以读取数据
        binary_image.seek(0)

        # 现在 binary_image.read() 将返回截图的二进制数据(PNG 格式)
        png_binary_data = binary_image.read()
     allure.attach(png_binary_data, "异常截图", allure.attachment_type.PNG)

 

标签:binary,截图,rep,用例,pytest,image,PNG
From: https://www.cnblogs.com/liu-Gray/p/18278835

相关文章

  • pytest测试框架pytest-html插件生成HTML格式测试报告
    Pytest提供了丰富的插件来扩展其功能,pytest-html插件帮助我们生成HTML格式的测试报告,为我们提供直观、有效的测试结果展示。为了使用pytest-html,需要满足以下条件:·Python3.6或更高版本pytest-html安装使用pip命令安装:pipinstallpytest-html(安装在pytest工程所......
  • VBox和HBox的用法及用例
    JavaFX中的VBox和HBox是两种常用的布局组件,分别用于垂直和水平布局。它们继承自Pane类,可以包含多个子节点,并且子节点会按照指定的方向排列。VBox(垂直框)VBox组件按照垂直方向排列子节点,子节点上下排列。基本用法:使用getChildren().add(node)方法添加子节点。可以通......
  • MySQL----彻底卸载(附带每一步截图)
    停止mysql服务打开任务管理器,点击服务,找到mysql服务,这里我的是MySQL57,找到mysql服务后选中,点击右键选择停止服务删除mysql服务win+R打开命令框,输入cmd打开cmd控制台或者电脑左下角输入cmd搜索,选择管理员身份进入cmd控制台(否则会拒绝访问),弹出是否允许该应用对设备进行修......
  • 测试:设计测试用例
    文章目录概念设计正交法判定表法本篇总结的是测试用例的概念和设计方法概念测试用例是为了实施测试而向被测试的系统提供的一组集合,这个集合中包含的内容有测试环境,操作步骤,测试数据,预期结果等要素在测试用例的设计中,一个原则是,测试用例要对于预期的结果做出定义,......
  • pytest常用参数化方法详解
            最近在学习python的pytest自动化框架,对于pytest的参数化相关信息进行一个记录,信息可能不全,有问题可以私信指正。pytest运行参数:-s: 其作⽤是可以让打印的内容输出显示在终端中,或者可以在终端中与⽤例中的输⼊操作进⾏交互-v:表示详细输出更详细的输出,包......
  • 【pytest】 用例运行时间统计
    使用 --duration 参数:pytest 提供了一个 --duration 参数,它可以在测试运行后显示最慢的N个测试用例的运行时间。例如,要显示最慢的10个测试用例的运行时间,你可以使用以下命令: pytest--duration=10 使用 pytest-benchmark 插件:虽然 pytest-benchmark ......
  • UML:用例图的扩展点特性详解
    引言UML(统一建模语言)用例图是一种常用的系统建模工具,它可以帮助我们直观地表示系统的功能和用户的交互。这里将重点讲解UML用例图中的扩展点(ExtensionPoint)特性,通过具体示例深入理解这一概念。什么是扩展点?扩展点是UML用例图中的一个重要概念,它允许我们在用例的基础上添......
  • pytest.mark.parametrize 传参
    pytest.mark.parametrize是pytest用来参数化测试的一个装饰器,它允许你为测试函数或测试类提供多组参数list,这样就可以使用每组参数执行测试函数或测试类,实现参数化驱动,接收的是元组集1.pytest.mark.parametrize可接收三个参数,常用的有两个,第一个是函数中需要引用的参数名,第二......
  • HyperSnap软件下载-HyperSnap截图软件下载附加详细安装步骤
    不同领域的应用证明了绘图编辑器中添加了新的特效-不同类型的标注、弧线、关闭和打开的折线,在需要的时候,能够直接切换到“直接在图形上绘制”模式,在编辑小的图标、针对每个像素数的时候该功能是非常有用的,然后针对大的图片来说,我们建议使用新的形状绘图模式。根据大数据结果......
  • Rust中 测试用例编写
    //注定会断言失败的代码:断言1和2会不会相等#[cfg(test)]modtests{usesuper::*;#[test]fnone_result(){assert_eq!(1,2);}}注意点 1.编程环境:vscode+rust-analyzer(插件式)2.方法上添加标签(Attribute):#[cfg(test)]3.断言语句:asser......