我正在尝试使用Codeception
对使用Symfony 4
的项目进行一些功能验收测试。项目环境是用docker容器构建的(只是简单的pgsql容器和php容器,它们运行php bin/comnsole serve
并将8000暴露给不同的本地端口)。我遇到了运行用symfony扩展指定的测试会导致错误的问题:
bin/codecept run -v
Codeception PHP Testing Framework v2.4.0
Powered by PHPUnit 7.0.2 by Sebastian Bergmann and contributors.
In Symfony.php line 300:
[Codeception\Exception\ModuleRequireException]
[Symfony] module requirements not met --
Kernel class was not found in /srv/dsp-blacklister/src/Kernel.php. Specify directory where file with Kernel class for your application is located with `app_path` parameter.
但内核位于那里:
/srv/dsp-blacklister/src # ls -la
total 4
drwxr-xr-x 7 root root 224 Feb 28 09:35 .
drwxr-xr-x 26 root root 832 Feb 28 16:18 ..
drwxr-xr-x 3 root root 96 Feb 28 08:16 Controller
drwxr-xr-x 5 root root 160 Feb 28 10:39 Entity
-rw-r--r-- 1 root root 2010 Feb 28 09:35 Kernel.php
drwxr-xr-x 4 root root 128 Feb 28 11:39 Migrations
drwxr-xr-x 3 root root 96 Feb 28 09:09 Repository
3条答案
按热度按时间ie3xauqp1#
你的内核在一个不同的命名空间中。目前还没有一个解决这个问题的方法,除了下面的临时破解(添加到你的内核类的底部)
dfddblmv2#
现在可以使用
kernel_class
参数指定内核名称空间:e5nqia273#
对于Codreceive v5.0.5,添加到所有套装:
对我有用。