相关疑难解决方法(0)

如何发现动态生成的测试用例?

这是我前一个问题的后续行动.

在上一个问题中,探索了一些方法来实现对整个函数族基本相同的测试,确保测试不会在第一个失败的函数处停止.

我首选的解决方案是使用元类将测试动态插入unittest.TestCase.不幸的是,鼻子不会选择这个,因为鼻子静态扫描测​​试用例.

如何发现并运行这样的TestCase?有关TestCase的示例,请参阅此处.

python unit-testing nose

6
推荐指数
1
解决办法
2280
查看次数

Python unittest:在不同模块中具有重复代码的外部函数

假设我有一个ServA用python编写的Web服务,我想编写一些单元测试.

ServA 做了几件事(有不同的观点),但所有的观点产生了一个类似的请求日志.

这些测试应该检查ServA不同情况下的日志,因此这些单元测试有很多重复的代码(日志的结构总是相同的).

我的想法是编写一个通用函数来避免重复代码,我发现了另一个问题,解决了在unittest类中创建泛型方法的问题.

但是,如果我有另一个Web服务ServB和另一组测试,我需要做同样的事情呢?

有没有办法重用泛型函数?

我应该简单地使用方法创建一个测试类来检查日志,如下所示:

class MyMetaTestClass(unittest.TestCase):
    def check_logs(self, log_list, **kwargs):
       #several self.assertEqual
Run Code Online (Sandbox Code Playgroud)

然后ServA和ServB的测试继承这个类,如下所示:

class TestServA(MyMetaTestClass):
    def test_log1(self):
       logs = extract_the_logs()
       self.check_logs(logs, log_1=1, log2='foo')
Run Code Online (Sandbox Code Playgroud)

有另一种(更好的)方式吗?

python unit-testing

1
推荐指数
1
解决办法
818
查看次数

标签 统计

python ×2

unit-testing ×2

nose ×1