-
白盒的测试方法
-
白盒的测试其它方法
-
Java动态检查工具介绍
-
Java mock框架介绍
- Java静态检查工具介绍
白盒测试方法
对代码静态检查(编码规范,潜在缺陷(包括安全性,性能),代码复杂度)
代码的动态覆盖率检查
白盒测试方法
例子程序
白盒测试的方法
基本路径法
桩stub: 在动态测试中,是一种基本的测试手段,有广泛的应用
主要借助向程序中插入操作,来实现测试目的的方法(即向源程序中添加一些语句(也称探测器),实现对程序语句的执行、变量的变化等情况进行检查)
Mock:模拟对象(Mock Object)可以取代真实对象的位置,用于测试一些与真实对象进行交互或依赖于真实对象的功能,模拟对象的背后目的就是创建一个轻量级的、可控制的对象来代替测试中需要的真实对象,模拟真实对象的行为和功能
Java mock工具
1.Easy mock
2.Jmock
3. mockito(推荐)
Java动态覆盖工具
Java编码规范检查工具
PMD: 注重检查源文件中的潜在问题,可以检查Java代码中是否有未使用的变量、私有方法,是否有空的try/catch、是否过于复杂的表达式等等。
CheckStyle:注重代码格式、代码规范,通过检查编码格式、命名约定、Javadoc、类设计等方面进行代码规范和风格的检查,从而有效约束开发人员更好地遵循代码编写规范,提供常见IDE的插件,如eclipse,IDEA等。
FindBugs:注重检测潜在的Bug和性能问题,通过检查类文件或jar文件将字节码与一组缺陷模式进行对比从而发现代码缺陷,提供UI界面和常见IDE插件。
SonarQube:开源的代码质量管理平台,涵盖了架构设计、注释、编码规范、潜在缺陷、代码复杂度、单元测试、重复代码7个维度。通过强大的插件扩展机制,支持对主流编程语言的指标分析,目前可以支持超过20种以上主流编程语言。
阿里的代码检查插件,Alibaba Java Coding Guidelines
代码静态分析工具
Checkstyle介绍
1.Checkstyle是 SourceForge 的开源项目,通过检查对代码编码格式,命名约定,Javadoc,类设计等方面进行代码规范和风格的检查,从而有效约束开发人员更好地遵循代码编写规范
2.配置
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.10</version> <executions> <execution> <phase>process-sources</phase> <goals> <goal>check</goal> </goals> </execution> </executions> <configuration> <failsOnError>true</failsOnError> <configLocation>${project.basedir}/conf/checkstyle.xml</configLocation>
</configuration> </plugin>
新技术应用--精准平台
部分平台支持功能:展示端展示结果,用例与代码追溯,只能回归测试用例,覆盖率分析,缺陷定位,能够很好的缺陷分析,最小测试用例集。
核心东西:用例与代码的追溯,通过插装实时监控软件的覆盖率,映射到用例(白盒用例与功能用例)
参考文献
1.软件测试的艺术
2.java代码与架构之完美优化
3.微软测试之道
4.百度文库 https://wenku.baidu.com/view/47d226921a37f111f1855bec.html