用unittest和mock测试复杂结构的零件

2024-10-02 02:26:04 发布

您现在位置:Python中文网/ 问答频道 /正文

测试以下各项的最佳方法是什么:

我们有一个大型的复杂类,我们将调用ValueSetter,它接受字符串,从中获取一些数据,并将这些数据设置为几个变量,如 message_titlemessage_contentmessage_number 为此,它使用另一个名为Rule的类,其中是用正则表达式描述的特定情况的规则。你知道吗

需要什么: 因为每个Rule中大约有5个案例需要匹配,所以我们想分别测试它们。你知道吗

到目前为止,我们只需要断言特定的Rule在每种情况下都返回正确的字符串。在这种情况下最好的办法是什么?你知道吗


Tags: 数据方法字符串numbermessagetitle规则情况
1条回答
网友
1楼 · 发布于 2024-10-02 02:26:04

尝试在各自的测试中测试Rule和ValueSetter。在你的问题中描述的5个案例中,测试规则是否真的符合你的想法。然后,当您测试ValueSetter时,只需假设规则执行您所想的,并直接设置例如message_titlemessage_contentmessage_number。因此,您以规则应该执行的方式注入信息。你知道吗

这是在单元测试中通常要做的。为了测试是否所有的东西都在一起工作,您通常会做一个功能测试,从更高的/用户级别测试应用程序。你知道吗

如果不使用规则就无法构造ValueSetter,那么只需为从ValueSetter继承的测试创建一个新类并覆盖__init__方法。通过这种方式,您将能够获得一个“空”对象,并按照您期望的方式直接设置成员变量。你知道吗

相关问题 更多 >

    热门问题