@@@@大学课程设计说明书课程名称软件测试技术课程设计题目CppCheck测试院系信息工程学院班级计科131学生姓名指导教师日期 2016.7.5课程设计任务书目录一.任务的描述 .........................................................................................................................1.1目标 ..................................................................................................................................1.2测试对象介绍: ..............................................................................................................1.2.1 概述: .....................................................................................................................1.2.2介绍: ......................................................................................................................1.2.3 基本使用: ...........................................................................................................1.2.4 高级使用: .............................................................................................................1.4.运行环境: ...................................................................................................................1.5.条件与限制: ............................................................................................................... 二.测试设计 ............................................................................................................................. 2.1测试阶段的选择: ........................................................................................................2.1.1单元测试 ..................................................................................................................2.1.2集成测试 ..................................................................................................................2.1.3系统测试(System Testing): .......................................................................... 2.2测试方法的选择: ........................................................................................................2.3 选择工具: .....................................................................................................................2.4设计测试用例: ..............................................................................................................2.4.1静态测试 .................................................................................................................. 三.测试执行和结果 .................................................................................................................3.1白盒测试 ..........................................................................................................................3.2黑盒测试 .......................................................................................................................... 四.测试的结果 .........................................................................................................................五. 感想认识 ............................................................................................................................. 六.参考文献 .............................................................................................................................课程设计报告文档一.任务的描述1.1目标测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。
应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例,并利用这些实例来运行程序,以便发现错误。
信息系统测试应包括软件测试、硬件测试和网络测试。
硬件测试、网络测试可以根据具体的性能指标来进行,此处所说的测试更多的是指软件测试。
一是对质量或可接受性做出判断:通过测试给出所测系统总体质量现状,譬如满足工件的出入口标准,达到发布要求,遗留缺陷或者风险二是发现问题,而且尽可能早一些,并确保其得以修复:目的是要发现问题,就需要使用不同的方法类型进行测试,尽可能早的发现问题,就是尽快的参与测试,并提高测试的效率和有效性,使严重的问题尽早被发现;确保缺陷得以修复,需要说明的是不是所有的缺陷都可以被修复的,那么我们要在提交缺陷单的时候自己首先已经有一个尺度,哪些是必须解决的,哪些是有时间可以解决的,那些是可以推迟到下个版本,哪些是无法解决但是要提出来的,跟自己的团队磨合久了,测试人员心理这个尺度应该是很清楚的,再则就是注意与开发之间的沟通技巧和专业度,特别在国内团队,随意性比较大,某个缺陷的解决很可能是因为开发心情好或者跟开发者交情好,或者开发觉得你够专业。
三是改进测试过程或者软件开发过程:通过测试,对一些测试数据的度量和报告,对团队合作上一些问题的发现和总结,可以反过来为测试过程和开发过程的改进提供依据,从而促进团队朝着更积极有效的方向发展。
总之要做到以最少的人力、物力、时间找出软件潜在的错误和缺陷。
1.2测试对象介绍:1.2.1 概述:Cppcheck是一种C/C++代码缺陷静态检查工具。
不同于C/C++编译器及其它分析工具,Cppcheck只检查编译器检查不出来的bug,不检查语法错误。
1.2.2介绍:cppcheck 是一个静态代码检查工具,支持c, c++ 代码;作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。
执行的检查包括:1. 自动变量检查2. 数组的边界检查3. class类检查4. 过期的函数,废弃函数调用检查5. 异常内存使用,释放检查6. 内存泄漏检查,主要是通过内存引用指针7. 操作系统资源释放检查,中断,文件描述符等8. 异常STL 函数使用检查9. 代码格式错误,以及性能因素检查1.2.3 基本使用:首先下载安装,例如我的是安装在C:\Cpptest\Cppcheck 目录下,要使用它必须先转到该路径下:1.检查一个文件:cppcheck [filepath]例如,我检查一个file1.c的文件代码,在命令工具中可以输入:D:\Cpptest\Cppcheck>cppcheck file1.c 来审查。
2.检查一个文件夹中的所有文件: cppcheck [filspath]例如,我检查files文件下的所有文件:C:\Cpptest\Cppcheck>cppcheck files3. 格式化输出内容格式:C:\Cpptest\Cppcheck>cppcheck --enable=all --template=vsC:\files.c 2>C:\Cpptest\err.txt--template=vs 就是指定以vs这种格式输出,还可以自定义输出格式,1.2.4 高级使用:1.xml 输出a.使用方式:cppcheck --xml-version=2 foo.cppb.error的组成元素:id:error的idseverity:error的性质(error、warning......)msg:error的具体信息(短格式)verbose:error的信息(长格式)c.location的组成元素:file:含有相对或者绝对路径的文件名line:行数msg:消息描述2.改良输出结果cppcheck --template=vs path (Visual Studio 兼容模式)cppcheck --template=gcc path (Gcc兼容模式)cppcheck --template={"{file},{line},{severity},{id},{message}"} 3.输出过滤器(选特定的错误信息输出)命令行模式:cppcheck --suppress=memleak:src/file1.cpp src/使用文件模式(将过滤规则存到文件中)cppcheck--suppressions suppressions.txt src/1.3. 任务描述:1.理解CPPCheck软件的基本功能和特征;2. 掌握软件测试方法在CPPCheck测试中的运用;3.完成CPPCheck相关任务模块测试用例的设计;4.实现CPPCheck的核心功能的测试;5.撰写测试CPPCheck软件的相关文档;6.撰写出符合要求的课程设计报告。