为了账号安全,请及时绑定邮箱和手机立即绑定

单元测试 - 如何正确计算断言的预期值

单元测试 - 如何正确计算断言的预期值

MM们 2021-05-31 13:18:08
我是单元测试的新手,我只是想知道如果一个方法在内部调用自己的公共方法来计算返回值,如下所示:public Integer getTotalBeforeSubscriptionDiscount() {  return getTotal() + getSubscriptionSavings()}我正在为它编写单元测试,我的问题是:我应该使用特定的整数值来匹配结果与期望的结果,例如Integer expected = 10;Integer actual = obj.getTotalBeforeSubscription();assertEquals(expected, actual);或者是否允许调用公共方法并在运行时计算预期值,如下所示:Integer expected = obj.getTotal() + obj.getSubscriptionSavings();assertEquals(expected, obj.getTotalBeforeSubscription());
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

在测试和被测类中使用相同的代码对您没有好处。

如果您在getTotal()实现中引入错误,您的第二个选项仍然会通过,而错过了错误。

所以答案是,使用显式数字,或者至少使用不同的代码,例如expected = expectedTotal + expectedSavings.


查看完整回答
反对 回复 2021-06-02
  • 2 回答
  • 0 关注
  • 129 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信