我正在开发一个使用端到端测试和
我知道以前的版本中每个环境都有不同的前置控制器,比如
那么Symfony是如何知道为端到端测试加载测试环境的呢?
.env
文件的PHP项目。但是在运行测试之前,我需要修改.env
文件,将其指向测试数据库(而不是开发数据库)。当我在Symfony项目上工作时,我认为我不需要这样做,因为它会自动加载测试环境。我知道以前的版本中每个环境都有不同的前置控制器,比如
app.php
、app_dev.php
等等,但据我所知现在不再这样了。那么Symfony是如何知道为端到端测试加载测试环境的呢?
WebTestCase
时,它会启动一个新的PHP进程并带有一个监听请求的服务器?您有关于这发生在哪里的任何信息吗? - mickadooWebTestCase
不使用内部Web服务器,它实例化Request
对象并直接将其传递给应用程序内核,没有实际的HTTP请求。但是PantherTestCase
使用Web服务器,APP_ENV
仍然适用。 - msgPantherTestCase
是如何工作的,因为我想它应该是向本地服务器发送请求,但似乎Symfony会自己启动服务器,所以可以为其设置环境变量。 - mickadoo