C或C++单元测试工具白盒测试工具集成测试工具单项论证报告文档格式.docx
- 文档编号:14111054
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:6
- 大小:80.86KB
C或C++单元测试工具白盒测试工具集成测试工具单项论证报告文档格式.docx
《C或C++单元测试工具白盒测试工具集成测试工具单项论证报告文档格式.docx》由会员分享,可在线阅读,更多相关《C或C++单元测试工具白盒测试工具集成测试工具单项论证报告文档格式.docx(6页珍藏版)》请在冰豆网上搜索。
标示;
c.具有白盒用例设计功能,针对未覆盖的逻辑单位,支持从现有用例中计算出近似用例,并提供修改提示,用户按提示修改近似用例,即可完成覆盖;
d.可标记不可覆盖的逻辑单位,并将标记为不可覆盖的逻辑单位从覆盖率统计中去除。
5:
支持快速开发
a.测试结果支持程序行为描述,即同时显示指定用例的输入、所执行的代码、输出;
b.支持一边开发,一边自动更新测试代码并执行测试。
6:
可维护性及回归测试
a.产品代码修改时,测试代码自动更新,即使产品代码大面积修改,测试代码也能自动刷新;
b.测试数据与测试代码分离,便以维护
7:
可复用性
a.支持将测试数据保存到文本文件,其他函数可从文本文件导入数据;
b.支持将测试数据保存到Excel文件,其他函数可从Excel文件导入数据;
c.复用的数据支持针对单个数据、某类型下的数据、及整个函数的所有数据。
8:
测试报告
a.自动生成测试报告;
b.测试报告可导出,并用普通浏览器浏览;
c.支持定制测试报告。
9:
自动用例
a.支持自动生成用例进行测试,自动用例取值包括数字的边界值、空字符串、空指针等,以检测边界输入造成的崩溃、超时、异常等问题;
b.自动用例可用简单的开关控制其是否执行。
10:
培训与技术支持
a.培训老师具有现场指导并解决问题的能力;
b.提供远程协助方式的技术支持,解决实际使用中遇到的问题;
c.对于不方便远程协助的客户,提供QQ、微信方式的即时技术支持,解决实际使用中遇到的问题;
d.技术支持工程师应该是工具开发团成的成员,具备较强的开发、测试能力,能解决各种疑难问题,并能将用户遇到的问题和需求及时反馈给工具开发团队。
二、建设的必要性
1、为了保证软件产品质量,必须做好单元测试
1)在编码阶段保证代码单元的质量:
只有单元测试才能完整检测代码单元的功能逻辑,使代码单元的质量得到保证。
只有代码单元的质量得到保证,软件的整体质量才有可能得到保证。
2)在代码的修改过程中保证代码单元的质量:
有了单元测试,代码修改后可以立即运行回归测试,检查是否引入新的错误。
避免陷入“系统测试—代码修改—系统测试”的不断循环。
2、为了降低开发成本,必须做好单元测试
“现在的软件开发过程中40%~50%的时间都花在了可避免的返工上。
”
——B.Boehm,V.R.Basili《软件缺陷预防Top10》
上述评论真切地反映了软件研发中普遍存在的状况,其中最重要的关键词,是“可避免的”!
在软件开发过程中,如何避免返工?
关键是“把事情一次做好”。
“把事情一次做好”的关键是,程序员一边编写代码,要一边完成单元测试,一次性写出合格的代码,而不是不管有多少bug,留待以后返工。
华为在强力推行过程改进时有一句话极为精精辟:
“我们没有时间把事情一次做好,却总是有时间把事情一做再做”。
程序员如果没有时间做单元测试,一定会有更多的时间去调试。
单元测试可以消除大部分返工,那么,单元测试本身需要多少成本呢?
使用eTDD(easyTDD,易行版TDD),完全可以做到在不增加时间的前提下,同时完成编码和单元测试,这样,所消灭的大部分返工就是净效益,因此,使用eTDD,可以降低项目的开发成本30%。
3、为了做好单元测试,使用XXXX是最佳选择
1)XXXX实现了表格驱动,不用写代码。
测试代码数据通常是产品代码的二至五倍,而XXXX实现了彻底的表格驱动,不用编写测试代码。
同类工具中,目前只有XXXX做到了这一点,仅这一点,测试工作效率就高于同类工具五倍以上。
2)XXXX解决了单元测试的核心难题。
单元测试是看起来简单做起来很困难的工作,其中,最核心的难题是可测性问题。
代码可测性差有其必然性,程序是客观事物的反映,客观事物本身互相关联、互相纠缠,代码间的多数耦合不可能消除,解决可测性问题是单元测试工具的首要职责。
试图通过优化开发流程来提高可测性是不现实的,优化流程是一个长期、渐进的过程,不可能短期内实现飞跃,更不可能解决客观事物间的“耦合”。
XXXX具有底层输入、局部输入、局部输出功能,从根本上解决了可测性问题,这也是其他同类工具所没有的。
3)XXXX使完成航空标准的覆盖率很简单。
一般工具只提供覆盖统计功能,但问题是:
如何完成覆盖?
XXXX的用例设计器,自动从现有用例中计算出近似用例,并提出修改提示,按提示修改即可建立预期用例。
MC/DC是欧美航空标准,使用XXXX,完成MC/DC很轻松。
4)可靠的技术支持服务
单元测试的实施过程,尤其是实施前期,需要工具厂商提供全面的服务。
XXXX由国内开发商研发,由本土团队提供技术支持和服务。
除电话、邮件、QQ、MSN提供常规支持外,还提供培训和现场技术支持,有特殊需求的客户还可以定制。
三、设备的主要构成
XXXX主体程序;
License管理器;
加密锁;
视频教程及帮助文档。
四、产品在国内、国际使用情况
略。
五、国内外同类产品性能及价格比较
同类产品,比较有代表性的有:
对比产品A、对比产品B、对比产品C、对比产品D。
这几种产品,功能都差不多,特点是:
单元测试功能较弱,捆绑静态分析增加卖点。
在单元测试方面,能生成测试驱动框架、能统计覆盖率。
用例代码需要手工编写,没有底层输入、局部输入、局部输出功能,不能解决可测性问题,难以适应高耦合代码的测试。
缺少协助用户找出遗漏用例的功能,难以做到高标准的覆盖。
在单元测试方面,使用这几种工具与使用开源框架差不多。
至于对比产品A宣称不用编写测试用例,这是不靠谱的,工具不可能自动了解代码的功能,怎么可能生成有意义的用例呢。
自动生成用例的功能,XXXX也具有并且更强,不过只是作为一个补充,用于检测超时、异常等极端错误。
正因为这几种工具的单元测试功能较弱,所以都强调静态分析功能,但在静态分析方面,其实不如专业的静态分析工具如PC-Lint。
据了解,采购这几种工具的用户,通常最后只能做一些静态分析,但是却付出了单元测试工具的采购成本。
静态分析与单元测试不是一件事情,也不是同时做的,静态分析是整体扫描,适合于编码后进行,单元测试则应该一边开发一边做,把这两种工具捆绑,是厂商基于商业上的考虑,在技术和应用上是没有道理的。
一般来说,把编译器的警告级别调到最高,就相当于静态分析了,没必要编码后再做静态分析,如果一定要做,也应该采购专业的静态分析工具,如PC-Lint,价格大约5000人民币。
在服务方面,这些国外产品通常通过邮件提供技术支持,不但麻烦,而且有泄密的风险。
价格方面:
对比产品A每浮动License2.1万美元,对比产品D每浮动License约50万人民币。
六、生产厂商背景材料
七、技术经济效益分析
军用软件产品,对质量具有苛刻的要求。
产品的缺陷,可能导致难于估量的损失。
单元测试可以保证代码的质量,发现其他测试难于找到的细小的、隐藏很深的缺陷,而使用XXXX,可以高效率地完成单元测试。
另一方面,如果在开发过程中,使用XXXX边开发边测试(eTDD),那么,占总工期40%~50%的可避免的返工至少可以消灭七八成,从而让软件开发的成本降低30%以上。
对于有300位工程师的研发团队,以每个工程师年平均成本(包括薪资、保险、福利、管理费用等)12万计算,一年可以节约成本:
12*300*30%=1080万元。
八、代理商情况
九、配套条件
操作系统:
Windows2000、WindowsXP、WindowsServer2003、WindowsVista、Windows7、Windows8、Windows10。
内存:
256M,推荐512M。
硬盘空间:
300M。
编译器
VC6.0、VC2003、VC2005、VC2008、VC2010、VC2012、VC2013、VC2015、VC2017;
mingwgcc4/5、mingwg++4/5;
cygwingcc4、cygwing++4(用以测试linux项目)
支持Qt(4.x及5.x,编译器为VC或mingwg++)。
十、招投标说明
(说明采用何种招标方式及理由,不招标的需陈述原因。
)
说明
以上为C或C++单元测试工具(白盒测试工具、集成测试工具)单项论证报告模板。
单项论证报告是申请采购单元测试工具(白盒测试工具、集成测试工具)时可能需要提交的技术资料。
本模板仅包含通用内容,请根据实际自行修改和补充。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 单元测试 工具 测试 集成 单项 论证 报告