以漂亮的表格形式显示python单元测试结果 [英] Display python unittest results in nice, tabular form

查看:287
本文介绍了以漂亮的表格形式显示python单元测试结果的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在编写一个Pythonic工具,该工具可验证某个系统的正确性.每次验证均以Python unittest 编写,该报告如下所示:

I am writing a Pythonic tool which validates the correctness of a certain system. Each validation is written as a Python unittest, and the report looks like:

test_exclude_list_not_empty (__main__.TestRepoLists)
Assert the the exclude list is not empty ... ok
test_include_list_not_empty (__main__.TestRepoLists)
Assert the the include list is not empty ... ok
test_repo_list_not_empty (__main__.TestRepoLists)
Assert the the repo list is not empty ... ok

在我看来,这种格式很难阅读,特别是对于非Python专家而言.是否有任何报告生成器都可以以表格形式生成报告,例如:

In my opinion, this format is hard to read, especially for non-Pythonists. Is there any report generator that can generate a report in a nice, tabular form, e.g.:

+----------------------------------------------------------------+-----------+
| Test                                                           |  Status   |
+----------------------------------------------------------------+-----------+
| Assert the the exclude list is not empty                       |  OK       |
| Assert the the include list is not empty                       |  OK       |
| Assert the the repo list is not empty                          |  OK       |
| All the items in the include list should be in the repo list   |  OK       |
+----------------------------------------------------------------+-----------+

说明该测试套件在远程终端上运行,因此我更喜欢命令行报告工具.

Clarification The test suite runs on a remote terminal, so I prefer command line reporting tools.

推荐答案

这并不是您要问的,但是有几种方法可以在其中获得可读的测试输出:

This is not exactly what you are asking, but there are several options for having a readable test output there:

  • HTMLTestRunner 以表格形式生成易于使用的HTML测试报告. 此处是示例报告.
  • nose-html-output 插件鼻子.readthedocs.org/en/latest/"rel =" noreferrer>鼻子测试跑步者
  • unittest-xml-reporting -具有JUnit的基于PyUnit的测试运行器XML报告
  • 带有--with-xunit选项的鼻子将生成易于阅读和转换的junit xml样式报告
  • HTMLTestRunner generates easy to use HTML test reports in a tabular form. Here's a sample report.
  • nose-html-output plugin for nose test runner
  • unittest-xml-reporting - PyUnit-based test runner with JUnit like XML reporting
  • nose with --with-xunit option will produce junit xml style reports that are easy to read and convert

另请参阅:

  • How to produce html unit test output in Python?
  • Python Unittest Reporting in HTML
  • unittest colored output (coloring the output can make results readable too)

无论如何,如果您想在控制台中以表格形式查看测试结果,我认为一个好主意是编写您的

If you want to see test results in a tabular form in the console anyway, I think that a good idea would be to write your own nose plugin or test runner based on unittest.TestProgram as it was done in HTMLTestRunner.

希望有帮助.

这篇关于以漂亮的表格形式显示python单元测试结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆