Codeception。测试数据库以进行验收测试或纯PHP的功能测试

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

有没有办法为纯PHP上编写的应用程序运行验收或功能Codeception测试并使用测试数据库???

取决于文档,不可能使用测试数据库进行验收测试

在验收测试中,您的测试通过Web服务器与应用程序进行交互。这意味着测试和应用程序使用相同的数据库。您应该在应用程序使用的Db模块中提供相同的凭据,然后您可以访问数据库以进行断言(请参阅“数据库操作”)并执行自动清理。

Source

从另一方面来看,由于功能测试需要使用其中一个框架模块,因此无法在纯PHP上运行功能测试。

我只是开始学习Codeception,可能会错过什么?

感谢您的任何帮助!

php codeception
1个回答
1
投票

是的,您可以让您的验收测试使用您的测试数据库。您需要设置应用程序以在测试环境中使用测试数据库。

例如,如果您的应用程序在本地URL www.mywebsite.dev上运行,您可以通过www.mywebsite.test访问时使用测试数据库进行配置。在应用程序的某个位置,您可以检查主机,如果主机是www.mywebsite.test则让应用程序连接到测试数据库,否则连接到开发数据库。

或者甚至更好,如果你使用像.env这样的配置,你可以设置一个环境变量APP_ENV=test并在连接到数据库之前在你的应用程序中检查它的值。

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