gpt4 book ai didi

java - 如何在Play 2.1中正确编写数据库集成测试?

转载 作者:太空宇宙 更新时间:2023-11-04 07:41:46 26 4
gpt4 key购买 nike

我是 Play 的新人! 2.1.我正在尝试 TDD 我的数据库集成测试。阅读网站上的示例后。我这样写了我的测试。


@Test
public void shouldGetDealName() {
running(fakeApplication(), new Runnable() {
public void run() {
List books = Book.find.all();
Assert.assertEquals(books.size(), 1);
}
});
}

我的问题是,我是否需要始终将代码包装在 running(fakeAppliation()... 中?因为如果我在没有 fakeApplication 的情况下运行此代码。它似乎不起作用。如果必须这样,那么是否有更好的方法在 Java 中执行此操作?对于我来说,每次进行集成或功能测试时都将代码包装在该 block 中似乎是错误的。

谢谢。

最佳答案

假设您想使用内存数据库并且希望为每个测试重新创建它,您可以这样做:

public class ApplicationTest extends WithApplication {
@Before
public void setup() {
start(fakeApplication(inMemoryDatabase(), fakeGlobal()));
}

@Test
public void shouldGetDealName() {
List books = Book.find.all();
Assert.assertEquals(books.size(), 1);
}
}

关于java - 如何在Play 2.1中正确编写数据库集成测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15960377/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com