Java单元测试技术(1)

1 基于Java开发的技术特点
 容器管理的组件开发
开发WEB应用程序,实质上就是在开发一系列组件。组件的类型有很多,JavaBean、Servlet、Filter、JSP Taglib、EJB、Spring Bean,等等。这些组件一般是不能独立运行的,需要将它们布署到WEB服务器,通过与WEB容器或EJB容器交互才能实现一定的业务逻辑,也就是说,组件依赖的许多对象是运行时由容器创建的,如HttpServletRequest、HttpServletResponse、ServletContext、SessionContext、FilterChain、PageContext,等等,这就面临着单元测试时这些容器对象如何生成的问题。对于这些组件的测试一般我们有两种单元测试方法:一种是对被测组件进行隔离测试,组件依赖的服务器环境对象用桩取代,它的缺点是构建桩太麻烦;另一种是将组件运行在真实服务器环境下,有别于系统测试,被测对象是我们主动在测试代码中创建的,它的优点是更接近于真实环境、免除了构建桩的工作量。
 页面显示的视图开发
有很多技术用于将视图与业务逻辑分开,如Struts、JSF、WebWork、Spring等,页面开发的技术也有很多,如Html、XML、JSP、JavaScript、Velocity,等等,对于这些页面文件,技术上很难进行编译和静态检查,对它们的测试虽然有一些工具支持,但效果均不理想,而且代码Review大家反映也很难发现实质性的页面问题,如何确保页面文件的质量一直是单元测试要解决的问题。

你可能感兴趣的:(java)