C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告

上传人:012****78 文档编号:147157385 上传时间:2020-10-07 格式:DOC 页数:10 大小:115.50KB
返回 下载 相关 举报
C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告_第1页
第1页 / 共10页
C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告_第2页
第2页 / 共10页
C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告_第3页
第3页 / 共10页
C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告_第4页
第4页 / 共10页
C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告》由会员分享,可在线阅读,更多相关《C或C++单元考试工具白盒考试工具、集成考试工具单项论证报告(10页珍藏版)》请在金锄头文库上搜索。

1、C或C+单元测试工具(白盒测试工具、集成测试工具)单项论证报告 作者: 日期:2 个人收集整理,勿做商业用途C或C+单元测试工具(白盒测试工具、集成测试工具)单项论证报告一、设备名称、功能及主要技术规格指标设备名称:XXXX(工具名称)功能:可视化C/C+单元测试工具(白盒测试工具、集成测试工具),用于对C/C+代码实施单元测试和/或集成测试(或称白盒则试),以及提升C/C+项目的开发效率。技术规格指标:1:表格驱动a. 自动生成测试驱动代码、桩代码;b. 自动提供表格驱动支持,建立用例只需在表格中填数据;c. 数据表格支持复合类型、数组、指针,多级指针可设置任一级的空指针;e. 对于不便于表

2、格驱动的数据,如链表、映射表,提供了数据转换接口,转换为便于表格驱动的数据。2:底层输入a.被测函数调用底层函数时,可以随意控制底层函数产生测试所需要的数据;b.底层函数能产生的数据包括:返回值、出参、成员变量、全局变量;c. 支持在某些用例控制底层函数产生指定的数据,而另一些用例调用实际代码;e. 支持判断底层函数的调用次数;f. 支持控制底层函数直接跳过;g. 支持在一个用例下,多次调用同一底层函数产生不同的结果;h. 以上功能支持任意数据,包括复合类型,且不需要编写代码,不污染产品代码。3:局部输入与局部输出a. 支持用替换选中代码、插入代码等方式,将局部数据转换为可在表格中设置输入的变

3、量;b. 支持多次赋值,能方便地解决死循环之类的问题;c. 支持在任意指定位置打印局部数据,并支持对局部数据的结果进行判断;e. 以上功能不需要手工编写代码,且不污染产品代码。4:白盒覆盖a. 支持语句、条件值、判定、MC/DC、分支、路径覆盖的自动统计;b. 所有未覆盖的逻辑单位具有清晰的标示;c. 具有白盒用例设计功能,针对未覆盖的逻辑单位,支持从现有用例中计算出近似用例,并提供修改提示,用户按提示修改近似用例,即可完成覆盖;d. 可标记不可覆盖的逻辑单位,并将标记为不可覆盖的逻辑单位从覆盖率统计中去除。5:支持快速开发a. 测试结果支持程序行为描述,即同时显示指定用例的输入、所执行的代码

4、、输出;b. 支持一边开发,一边自动更新测试代码并执行测试。6:可维护性及回归测试a. 产品代码修改时,测试代码自动更新,即使产品代码大面积修改,测试代码也能自动刷新;b. 测试数据与测试代码分离,便以维护7: 可复用性a. 支持将测试数据保存到文本文件,其他函数可从文本文件导入数据;b. 支持将测试数据保存到Excel文件,其他函数可从Excel文件导入数据;c. 复用的数据支持针对单个数据、某类型下的数据、及整个函数的所有数据。8:测试报告a. 自动生成测试报告;b. 测试报告可导出,并用普通浏览器浏览;c. 支持定制测试报告。9:自动用例a. 支持自动生成用例进行测试,自动用例取值包括数

5、字的边界值、空字符串、空指针等,以检测边界输入造成的崩溃、超时、异常等问题;b. 自动用例可用简单的开关控制其是否执行。10:培训与技术支持a. 培训老师具有现场指导并解决问题的能力;b. 提供远程协助方式的技术支持,解决实际使用中遇到的问题;c. 对于不方便远程协助的客户,提供QQ、微信方式的即时技术支持,解决实际使用中遇到的问题;d. 技术支持工程师应该是工具开发团成的成员,具备较强的开发、测试能力,能解决各种疑难问题,并能将用户遇到的问题和需求及时反馈给工具开发团队。二、建设的必要性1、为了保证软件产品质量,必须做好单元测试1)在编码阶段保证代码单元的质量:只有单元测试才能完整检测代码单

6、元的功能逻辑,使代码单元的质量得到保证。只有代码单元的质量得到保证,软件的整体质量才有可能得到保证。2)在代码的修改过程中保证代码单元的质量:有了单元测试,代码修改后可以立即运行回归测试,检查是否引入新的错误。避免陷入“系统测试代码修改系统测试”的不断循环。2、为了降低开发成本,必须做好单元测试“现在的软件开发过程中40%50%的时间都花在了可避免的返工上。”B.Boehm,V.R.Basili软件缺陷预防Top10上述评论真切地反映了软件研发中普遍存在的状况,其中最重要的关键词,是“可避免的”!在软件开发过程中,如何避免返工?关键是“把事情一次做好”。“把事情一次做好”的关键是,程序员一边编

7、写代码,要一边完成单元测试,一次性写出合格的代码,而不是不管有多少bug,留待以后返工。华为在强力推行过程改进时有一句话极为精精辟:“我们没有时间把事情一次做好,却总是有时间把事情一做再做”。程序员如果没有时间做单元测试,一定会有更多的时间去调试。单元测试可以消除大部分返工,那么,单元测试本身需要多少成本呢?使用eTDD(easy TDD,易行版TDD),完全可以做到在不增加时间的前提下,同时完成编码和单元测试,这样,所消灭的大部分返工就是净效益,因此,使用eTDD,可以降低项目的开发成本30%。 3、为了做好单元测试,使用XXXX是最佳选择1)XXXX实现了表格驱动,不用写代码。测试代码数据

8、通常是产品代码的二至五倍,而XXXX实现了彻底的表格驱动,不用编写测试代码。同类工具中,目前只有XXXX做到了这一点,仅这一点,测试工作效率就高于同类工具五倍以上。2)XXXX解决了单元测试的核心难题。单元测试是看起来简单做起来很困难的工作,其中,最核心的难题是可测性问题。代码可测性差有其必然性,程序是客观事物的反映,客观事物本身互相关联、互相纠缠,代码间的多数耦合不可能消除,解决可测性问题是单元测试工具的首要职责。试图通过优化开发流程来提高可测性是不现实的,优化流程是一个长期、渐进的过程,不可能短期内实现飞跃,更不可能解决客观事物间的“耦合”。XXXX具有底层输入、局部输入、局部输出功能,从

9、根本上解决了可测性问题,这也是其他同类工具所没有的。3)XXXX使完成航空标准的覆盖率很简单。一般工具只提供覆盖统计功能,但问题是:如何完成覆盖?XXXX的用例设计器,自动从现有用例中计算出近似用例,并提出修改提示,按提示修改即可建立预期用例。MC/DC是欧美航空标准,使用XXXX,完成MC/DC很轻松。4) 可靠的技术支持服务单元测试的实施过程,尤其是实施前期,需要工具厂商提供全面的服务。XXXX由国内开发商研发,由本土团队提供技术支持和服务。除电话、邮件、QQ、MSN提供常规支持外,还提供培训和现场技术支持,有特殊需求的客户还可以定制。三、设备的主要构成XXXX主体程序;License管理

10、器;加密锁;视频教程及帮助文档。四、产品在国内、国际使用情况略。五、国内外同类产品性能及价格比较同类产品,比较有代表性的有:对比产品A、对比产品B、对比产品C、对比产品D。这几种产品,功能都差不多,特点是:单元测试功能较弱,捆绑静态分析增加卖点。在单元测试方面,能生成测试驱动框架、能统计覆盖率。用例代码需要手工编写,没有底层输入、局部输入、局部输出功能,不能解决可测性问题,难以适应高耦合代码的测试。缺少协助用户找出遗漏用例的功能,难以做到高标准的覆盖。在单元测试方面,使用这几种工具与使用开源框架差不多。至于对比产品A宣称不用编写测试用例,这是不靠谱的,工具不可能自动了解代码的功能,怎么可能生成

11、有意义的用例呢。自动生成用例的功能,XXXX也具有并且更强,不过只是作为一个补充,用于检测超时、异常等极端错误。正因为这几种工具的单元测试功能较弱,所以都强调静态分析功能,但在静态分析方面,其实不如专业的静态分析工具如PC-Lint。据了解,采购这几种工具的用户,通常最后只能做一些静态分析,但是却付出了单元测试工具的采购成本。静态分析与单元测试不是一件事情,也不是同时做的,静态分析是整体扫描,适合于编码后进行,单元测试则应该一边开发一边做,把这两种工具捆绑,是厂商基于商业上的考虑,在技术和应用上是没有道理的。一般来说,把编译器的警告级别调到最高,就相当于静态分析了,没必要编码后再做静态分析,如

12、果一定要做,也应该采购专业的静态分析工具,如PC-Lint,价格大约5000人民币。在服务方面,这些国外产品通常通过邮件提供技术支持,不但麻烦,而且有泄密的风险。价格方面:对比产品A每浮动License 2.1万美元,对比产品D每浮动License约50万人民币。六、 生产厂商背景材料略。七、 技术经济效益分析军用软件产品,对质量具有苛刻的要求。产品的缺陷,可能导致难于估量的损失。单元测试可以保证代码的质量,发现其他测试难于找到的细小的、隐藏很深的缺陷,而使用XXXX,可以高效率地完成单元测试。另一方面,如果在开发过程中,使用XXXX边开发边测试(eTDD),那么,占总工期40%50%的可避免

13、的返工至少可以消灭七八成,从而让软件开发的成本降低30%以上。对于有300位工程师的研发团队,以每个工程师年平均成本(包括薪资、保险、福利、管理费用等)12万计算,一年可以节约成本:12*300*30% = 1080万元。八、代理商情况略。九、 配套条件操作系统:Windows2000、Windows XP、Windows Server 2003、Windows Vista、Windows 7、Windows 8、Windows 10。内存:256M,推荐512M。硬盘空间:300M。编译器VC6.0、VC2003、VC2005、VC2008、VC2010、VC2012、VC2013、VC2015、VC2017;mingw gcc 4/5、mingw g+ 4/5;cygwin gcc4、cygwin g+4(用以测试linux项目)支持Qt(4.x及5.x,编译器为VC或mingw g+)。十、 招投标说明(说明采用何种招标方式及理由,不招标的需陈述原因。)说明以上为C或C+单元测试工具(白盒测试工具、集成测试工具)单项论证报告模板。单项论证报告是申请采购单元测试工具(白盒测试工具、集成测试工具)时可能需要提交的技术资料。本模板仅包含通用内容,请根据实际自行修改和补充。 10 / 10

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 中考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号