码迷,mamicode.com
首页 > 其他好文 > 详细

单元测试之测试方法

时间:2014-06-28 23:24:07      阅读:276      评论:0      收藏:0      [点我收藏+]

标签:使用   数据      name   代码   c   

  • 单元测试面临的困难
    • 职责不明确
      • 类或者方法的职责不明确,违反了SRP原则.
      • 类/方法如果处理了本不该它处理的逻辑,会造成单元测试需要关心过多的外部关联类.
    • 静态方法
      • 静态方法使得调用者直接面对实际的服务类,难以通过其它方式替代其实现,也难以扩展.
    • 直接访问对象实例
      • 调用者直接实例化服务对象,从而使用服务对象提供的服务.同静态方法一样,调用者直接面对服务类.
    • 标准库
      • 标准库中有非常多的接口调用使得调用者难以被测试.
    • 准备数据
      • 编写测试用例需要外部准备大量的数据.
  • 可行的解决方案
    • 重构系统
      • 对于职责不明确的代码,只有通过重构才可以进行单元测试.
    • 编写Mock和Stub
      • 对接口Mock比较容易.Mock对象分为动态Mock和静态Mock.
      • 具体类的Mock,可以通过子类继承来进行.
      • 静态方法的Mock,可以使用classpath来进行.
        • 在被测试类的namespace内,创建一个classname和方法签名完全一致的Mock实现方法.
        • 然后保证该Mock方法的位置在真实方法之前被调用即可.

 

单元测试之测试方法,布布扣,bubuko.com

单元测试之测试方法

标签:使用   数据      name   代码   c   

原文地址:http://www.cnblogs.com/robyn/p/3794222.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!