单元测试 - 草稿

    开始之前说个故事。

    一开始提出代码包化时团队是觉得不可思议,这套架构由来已久,而且正运行在超过千万台现网设备中,这样的大改会有多少个坑等着,是个未知数。但考虑到之前提到的困境,如果平台代码不能向产品开发团队交付接近即插即用的代码包,将会和产品渐行渐远,失去平台存在的意义。平台的开发团队思考了很久,决定打造质量保护网-单元测试。

      我们的产品代码主要是嵌入式c,测试框架用的是cpputest。结合这次代码包化调整,我们采用结合ttd方法推动功能代码的设计实现。

    测试框架如图所示,每个模块都有各自的测试用例,内部桩(这里其实我们有的是stub,有的是fake,后面就不区分了,都称为桩),向外提供的接口桩,各自可以独立编译,运行,显示结果。

    一套产品,模块的依赖是比较复杂的,这就决定桩体系不会那么简单。所以一开始各业务先通过独立编译单元测试工程,梳理其依赖,比如收发报文调用,比如系统命令调用,又比如数据库的调用。业务模块即使桩的使用者,也是装的提供者。团队内汇总后就是桩的需求规划,就有了开发计划,下面要做的就是迭代开发。

   

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,595评论 25 708
  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 9,216评论 2 126
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 22,010评论 7 278
  • 首先很高兴加入了理财一百天小组,正式开启我的理财之路。接触理财也有一年多的时间了,从去年三月开始的挖财记账软件...
    晓茜自留地阅读 326评论 0 4
  • 【作品】 【解说】 中心图: 中心图是藏龙百瀑图,瀑布水流很急,白花花的,像两条长龙。 主支: 分为4个主支,分别...
    wuyingteacher阅读 357评论 0 1