Pytest插件,用于检查您的TestCase类在setUp、tearDown等中调用super。
项目描述
未维护(2022-12-07)
由于此包从未流行,我停止了维护。我认为使用lint规则来强制在测试用例中调用super()会更好。
Pytest插件,用于检查您的TestCase类在setUp、tearDown等中调用super。
功能
此插件检查测试套件中的所有TestCase类,以确保它们的setUp、tearDown、setUpClass、tearDownClass和setUpTestData(Django扩展)方法都调用了super()。当您在特定基类中对这些方法有扩展,并且由于不小心遗漏了super()而导致出现微妙的bug时,您可能对此很关心。
关于
我在为YPlan的Django大项目工作时,在一个闭源Nose插件中开发了这一功能。我们对Django测试类进行了一些定制增强和修复,但某些TestCase
类没有在例如setUp
中调用super()
,这导致测试以相当微妙的方式失败或错误地通过。由于Django的setUp
等做了不要求调用super()
的魔法,这个问题变得更加严重。我们的解决方案是确保每个TestCase
在这些方法中始终调用super()
。这是该插件的Pytest端口。
安装
使用以下命令安装
python -m pip install pytest-super-check
支持Python 3.7至3.11。
正在测试Django项目?查看我的书籍加速您的Django测试,其中涵盖了编写更快、更精确测试的多种方法。
用法
Pytest会自动查找并使用插件。如果发现任何具有setUp
等方法的unittest.TestCase
子类,则测试发现将会失败。
您可以通过将选项-p no:super_check
传递给pytest
来禁用插件。
项目详情
关闭
pytest-super-check-2.6.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3e2704a79c11399c6f50457751d6eda973ba35f5e408451c59a8bfd529545d1f |
|
MD5 | f57f1f1a16ac9ef00e11b36fd45a2130 |
|
BLAKE2b-256 | deeb89c141363d567b97851039063ee1b70f0ac4d97103aa7e044fb020279c94 |
关闭
pytest_super_check-2.6.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3de007907a4da84732bdc5a19e01d50346105c98d89fd36184b743f5b48b77ca |
|
MD5 | e0d0447da1a3c5745c1494b49cfbb061 |
|
BLAKE2b-256 | fc9c4472491d48e7bf4698dcc41480db36ed51fcdaf4af634f740f0781d42d69 |