代码接收。用于验收测试的测试数据库,或纯 PHP 的功能测试
Codeception. Test database for acceptance tests, or functional tests for pure PHP
有没有办法 运行 对纯 PHP 上编写并使用测试数据库的应用程序进行验收或功能 Codeception 测试???
取决于文档不可能使用测试数据库进行验收测试
In acceptance tests, your tests are interacting with the application through a web server. This means that the test and the application work with the same database. You should provide the same credentials in the Db module that your application uses, then you can access the database for assertions (seeInDatabase actions) and to perform automatic clean-ups.
从另一方面来看,似乎不可能 运行 对纯 PHP 进行功能测试,因为功能测试需要使用其中一个框架模块。
我才开始学习 Codeception,会不会漏掉一些东西?
感谢您的帮助!
是的,您可以让您的验收测试使用您的测试数据库。您将需要设置您的应用程序以在您的测试环境中使用测试数据库。
例如,如果您的应用程序在本地 url www.mywebsite.dev
上运行,您可以将其配置为在通过 www.mywebsite.test
访问时使用测试数据库
您可以在应用程序的某处检查主机,如果主机是 www.mywebsite.test
让应用程序连接到测试数据库,否则连接到开发数据库。
或者更好的是,如果您使用的是 .env 之类的配置,则可以设置一个环境变量 APP_ENV=test
并在连接到数据库之前在您的应用程序中检查它的值。
有没有办法 运行 对纯 PHP 上编写并使用测试数据库的应用程序进行验收或功能 Codeception 测试???
取决于文档不可能使用测试数据库进行验收测试
In acceptance tests, your tests are interacting with the application through a web server. This means that the test and the application work with the same database. You should provide the same credentials in the Db module that your application uses, then you can access the database for assertions (seeInDatabase actions) and to perform automatic clean-ups.
从另一方面来看,似乎不可能 运行 对纯 PHP 进行功能测试,因为功能测试需要使用其中一个框架模块。
我才开始学习 Codeception,会不会漏掉一些东西?
感谢您的帮助!
是的,您可以让您的验收测试使用您的测试数据库。您将需要设置您的应用程序以在您的测试环境中使用测试数据库。
例如,如果您的应用程序在本地 url www.mywebsite.dev
上运行,您可以将其配置为在通过 www.mywebsite.test
访问时使用测试数据库
您可以在应用程序的某处检查主机,如果主机是 www.mywebsite.test
让应用程序连接到测试数据库,否则连接到开发数据库。
或者更好的是,如果您使用的是 .env 之类的配置,则可以设置一个环境变量 APP_ENV=test
并在连接到数据库之前在您的应用程序中检查它的值。