问题标签 [python-unittest]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 即使断言失败,Pyunit 也会运行所有测试
我有一个简单的测试,如下所示:
我执行此测试的方式如下:
我得到的是,由于第二个断言失败,测试停止,我需要运行测试直到结束,并在出现断言错误时得到它们。
这背后的想法是,我将使用 crontab 在我的服务器上每 6 小时运行一次此测试,并且我打算发送一封电子邮件,其中包含测试发现的所有错误案例。
干杯!
python - 如何在 python 模块中使用相同的公共 API 对每个类进行单元测试?
我有一个模块可以解析不同的文件格式,如 CSV、XLS、HTML 等
。不同的格式包含完全相同的信息,所以我制作了不同的类来解析不同的文件类型。这些类具有完全相同的公共 API,并且显然具有相同的基类,如下所示:
一次用相同的值对每个类进行单元测试是个好主意吗?我一直在这样做:
并以这种方式定义每个单元测试:
这样做可以吗?如果是,如何使用相同的 TestCases 一次对所有这些进行单元测试
所以我想这样写单元测试:
适用于每一堂课。可能吗 ?
python - Pyunit 运行测试和构建报告
我在一个文件 test_file.py 下有一组测试。我可以像这样从控制台正常运行它:
当测试用例失败时,这会输出一个小的回溯。所以我需要做的正是。
- 定期运行测试,比如说在 crontab 上(我知道怎么做)
- 每次运行后发送电子邮件报告,为了做到这一点,我需要知道所有测试是否正常,以防其中一些失败,哪些失败以及错误是什么,就像正常的 pyunit 输出一样。
正如我上面所说,我知道如何做 cron 部分,我知道如何运行测试,但是我需要什么或者我能做些什么来完成第 2 项?
也许是一个手动运行每个测试并收集结果然后发送电子邮件的脚本?
非常感谢 !
python - 断言通过时的Python unittest调用函数
当测试中的断言通过时,我找不到 do_something() 的方法。例如:
如果断言失败,该测试将打印“不匹配”,但在这种情况下不会,所以我试图在 self.assertEqual() 成功时调用一个函数或打印一些东西,请问有什么想法吗?
谢谢
python - Python unittest 报告通过测试
您好,我在“test.py”下有一个如下测试模块:
这很好用,但我需要一种方法来打印通过的测试,例如我可以将输出打印到控制台:
现在变了,我可以在 self.assertEqual() 之后添加一个打印语句,这将是一个通过的测试,我可以打印它,但我需要从不同的模块运行测试,比如说“test_reporter.py " 我有这样的东西:
在这一点上,结果是我建立报告的时候。
所以欢迎任何建议
谢谢 !!
python - 如何在测试用例中一次运行所有这些方法并使用 HTMLTestRunner 生成报告?
我有这样的 Python Unittest:
我HTMLTestRunner
用来生成报告。这段代码一切正常,除了我想要报告类中的每个方法AddEmployer
。我只能得到 openURL 方法的报告,因为我已经调用了:
我希望类AddEmployer
的每个方法在同一个驱动程序上同时执行。我会尝试调用suite.addTest
每种方法,但它不起作用。我怎样才能做到这一点?
python - 如何用鼻子测试命令行脚本?
我在“bin”目录中创建了一个带有一些命令行脚本的 Python 库(这样在使用setup.py
安装时会将其安装到“bin”中pip
)。由于这不是 Python 模块,我无法弄清楚如何用鼻子测试它。
如何使用nose
/测试属于库的命令行脚本unittest
?
python - 是否可以在 python 的单元测试中跳过 setUp() 进行特定测试?
当我创建一个unittest.TestCase
时,我可以定义一个setUp()
函数,该函数将在该测试用例中的每个测试之前运行。是否可以跳过setUp()
单个特定测试?
想要跳过setUp()
给定的测试可能不是一个好习惯。我对单元测试相当陌生,欢迎任何有关该主题的建议。
python - 从超级调用所有子类方法?
我目前正在为我公司的构建脚本实施一些单元测试。为了消除臃肿并使其更容易实现新测试,我让我的所有测试类都继承自一个名为的自定义子类,该子类BasicTest
继承自 PyUnit 的 TestCase。
目前所有测试都使用两个函数BasicTest
:构造函数(尽管它显然可能在将来被覆盖)和runTest()
方法,如果没有传入值,超级构造函数使用的默认方法名称(例如BasicTest()
,将创建一个测试这将runTest()
在被调用时执行该方法,而BasicTest('Foo')
将使用该Foo()
方法)。
我想runTest()
从调用它的继承对象中简单地运行所有可能的测试。但是,由于runTest()
仅在子类中定义BasicTest
并由子类继承,我正在寻找一种方法来动态地从父类中调用所有子类的方法。我知道这违反了面向对象编程的规则,但据我所知,Python 从一开始就不是遵循规则的:)
为清楚起见,以下说明了我的意图:
我想runTest()
从子类对象中调用并且只处理该对象的方法。假设SubclassTest()
有方法TestParse()
和TestExec()
. 我想要这样:
运行TestParse()
and TestExec()
,但我希望在不被覆盖的情况下runTest()
定义和继承该方法。BasicTest
python - 以漂亮的表格形式显示 python unittest 结果
我正在编写一个 Pythonic 工具来验证某个系统的正确性。每个验证都编写为 Python unittest
,报告如下所示:
在我看来,这种格式很难阅读,尤其是对于非 Python 爱好者。是否有任何报告生成器可以以漂亮的表格形式生成报告,例如:
澄清测试套件在远程终端上运行,所以我更喜欢命令行报告工具。