spring整合testng需在spring配置文件中添加入下配置:
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations" value="classpath:config/jdbc.properties" />
</bean> -- 注入BeanFactory
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName"><value>${driver}</value></property>
<property name="url"><value>${url}</value></property>
<property name="username"><value>${username}</value></property>
<property name="password"><value>${password}</value></property>
</bean> -- 注入dataSource
<bean id="txMgr" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean> -- 注入事物控制dataSourceTransactionManager
AbstractTestNGSpringContextTests:測試類只有繼承了該類才能擁有注入實例能力,否則注入報錯
AbstractTransactionalTestNGSpringContextTests:測試類繼承該類后擁有注入實例能力,同時擁有事物控制能力
@Rollback注解:默認為true,即case執行前開啟事物,case結束后rollback回滾事物。
如果不想回滾可以在case上添加注解@Rollback(false)
Demo:

