Java应用测试:从基础到高级框架
1. 测试概述与其他服务
在Java应用开发中,测试是确保代码质量和稳定性的关键环节。对于大多数Bean而言,除了依赖注入和事务管理,还可以利用生命周期方法等其他服务。例如,在测试环境中,通常需要手动执行一些在容器中会自动完成的工作。以生命周期方法为例,如果某个测试需要这些方法,就必须显式调用。为了便于测试用例手动调用,建议使用包级或受保护的作用域方法。
同时,在确定测试成功所需的操作时要果断。例如,为会话Bean方法声明了安全角色,并不意味着它一定会影响测试结果。如果在测试前不需要调用,就不要浪费时间设置测试环境来执行它。
2. 使用嵌入式EJB容器进行集成测试
当多个会话Bean协作实现特定的应用用例时,可能需要大量的脚手架代码来启动和运行。如果多个测试用例共享相似的会话Bean图,部分或全部代码可能需要在多个测试用例中重复。因此,我们希望有一个框架来协助解决测试环境中的依赖注入等问题。
幸运的是,EJB提供了嵌入式EJB容器,它支持EJB Lite,这是EJB功能集的一个子集。EJB Lite支持本地会话Bean、拦截器、容器管理的事务(假设存在独立的JTA事务管理器实现)、安全和JPA,但不支持远程会话Bean、消息驱动Bean、Web服务端点、定时器或异步会话Bean。它足以处理我们目前描述的不同依赖场景。
2.1 嵌入式EJB容器的使用步骤
- 编译和打包 :将类正常编译并打包成EJB jar文件,并将该jar文件添加到测试类路径中,以便嵌入式容器的引导机制能够找到它。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



