一、概述
能够在不需要部署到应用程序服务器或连接到其他企业基础设施的情况下执行某些集成测试是很重要的。这样做可以测试以下内容:spring IoC容器上下文的正确连接。使用JDBC或ORM工具进行数据访问。这可以包括SQL语句的正确性、Hibernate查询、JPA实体映射等等。Spring框架为Spring测试模块中的集成测试提供了一流的支持。此库包括org.springframework.test包(常常结合Junit框架一起使用),其中包含用于与Spring容器集成测试的有价值的类。此测试不依赖于应用程序服务器或其他部署环境。此类测试的运行速度比单元测试慢,但比依赖于部署到应用服务器的等效Selenium测试或远程测试快得多。二、JDBC测试支持org.springframework.test.jdbc包含JdbcTestUtils,它是jdbc相关实用程序函数的集合,旨在简化标准数据库测试场景。具体来说,JdbcTestUtils提供了以下静态实用程序方法。countRowsTable(…):计算给定表中的行数。countRowsTableWhere(…):使用提供的WHERE子句计算给定表中的行数。deleteFromTables(…):删除指定表中的所有行。deleteFromTableWhere(…):使用提供的WHERE子句从给定表中删除行。dropTables(…):删除指定的表。AbstractTransactionalJUnit4SpringContextTests 和 AbstractTransactionalTestNGSpringContextTests提供了委托给JdbcTestUtils中上述方法的方便方法。spring jdbc模块提供对配置和启动嵌入式数据库的支持,您可以在与数据库交互的集成测试中使用它。三、注解本小节介绍测试Spring应用程序时可以使用的注解。Spring测试框架的注解@BootstrapWith@BootstrapWith是一个类级别的注释,可以用来配置Spring测试框架的引导方式。具体来说,您可以使用@BootstrapWith来指定一个自定义的TestContextBootstrapper。@ContextConfiguration@ContextConfiguration定义类级元数据,用于确定如何为集成测试加载和配置ApplicationContext。具体来说,@ContextConfiguration声明应用程序上下文资源位置(xml)或用于加载上下文的组件类(@configuration类)。
07-15
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交