使用unity做C语言自动测试.doc_第1页
使用unity做C语言自动测试.doc_第2页
使用unity做C语言自动测试.doc_第3页
使用unity做C语言自动测试.doc_第4页
使用unity做C语言自动测试.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、代码结构proj为工程(相当于模块)src为产品代码 demo.c为源文件,demo.h为头文件test为测试代码,里面包含了unity的源码编译:在test下meke,将产品代码+测试代码+unity一起编译编出两个.out可以直接运行(若一个group则只一个.out)注:demo_test_group1/2_Runner.c是自动生成的运行容器实际工程中的代码结构可设计为:moudule -src -inc -test 模块的测试代码,依赖模块代码和unity框架代码(即include这两个.h)unity 作为一个模块,另外编译 (可以当做交换驱动一样的东西,单独编译,然后提供.h即提供api给上层调用)2、操作步骤(1)将proj文件夹放到/root/TDD文件夹下(2)将unity源码解压,复制到test/unity处(3)使用自动生成脚本生成测试容器(Runner) 进入 /root/TDD/proj/test/运行命令(注:若无ruby则用apt-get install ruby安装)ruby unity/auto/generate_test_runner.rb demo_test_group1.cruby unity/auto/generate_test_runner.rb demo_test_group2.c会自动根据相应.c生成两个 *_Runner.c 文件(4)编译&运行编译:make即可会编出两个.out运行: ./demo_test_group1.out./demo_test_group2.out也可以将运行命令写入到makefile中,编译测试一步完成如在最后加./$(TARGET1)结果:(注意,test报错的返回值会导致make报错,但其实编译是正确的)其中通过的测试会显示PASS,没通过的会显示FAIL,忽略的会显示IGNORE3、源码讲解(1)模块源码demo.c中就是产品代码中的函数demo.h即头文件,extern其中的函数(2)测试源码头文件,即依赖产品代码以及unity测试夹具和测试清除的代码,会在每个测试用例之前之后运行可以为空,加打印后可以看到如下:一个完整地测试用例,调用产品代码中的函数,并检查返回值(或其它传出参数)会被ignore的测试用例(3)自动生成的.c(测试容器)其主要工作也就是将testgroup加到main( )中每个RUN_TEST宏的定义如下:(4)makefile只编译一个group,最简单的makefiele如下即源文件有demo.c 产品代码文件 unity.c unity文件demo_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论