douhuai4155
2017-04-26 15:07
浏览 48
已采纳

使用Symfony 3.2.7在KernelTestCase.php中找不到TestCase

I'm having problems when running Symfony (PHPUnit integrated) tests in my server, it works as expected in my build host but when I upload them to Gitlab CI via Git it throws me the next error:

Class 'PHPUnit\Framework\TestCase' not found in /project/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Test/KernelTestCase.php on line 24

I tried executing phpunit, phpunit ., phpunit tests all with the same results

It was working until a few weeks ago.

My server Symfony version is 3.2.7 and the PHPUnit version is 4.2.6

图片转代码服务由CSDN问答提供 功能建议

我在服务器中运行Symfony(PHPUnit集成)测试时遇到问题,它在我的构建中按预期工作 主机,但当我通过Git将它们上传到Gitlab CI时,它会引发下一个错误:

在/ project / vendor /中找不到类'PHPUnit \ Framework \ TestCase' 第24行的symfony / symfony / src / Symfony / Bundle / FrameworkBundle / Test / KernelTestCase.php

我尝试执行 phpunit ,< 代码> phpunit。 phpunit tests 都具有相同的结果

它在几个星期前才开始工作。 \ n

我的服务器Symfony版本是3.2.7,PHPUnit版本是4.2.6

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

  • doufei2355 2017-04-26 15:33
    最佳回答

    PHPUnit version is 4.2.6 is very old, and does not contain any Namespaced classes. The Symfony KernelTestCase.php now uses those PHPUnit namespaces to pull on the TestCase class.

    There is forward compatibility in PHPUnit 5.4.3, though v5.7, if not 6.0 would be better.

    So, you'll want to upgrade your composer.json file and tests to use the new namespaces.

    评论
    解决 无用
    打赏 举报