写单测,测试如何将N个case的代码简化为1个case的代码(重用和封装)
2015-11-05 21:38
337 查看
写单测,测试如何将N个case的代码简化为1个case的代码
比如: 主动查询修复的接口
/ **
* QueryRecharge case. 1.我方状态: 进行中,失败,成功,失败稍后可重试. 2.进行中,失败,成功
* 3*4 12种情况. <br>
* 关键还是测试.我方进行中 2, 对方 进行中,失败,成功的. 共六种情况. 其他我方失败,成功的,代码review即可.
*
* 前面还有微信,支付宝.故依然有12种情况. <br>
* 启示: 某个操作会导致哪些结果. 可能输入会很多,但是结果可能就几个,可以封装下成不同的结果assert. <br>
* 例如.加钱的,捡钱的.
*/
首先case 有 24种. 支付渠道数*我方状态*对方状态 .
是不是要写24个case呢,复制黏贴?
否
解决方案:
1. 分析请求后需要验证哪些数据.
1.1 账户额度变化(1.增加 2.不变 )
1.2 返回值
1.3 流水状态
这些不同,一方面可以根据值直接替换. 另外一方面可以根据标志if else.
比如: 主动查询修复的接口
/ **
* QueryRecharge case. 1.我方状态: 进行中,失败,成功,失败稍后可重试. 2.进行中,失败,成功
* 3*4 12种情况. <br>
* 关键还是测试.我方进行中 2, 对方 进行中,失败,成功的. 共六种情况. 其他我方失败,成功的,代码review即可.
*
* 前面还有微信,支付宝.故依然有12种情况. <br>
* 启示: 某个操作会导致哪些结果. 可能输入会很多,但是结果可能就几个,可以封装下成不同的结果assert. <br>
* 例如.加钱的,捡钱的.
*/
首先case 有 24种. 支付渠道数*我方状态*对方状态 .
是不是要写24个case呢,复制黏贴?
否
解决方案:
1. 分析请求后需要验证哪些数据.
1.1 账户额度变化(1.增加 2.不变 )
1.2 返回值
1.3 流水状态
这些不同,一方面可以根据值直接替换. 另外一方面可以根据标志if else.
相关文章推荐
- Java中的fina关键字
- Python的哪些特性或用法让你相见恨晚?
- Java的equals方法与hashcode
- Java: 23种设计模式全解析之四
- 如何使用git推送本地文件到github
- java各种排序总结及实现
- Java: 23种设计模式全解析之三
- 朱老师嵌入式课程学习总结和感言
- Python中的装饰器decorator
- 学习JAVA的真实感想
- Java: 23种设计模式全解析之二
- _MSC_VER详细介绍
- Java IAQ:很少被回答的问题
- [java] 发一个企业人员管理系统的代码
- 借助 AOP 为 Java Web 应用记录性能数据
- php遍历数据库
- 冒泡排序
- Java自动装箱和自动拆箱源码分析
- Java回调函数的理解
- Java TreeMap 源码解析