我无法绕过这个测试问题。
我为测试存储库编写了一个测试,该存储库使用内存实现,如:
class RepositoryTest extends TestCase {
function setUp() {
// set implementation in the container
container()->set(Repository::class, InMemoryRepository::class);
}
function test_it_can_save() {...}
function test_it_can_delete() {...}
function test_it_can_query() {...}
}
然后我为此存储库添加了另一个实现。我们说它是SQLRepository
。
我需要针对我的新实现运行完全相同的测试集。
我想为相同的测试设置另一个上下文。
我该怎么做?
答案 0 :(得分:0)
好的,我想我知道该怎么做。
我只需要扩展我的初始测试并重新加载setUp
方法,如下所示:
class SQLRepositoryTest extends RepositoryTest {
function setUp() {
// set another implementation in the container
container()->set(Repository::class, SQLRepository::class);
}
}