https://docs.spring.io/spring/docs/current/spring-framework-reference/html/integration-testing.html
spring-boot-test
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-testing.html
@ContextConfiguration(locations = "/test-db-context.xml")
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <context:component-scan base-package="com.pierre.sourcing.dao, com.pierre.xcoll.dao" /> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@pippo:1521:PLUTO" /> <property name="username" value="pippouser" /> <property name="password" value="pippopassword" /> </bean> <bean id="transManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" > <property name="dataSource" ref="dataSource" /> </bean> <context:component-scan base-package="com.pierre.sourcing.dao" /> </beans>
Important annotations
org.springframework.test.annotation.Rollback; indicates whether the transaction for a transactional test method should be rolled back after the test method has completed.
org.springframework.transaction.annotation.Transactional
org.springframework.test.context.ContextConfiguration @ContextConfiguration("/test-config.xml") declares the application context resource locations or the annotated classes that will be used to load the context.
org.springframework.test.context.jdbc.Sql at class level, like in @Sql(scripts = "/preparation-sqls/cleanup-test-data.sql") , to run SQL BEFORE the test execution
org.springframework.test.context.junit4.SpringRunner (@RunWith(SpringRunner.class) )
org.springframework.beans.factory.annotation.Autowired
No comments:
Post a Comment