当前位置: 首页 > 知识库问答 >
问题:

Quarkus测试中如何清除可嵌入类型的数据库表

司徒焕
2023-03-14

我需要清除Quarkus应用程序中数据库的表。我可以通过调用entity.deleteAll()为扩展PanacheEntityPanacheEntityBase的实体实现这一点。如何清除可嵌入类型的表?

共有1个答案

荣俊
2023-03-14

一个可能的解决方案是使用带有Flyway的JUnit5扩展来管理您的模式,并在每次测试中重置数据库的状态

您可以在这里找到扩展:https://github.com/radcortez/flyway-junit5-extensions/

这里的Quarkus示例:https://github.com/radcortez/flyway-junit5-extensions/tree/master/examples/Quarkus

 类似资料:
  • 问题内容: 我已经在项目中编写了一些JUnit测试,这些测试用于在setup方法中填充数据。现在我已经将maven添加到我的项目中,并且我想执行所有来自maven的测试用例,即使用mvn test。现在的问题是,在运行每个测试类之后,不会清除我的数据库。每个类的测试用例运行后,我需要清除HSQLDB。 问题答案: 您可以通过删除架构来清除数据。默认模式称为PUBLIC。如果执行下面的SQL语句,它

  • 我们最近决定使用Quarkus创建我们的新项目。现在,我们正在努力决定要使用哪些测试库: Quarkus实现(例如、) 标准测试库: 我们已经熟悉 非夸库的实现,因此,如果我们决定继续使用这些库,我们不需要学习任何新知识。 使用Quarkus库,我们有了一些新的可用特性,如< code>@InjectMock或< code>@QuarkusTest,这似乎使测试类更加整洁。 我正在寻找的是找出使用

  • 我要从Thorntail搬到Quarkus。在我的测试中,我曾创建一个@deployment方法,在该方法中,我只放置测试所需的内容。特别是,我没有把一个类放在@Startup注释中(因为我不想测试它…)。当我移动到QUARKUS时,我抑制了de@deployment静态方法,然后当我启动测试时@Startup是。。。一开始,发生了很多不好的事情,阻止我测试我想要测试的东西(好吧,它崩溃了,因为它

  • 我们可以通过以下查询删除所有节点和关系。 但是新创建的节点将内部id作为({最后一个节点内部id}+1)。它不会重置为零。 我们如何重置neo4j数据库,比如新创建的节点将获得id为0? 从2.3开始,我们可以删除所有有关系的节点,

  • 我正在使用Spring boot framework(V2.0.2)构建一个REST服务,其中我有在数据库上运行的集成测试。我搜索了很多关于在测试前清理数据库的文章,但不幸的是,我发现它们要么效率低,要么是一个黑客,不适合Spring Boot。你能不能,请忍耐一下,给我一个解决这个问题的好办法? 理想情况下,我认为不应该在每次测试之前清除数据库,而是在一组测试之前清除数据库,比如suite或每个

  • 在quarkus应用程序中给出的驱动程序名称是什么? 如果它不提供本机支持,那么我们如何修复maven项目中添加的依赖关系? 注:官方网站上没有提到与Oracle有关的内容->https://quarkus.io/guides/datasource#multiple-datasources