我有一个相当复杂的系统,我想用python测试。我的测试代码将使用我已编写的Python模块与系统交互。然而,关于测试框架,有一些我无法弄清楚的事情。我还没有选择一个,但显然我觉得我被unittest
指示。
将参数传递给测试。我需要将一个特定的ID传递给我的测试代码的许多不同部分,具体取决于我正在测试的系统的哪个部分。 unittest是否提供此功能?换句话说,现在我只有一个测试脚本,我这样运行:./testscript.py 123 win 32
如何在测试框架中类似地传递相同的参数?
unittest
提供setUp()
和tearDown()
方法,但在每个测试方法之前/之后调用它们。如何在TestCase
的整个测试之前/之后调用函数?
也许unittest
不是我真正想要使用的?
答案 0 :(得分:1)
至于#2,setUpClass()
and tearDownClass()
似乎就是为此而设计的。该文档甚至显示了将其用于createExpensiveConnectionObject()
的示例。
答案 1 :(得分:1)
我使用tox在多个配置中运行我的测试。如果没有可选模块,我的一些单元测试会跳过某些测试,这意味着我需要检查以确保模块检测代码有效。 Tox没有简单的方法来指定任何命令行参数,因此最简单的解决方案是通过环境变量。
F.C.指向python, unittest: is there a way to pass command line options to the app的指针适用于您决定额外参数的方法。