生成nunit3测试结果xml输出的pytest插件

pytest-nunit的Python项目详细描述


Build statusPyPI versionPython versionsPyPI download month

用于生成nunit3测试结果xml输出的pytest插件

此插件位于beta中。

命令行选项

--nunit-xml

一个字符串值,用于设置生成的XML文件的文件名。

参数接受输出文件的路径,可以是相对路径,也可以是绝对路径。

--nunit-prefix

一个字符串值,作为所有测试用例名称的前缀。

默认为空字符串。

INI选项

nunit_show_username

在测试运行属性中包含系统用户名的布尔值。

默认为false

nunit_show_user_domain

在测试运行属性中包含系统用户域的布尔值。

默认为false

nunit_suite_name

(已弃用,忽略值)

设置测试套件名称的字符串值。

默认为'pytest'

nunit_attach_on

枚举以控制在使用add_nunit_attachment时是否在所有测试用例上设置了attachments属性。

可以是:

  • any-包括所有结果的测试附件(默认值
  • pass-仅为通过的测试用例包含测试附件
  • fail-仅包含失败测试用例的测试附件

固定装置

此插件提供了以下设备。

record_nunit_property

调用record_nunit_property(key:str,value:str)将导致相关节点的属性标记被添加到测试用例中。

deftest_basic(record_nunit_property):record_nunit_property("test","value")assert1==1

add_nunit_attachment

通过调用带有文件路径和说明的add_nunit_attachment(path:str,description:str)函数,将附件添加到节点测试用例。

deftest_attachment(add_nunit_attachment):pth=os.path.join(os.path.abspath(os.path.dirname(__file__)),'fixture.gif')add_nunit_attachment(path,"peanut butter jelly time")assert1==1

与azure管道一起使用

将以下步骤添加到生成作业以将结果发布到azure管道:

-script:"pipinstallpytest-nunit"-script:|python -m pytest tests -v --nunit-xml=test-results.xmlcontinueOnError:true-task:PublishTestResults@2inputs:testResultsFormat:NUnittestResultsFiles:'**/test-results.xml'

跳过的测试

跳过的测试将在结果中包含reason属性(如果提供)。

https://github.com/pytest-dev/pytest-nunit/raw/master/docs/source/_static/screen_skips.png

附件

使用add_nunit_attachmentfixture将呈现测试控制台内“附件”选项卡中的任何附件:

https://github.com/pytest-dev/pytest-nunit/raw/master/docs/source/_static/screen_attachments.png

故障和故障

任何失败的测试,无论是xpass还是xfail,都会有错误输出和比较,以及堆栈跟踪中的失败行。

https://github.com/pytest-dev/pytest-nunit/raw/master/docs/source/_static/screen_fails.png

与其他插件的兼容性

x距离

使用-f运行时,请确保添加到pytest配置文件(setup.cfg etc) looponfailroots=testdir排除监视XML报表文件的更改。

检查looponfails

历史记录

0.5.2(2019年8月30日)

  • 错误修复-从cdata输出中的stdout feed转义选项卡式unicode字符

0.5.1(2019年8月30日)

  • 错误修复-修复了可能发现但从未执行的测试崩溃的原因

0.5.0(2019年8月30日)

  • 节点(函数)的docstrings被设置为testcase元素的标签(由@mikeattara贡献)
  • pytest-k关键字过滤器被添加到测试运行过滤器元素的name下。
  • pytest-m标记过滤器被添加到测试运行过滤器元素的namespace下。
  • 任何路径筛选器都将添加到测试运行筛选器元素的test下。
  • 包含测试的每个python模块现在都是一个单独的test-suite元素,而不是有一个大型套件
  • 模块的docstrings被设置为testsuite元素的标签

0.4.0(2019年8月28日)

  • 添加了用户域(由@williano贡献)
  • 添加了xdist执行的测试和帮助(由@mei li贡献)
  • 生成架构时动态使用关键字列表以避免保留字冲突(由@gerhardtdatsomor贡献)
  • 将方法名、类名和模块名添加到输出中(由@adekanyetomie贡献)
  • 向运行时输出添加了locale和uiculture属性(由@terrameijar贡献)
  • 添加了nunit_attach_onini选项来控制附件何时包含在测试用例中。

0.3.0(2019年7月15日)

  • 添加了--nunit-prefix选项。

0.2.1(2019年7月15日)

  • 首次稳定释放

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Docker&SeleniumJava:无法在Docker容器上运行的chrome浏览器中上载图像/文件   在python中运行java命令   Java垃圾收集器异常行为   java java是否根据底层操作系统执行字节码级优化?   java是否可以休眠自定义查询返回映射而不是列表?   java Spring引导RabbitMQ接收器Jackson反序列化到POJO   apache flex在ActionScript3中创建对象相等“HashMap”作为java HashMap   java如何在Eclipse集成中切换JProfiler启动器   缓存JSP页面结果的java最佳实践?   java集成jaxb绑定文件,使用CXF生成基于WSDL的客户端   java为什么在上传操作结束之前,客户端没有检测到HttpServletResponse的PrintWriter内容?   java在接口内创建类和在类内创建接口有什么用   java向文件写入错误Android Studio   java合并多个RealmList并对结果列表排序?   谷歌API视觉java。lang.NoSuchMethodError   java如何使用逗号分别存储每个值,然后将它们存储到单独的数组中?