|
16
|
| neu242 · 技术社区 · 16 年前 |
|
|
1
19
dbUnit不创建表。在XML文件中给出的有限信息下,它也无法实现。我相信Hibernate可以创建表。
第二个原因是速度。我发现创建内存中的数据库比简单地连接到现有数据库花费的时间要长得多。 第三个原因是拆除没有破坏性(启动会擦除数据库)。这意味着我可以在数据库上运行被测SQL,以帮助找出测试失败的原因。 更新 : 20171115 JUnit rules that start up a real instance of the database server 什么的 FlywayDB 构建数据库(在live中使用与在test中相同的脚本,由应用程序负责构建数据库)。它比使用预构建的数据库要慢得多。但是,使用定义良好的微服务(从而减少了需要测试的功能)和非常严格的数据库测试,您可以迁移这些问题,并获得始终与实时数据库匹配的本地数据库的好处。 这确实意味着测试破坏总是具有破坏性的,但一个位置合适的断点可以解决这一问题。 |
|
|
2
4
…几年后,现在我们有了更好的选择 SpringBoot/SpringJDBC可以使用普通JDBC初始化数据库。
https://docs.spring.io/spring-boot/docs/current/reference/html/howto-database-initialization.html |
|
|
3
0
here
并且仍然会得到一个NoSuchTableException,那么架构就有问题了。在你发疯之前,试着将schema参数设置为
公开的
当您创建
|