Symfony 3单元测试在本地传递,但不在Travis

时间:2017-07-27 14:20:41

标签: symfony unit-testing phpunit travis-ci

我有一个Symfony 3项目,测试通过php 5.5& 5.6但在7.0和7.1中失败。使用Symfony 2.8时,所有相同的测试都通过了。 所有测试都在本地传递,但有些测试在travis上失败。 显示测试失败:https://travis-ci.org/zikula/core/builds/257745627 travis文件:https://github.com/zikula/core/blob/master/.travis.yml#L40 我希望这里有人会有一些见解。我几乎完全失去了。

最初在Travis文件中我刚刚运行phpunit并且直到最近我才开始收到此处报告的错误(https://github.com/symfony/symfony/issues/19532),例如YamlFileLoader - Undefined class constant 'PARSE_CONSTANT'

所以我尝试了./src/vendor/symfony/symfony/src/Symfony/Bridge/PhpUnit/bin/simple-phpunitbin/pnpunit(当前设置)并且它们都失败了(但不同!)

因为它当前已设置我在测试失败之前得到这些错误:

  

$ ./bin/phpunit   PHP警告:PHP启动:无法加载动态库&#39; /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/apc.so' - /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/apc.so:无法打开共享对象文件:第0行的“未知”中没有此类文件或目录< / p>      

警告:PHP启动:无法加载动态库&#39; /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/apc.so' ; - /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/apc.so:无法打开共享对象文件:第0行的“未知”中没有此类文件或目录< / p>      

PHP警告:PHP启动:无法加载动态库&#39; /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/memcache.so&# 39; - /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/memcache.so:无法打开共享对象文件:第0行的“未知”中没有此类文件或目录< / p>      

警告:PHP启动:无法加载动态库&#39; /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/memcache.so' ; - /home/travis/.phpenv/versions/7.0.7/lib/php/extensions/no-debug-zts-20151012/memcache.so:无法打开共享对象文件:第0行的“未知”中没有此类文件或目录< / p>

所以我猜这是相关的,因为我没有在本地或在PHP 5.5 / 5.6中获得这些错误

任何想法如何解决这个问题?提前谢谢!

1 个答案:

答案 0 :(得分:0)

首先,在PHP 7上运行的作曲家可能会带来不同于在PHP 5上运行的依赖项版本。这是因为许多软件包最近都在丢弃PHP 5支持。也许你正在获取一个在PHP 7上表现不同的依赖项。

另一种选择是你的代码在PHP 7上的行为不同。例如,如果你得到的失败与排序有关,那么你的算法可能会以稍微不同的方式排序,具体取决于它运行的PHP版本。