【发布时间】:2020-09-24 09:20:52
【问题描述】:
我正在尝试使用 codeception 为我的 PHP 后端编写测试。有一次我需要测试是否对数据库进行了更改。
我(尝试)按照代码接收教程中的步骤进行操作,但它不起作用。我已经通过 composer 安装了 Db 模块,并在我的 *.suite.yml 和我的 codeception.yml 中添加了配置,它们都不起作用。 AcceptanceTester 类和 FunctionalTester 类都不包含任何与数据库相关的函数。
我发现的每个教程都说“只使用函数”,但没有解释如何获取它们/将它们添加到测试器。 codeception 网站上的教程只是安装模块,没有任何解释使用这些功能,甚至没有说明在哪个套件中。
我还尝试创建一个集成测试,但找不到任何描述如何正确执行它的来源。根据我的理解(来自官方页面),我创建了一个新的 integration.suite.yml 文件(见下文)并用它创建了一个测试。但是测试人员仍然无法识别任何数据库功能。
codeception.yml:
extensions:
enabled:
- Codeception\Extension\RunFailed
- Db:
dsn: 'mysql:host=localhost;dbname=XXX'
user: 'XXX'
password: 'XXX'
dump: 'tests/_data/dump.sql'
populate: true
cleanup: true
populator: 'mysql -u $user -h $host $dbname < $dump'
integration.suite.yml
actor: UnitTester
modules:
enabled:
- Asserts
- Db
- \Helper\Unit
【问题讨论】:
标签: codeception