如何使用 Codeception 确保对象不在数据库中?

问题描述 投票:0回答:2

我正在开发 Symfony 应用程序并使用 CodeCeption 编写一些测试。

我需要确保在数据库中创建一些实体,为此我需要确保它们在执行测试方法之前不存在。

有没有类似的东西:

$I->dontHaveInRepository($entity)

我已经检查了文档,但没有找到方法来做到这一点。

谢谢!

symfony codeception
2个回答
0
投票

Codeception 断言方法通常以

see
开头。
have
方法执行一些设置工作,例如将记录插入数据库。

所有

see
方法都有
dontSee
对应项。

所以你一直在寻找的方法是

dontSeeInRepository
Doctrine2 模块的方法


0
投票

使用 Codeception 的

Db
模块和
seeNumRecords
可用于检查数据库中是否不存在行,例如:

$I->seeNumRecords(0, 'my_table', ['col_a' => $var_a, 'col_b' => $var_b]);

https://codeception.com/docs/modules/Db#seeNumRecords

© www.soinside.com 2019 - 2024. All rights reserved.