j2ee项目实训struts框架技术——第9章基于struts框架的单元测试技术第2部分内容摘要:
st 和 HttpServletResponse 对象。 StrutsTestCase框架都会创建出这些模拟对象,并把它们传递给 Struts 框架系统。 2) MockStrutsTestCase 基类 如果开发者需要采用 StrutsTestCase 框架所提供的容器外模拟测试的方法,测试用例类就必须从 MockStrutsTestCase 基类进行继承而不再从标准的 JUnit 中的 TestCase 基类继承。 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 5/11 页 3) MockStrutsTestCase 类与 TestCase 类之间的关系 MockStrutsTestCase 类是一个扩展了 类的 JUnit 测试用例,所以每个测试用例都会执行 setup()方法。 在 MockStrutsTestCase 对象的 setup() 方法中, StrutsTestCase 框架创建出 ActionServlet 对象和其他在测试过程中所必需的其他模拟对象。 4)模拟方式的优势与不足 1) 优势:速度快、测试效率高。 因为不必每次执行测试用例代码时而频繁地启动和停止应用服务器容器。 2) 不足:无法全面地反映出 Web 应用系统中的所有方面的问题,而且由于没有使用真正的 Servlet 容器,所以无法验证 Web 监听器或过滤器的功能实现正确性;另外,由于没有执行真正的 JSP 页面组件中的代码,所以也无法发现内嵌在 JSP 页面中的相关错误。 StrutsTestCase 框架所提供的容器内测试方法( Cactus 方法) 1)一般用于集成测试阶段 由于在应用容器内的测试方法时,需要启动 Servlet 容器的服务器,因此这种方法一般用于 Web 应用系统的集成测试阶段。 在这种方法中, Web 应用程序要部署在容器中,然后就可以像运行其他 JUnit 测试用例那样运行测试用例。 2) CactusStrutsTestCase 基类 当然,如果开发者需要采用 StrutsTestCase 框架所提供的容器内测试的方法,测试用例类就必须从 CactusStrutsTestCase 基类进行继承,也不能再从标准的 JUnit 中的TestCase 基类继承。 该方式的主要优点在于可以实现与实际的用户应用环境相互一致的测试环境,能够全面地了解系统在实际运行环境中所可能出现的各种问题。 应用 StrutsTestCase 框架技术 StrutsTestCase 框架的系统 包及有关的资源文件 在 StrutsTestCase 框架的官方网站 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 6/11 页 载 StrutsTestCase 框架的系统包的 *.zip 文件。 请见图 所示的操 作结果。 图 下载 StrutsTestCase 框架的系统 包的 *.zip 文件 系统包文件下载成功后,然后再解包它的各个类,获得如图 所示的结果目录及文件。 其中主要的系统包文件为 ,并且将其放在 Web 应用系统的WEBINF/lib 目录中。 图 解包下载的 StrutsTestCase 系统 包的 *.zip 文件后的结果图示 在 StrutsTestCase 框架的系统 包的 *.zip 文件中,也提供了有关的 API 帮助文档以辅助开发过程中的查询,请见图 所示 的 API 帮助文档的图示。 图 StrutsTestCase 框架中的 API 帮助文档 此外,还提供了针对 MockStrutsTestCase 的测试示例程序 ,以及针对 CactusStrutsTestCase 的测试示例程序。 通过阅读这些测试示例程序 ,可以了解其编程方法。 请见图 所示的 examples 目录中的各个文件内容。 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 7/11 页 图 examples 目录中所提供的各个测试示例程序 读者可以通过阅读 examples 目录中所提供的 文件中的内容来了解执行该示例的环境和要求等方面的信息。 请见图 所示的 文件中的内容图示。 图 examples 目录中所提供的 文件中的内容图示 StrutsTestCase 框架 模拟测试方式的工作过程 1)基于模拟测试方式的代码示例 为了能够说清 StrutsTestCase 框架模拟测试方式的工作过程,下面【例 96】中给出一段针对【例 95】中示例 UserInfoAction 组件类的测试用例中的某一个测试方 法的代码,然后给出详细的说明。 【例 96】基于模拟测试方式的代码示例 public void tes。j2ee项目实训struts框架技术——第9章基于struts框架的单元测试技术第2部分
相关推荐
1、机密2001年 9月 28日北京京东方科技集团有限公司信息技术战略规划第二次研讨会2 2001 研讨会目标 信息系统建设的阶段计划 信息系统体系架构 软件选型方案比较 实施收益评价 实施计划和预算 信息技术组织设计 下一步工作日程3 2001 研讨会目标 信息系统建设的阶段计划 信息系统体系架构 软件选型方案比较 实施收益评价 实施计划和预算 信息技术组织设计 下一步工作日程4 2001
{}。 verifyActionErrors(actionErrors)。 verifyInputForward()。 } 在编写 StrutsTestCase 的测试用例时 ,要做的第一件事就是告诉 StrutsTestCase 要测试哪个 ActionMapping 类,在这里要测试 UserInfoAction 组件类 ,它被映射到 文件中的 /userLoginURI 请求路径
某个 系统的整体架构设计 的 示例,该系统架构是充分地应用了目前在 J2EE 平台中比较主流的三种不同形式的框架 技术。 杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料 杨教授工作室,版权所有,盗版必究 , 7/15 页 图 某 系统的整体架构设计示图 采用该形式的系统架构的主要目的,是希望能够保证 项目在系统架构设计方面所提出的尽可能达到系统的可重用性
1、机密2001年 10月 27日北京京东方科技集团有限公司信息技术战略规划培训会2 2001 京东方信息技术规划项目综述 信息系统发展趋势 京东方信息技术建设阶段计划 信息技术和京东方业务流程 流程驱动式变革 项目实施方法内容3 2001 京东方信息技术规划项目综述 信息系统发展趋势 京东方信息技术建设阶段计划 信息技术和京东方业务流程 流程驱动式变革 项目实施方法内容4 2001
5/12 页 误后进行改进,再测试通过的结果状态图示。 应用测试驱动开发方法时所应该注意的问题 1)要对整个开发过程的各个阶段进行测试驱动 测试驱动开发方法不仅仅只在代码实现阶段被应用,而应该将它扩展到整个开发过程中的各个阶段 —— 也就是要对软件整个开发过程的各个阶段进行测试驱动。 也就是在“需求阶段”要对需求进行验证和在“设计阶段”需求进行设计评审,而在“编程实现 阶段”中需要应用单元测试
1、机 密品牌管理培训2001年 10月 21日北京京东方科技集团有限公司追求卓越管理 - 京东方组织提升与流程再造项目2 2001 京东方组织提升和流程再造项目分五个工作系列进行 明确企业战略对组织要求 确定集团管理模式 确定集团总部组织变革方案 确定品牌经营本部组织方案 总部核心管理流程目标提供结果 核心业务单元营销管理体系诊断及方案设计组织变革设计2营销管理体系设计3确定 集团管理模式