软件测试的原理与方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

安装:Eclipse->update或手工下载解压至 Eclipse
使用:launch in coverage mode 结果:对project、package、class进行覆
盖率统计
JWebUnit
❖ jWebUnit 是以 HttpUnit(一个进行 Web 应 用程序自动测试的 Java 库)和 JUnit 单元 测试框架为基础。 jWebUnit 提供了导航 Web 应用程序的高级 API,并组合了一组 断言,用它们来验证链接导航、表单输入 项和提交、表格内容以及其他典型商务 Web 应用程序特性的正确性。 jWebUnit 以 JAR 文件形式提供的,可以很容易地将 它插入大多数 IDE 中,jWebUnit 也包含其
❖ 下载地址:
Mock可能导致的问题
掩盖
滥用
脆弱
混乱
Leabharlann Baidu
可能隐藏所 mock的协作 软件中的缺
陷和错误,
集成测试必 不可少
为了能使用 mock测试可
能会导致滥 用Interface, 只有1个
implement 的interface 是不提倡的
属于白盒测 试,要非常 熟悉类的内 部联系,对 方法的合理 修改可能破 坏mock测试
尚未开发完 成的协作模 块,提供接 口定义,检 查是否按规 定的次数和 参数调用了 指定方法
JMock简介
❖ 最新稳定版本2.5.1 ❖ 比其它Mock工具更正式、更强大
引进参数匹配:hamcrest.Matchers 返回值更丰富returnValue、
returnIterator 设置调用次数、时序(自动机、序列) 自动验证 与JUnit良好集成 语法稍显复杂
可能给测试
代码带来混
乱,最好使 用mock的地 方都加上注 释,如果协作 软件完成了
开发可以替 换mock部分
When Mock
非常难创建(含不存在情况)
具有不可确定行为
令运行速度大大减慢
真实对象
某些行为难以触发
需要确定如何被调用
有用户界面
特点
JMock小结
Expectation+hamcrest的匹配器, 功能非常强大,灵活但复杂,用时 须花费一定精力
本章内容
❖ 接口测试框架Jmock ❖ Web测试框架JWebUnit
Why Mock Object
简单 粒度小
独立
单元测试
Mock Object
系统部件 网络连接 Java容器
Mock Object简介
1 功能:模拟外部依赖,解除耦合因素 2 原理:用反射机制,动态创建虚拟对象 3 工作方式:和Junit配合使用 4 庐山真面目:验证参数返回值调用次数
Mock object功能说明
依赖关系
期望结果
系统环境
协作软件
模拟数据 库连接、 网络连接 代替真正 的连接
eg.验证JDBC 连接在使用 结束后关闭 (在特定时刻 调用
java.sql.Con nection 中的
close )
eg.模拟 JDBC驱动 程序抛出 的
SQLExcept ion 类
好处
有效地加快单元测试的创建和执行 过程 ,最大限度代码保证代码不含 有基础错误
不足
功能上有一定限制,对final class和 multiThread支持有限;滥用Mock可 带来许多副作用
代码覆盖率统计工具
❖ EclEMMA——简单查看测试效果
定义:执行测试代码,检查被测代码执行覆 盖情况
出处:JCoverage的衍生版本,Eclipse+ EMMA
相关文档
最新文档