现在需要给项目里的一个功能写测试代码,这个功能会执行一个比较复杂的流程,输入一批数据后进行一个统计,最后算出几个数字,现在我需要校验这个统计逻辑是否正确。
首先我在测试用例里会把这个流程也执行一遍,拿到它的计算结果(记为 A )。而我的疑问是,我要怎么去校验这个结果的正确性,我目前有两个思路:
请教下哪个比较合理,或者是否有更好的设计思路。
1
lewis89 2020-10-10 18:04:12 +08:00
DIP
|
2
renmu123 2020-10-10 18:13:13 +08:00 via Android 1
我倾向于 2,可能你刚写完代码测试没什么问题,但是十个月后谁也不知道哪里会被改动,导致结果错误。可以每次测试的时候取一定数量的随机数计算对比 a 和 c,也可以将一些边界值以 1 的方法进行测试
|
3
xuhai951753 2020-10-10 18:14:42 +08:00 1
一般都是方案 1 吧。。多设置几组测试数据。然后提高测试行覆盖和分支覆盖就好了。
可读性的话参考下 bdd 那种框架。 |
4
zqz19941106 2020-10-10 18:18:18 +08:00 1
都做 测试不怕多测
|
5
chenluo0429 2020-10-10 18:21:04 +08:00 1
在我看来测试用例主要还是检测在相关代码修改之后,功能是否还能满足原设计,确定算法写的没问题,最开始的测试用例都是直接相关的逻辑生成的。
如果一定要验证新写的功能,那就只能额外去设计数据了。 |
6
balabalaguguji 2020-10-10 18:38:40 +08:00
我最近才做了一个测试用例的视频教程: https://www.bilibili.com/video/BV1nh411974p?p=8
如果你的是 http 接口的话,很适合,可以看下 |
7
hardwork 2020-10-10 18:50:30 +08:00 1
1 和 2 都行吧,看哪个成本小,正确率高。
用 2 你要保证自己程序的正确性。。 用例设计还是老理论,边界值,归类法这些。 |