我应该有多余的单元测试吗

weijia_yu

例如,服务器将响应

{
   name: "mike",
   age: "12",
   sex: "male"
}

在我的代码中,我只使用name,所以我的代码将是字符串name = json [“ name”];

对于我的单元测试,我的单元测试用例应该是上面的实际json结果还是

{
   name: "mike",
}

既然我只解析name字段?

德克·赫尔曼

在编写单元测试时,您应该考虑每个测试的目的是什么。

在您的示例中,一项测试的目标可能是测试代码是否从服务器结果中正确提取了名称。但是,由于键和值的处理是语言的一部分,因此您不必测试它是否适用于键和值的混合:表达式json["name"]确实为您带来了魔力。因此,您可以使“伪”服务器响应保持非常简单-不必像实际的服务器响应一样。也就是说,只需使用即可{ name: "mike", }

可能会有更多的测试用例,例如,测试您的代码是否正确处理了错误情况,例如,如果服务器响应的响应中没有名称-或具有两个或多个名称-或看起来完全是乱码。同样,您将必须定义一些“伪”服务器结果。

但是,在某个时候,您将不得不在实际的服务器上测试您的代码-但是,您将离开单元测试的领域,进入集成测试。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

单个单元测试应该有多广泛?

对于共享同一私有实现的单独方法,是否应该有重复的单元测试?

我应该有多个存储库吗?

应该有指针吗?

我们的Ubuntu服务器中应该有很多外壳吗?

我应该有两个相同的表吗

我的/ usr / local / bin应该有700个权限吗?

我整个网站应该有一个大的角度文件吗?

我可以/应该有多个Objective-C桥接头吗?

我应该有更多的角度服务或控制器吗?

超类应该有构造函数吗?

HMI设备上应该有RTOS吗?

子组件应该有状态吗?- 反应

我的游戏中应该有几个View Controller?

关于具有登录选项的网站,我应该有一个/多个导航栏吗?

我应该对并发进行单元测试吗?

我应该添加白/黑盒冗余单元测试吗?

单元测试时,我应该重用封装常量吗?

我应该对引导程序进行单元测试吗?

除了 Etag 之外,我还应该有另一个系统来处理并发吗?

我应该有两个不同的模型类来读取和更新Web API中的对象吗?

我应该有一个 ViewModel 类为每个 Model 类实现 INotifyPropertyChanged 吗?

我应该有注册/登录流程来在tvOS App中实施应用内购买吗?

函数应该有原型错误

导出的const应该有评论

函数应该有多小?

浮动div应该有高度

当我选择单元格时,即使我知道它应该有一个值,UIImageView.image在我的UITableViewCell中也为零

原生js defaultValue和jQuery prop(defaultValue)之间有(应该有)区别吗?