java - Selenium 测试后的数据库清理

标签 java hibernate spring selenium selenium-webdriver

在我使用 Maven 运行一堆 Selenium (jUnit4) 测试后,我想做一个数据库清理(删除他们插入的东西等)。这是一个运行在 Tapestry/Spring/Hibernate 和遗留数据库上的旧项目。我想在 @After 注释方法中进行清理 - 但 DAO/Managers/SessionFactory 的注入(inject)不起作用。

测试是这样进行的:我在一个控制台中运行 (mvn jetty:run-war) 应用程序,然后在另一个控制台中开始测试 (mvn test) - 它访问 localhost:8080 上的应用程序。

最佳答案

几种可能的方法:

  1. 使用dbunit ,旨在将数据库返回到测试之间的已知状态。
  2. 使用 try{}finally{} block 将每个测试包装在数据库事务中,最终回滚事务。
  3. 严格使用数据库进行测试,不要担心。让您的测试每次都创建唯一标识/命名的值,这样您就不会发生冲突,否则不要采取任何行动。

关于java - Selenium 测试后的数据库清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4680869/

相关文章:

java - 我无法将列表项插入对象

java - 如何在 hibernate 中指定 Double 的精度?

java - 如何在自定义 JSR-303 Bean 验证约束中使用 session 属性(验证码)?

java - Spring 启动 2 Oauth2

java - Spring Boot - Junit 无法在 junit 测试中加载配置属性

Java 定义 : Label, token

java - ScrollView 中的静态图像

java - 每当我在 servlet 中更新时,我发现 tomcat 6.0 中存在内存泄漏

java - java中的AudioClip和Clip有什么区别?

java - 抽象中的功能和实现细节之间有什么区别?