感染引发异常,但为什么以及如何处理呢?

任务是错误确实可以正确解释该问题。


错误:


在运行 Infection 之前,项目测试必须处于通过状态。

Infection 以随机顺序运行测试套件。确保您的测试没有隐藏的依赖项。


您可以添加这些属性phpunit.xml来检查它:


如果您不想让 Infection 以随机顺序运行测试,请将 设置executionOrder为某个值,例如


检查执行的命令以确定问题: '/usr/bin/php7.2' '-d' 'zend_extension=xdebug.so' '/mnt/e/dev/bin/phpunit' '--configuration' '/mnt /e/dev/var/infection/infection/phpunitConfiguration.initial.infection.xml

' '-vvv'

PHPUnit 报告的退出代码为 143。

请参阅以下 PHPUnit 的输出:

STDERR:


无法加载 Xdebug - 它已经加载


我尝试执行以下语句很简单:


vendor/bin/infection --threads=10 --only-covered

但是当我尝试在那个错误中解释的那个语句时,测试将成功运行,但这只是我没有突变测试的单元测试。


这是我的 phpunit.xml.dist 中 phpunit 标记的摘要


<phpunit .... backupGlobals="false" colors="false" bootstrap="/mnt/e/dev/RESTler/config/bootstrap.php" executionOrder="random" resolveDependencies="true" cacheResult="false" stopOnFailure="true" stderr="false" .../>

版本是:

  • PHPUnit 版本:7.5.15

  • PHP 7.2.22-1+ubuntu18.04.1+deb.sury.org+1

  • 感染 - PHP 突变测试框架 0.14.2

  • Symfony 框架 4.2

有没有人暗示我可以尝试什么或我的错误在哪里?


梦里花落0921
浏览 84回答 1
1回答

翻阅古今

在我漫长的旅程之后,我发现了一些东西。但不要为什么它不适用于我的配置。这对我来说是正确的陈述,在我xdebug.so从我的php.iniinfection --threads=10 --only-covered --initial-tests-php-options='-d zend_extension=xdebug.so'我认为这就足够了,但随后出现了 memory_limit 问题,该凸轮以相同的方式修复infection --threads=10 --only-covered --initial-tests-php-options='-d zend_extension=xdebug.so -d memory_limit=-1'现在它运行了,我有一些待办事项:).: 被杀, M: 逃脱, S: 未发现, E: 致命错误, T: 超时.........M..MMMMMMM.MMMMM.MMMM.M.MMMMMMMM.MMMM.M (50 / 89) .....MM....... ..MMMMMM.MMMM.... (89 / 89)产生了 89 个突变:&nbsp; 45 mutants were killed&nbsp; &nbsp;0 mutants were not covered by tests&nbsp; 44 covered mutants were not detected&nbsp; &nbsp;0 errors were encountered&nbsp; &nbsp;0 time outs were encountered指标:&nbsp; &nbsp;Mutation Score Indicator (MSI): 50%&nbsp; &nbsp;Mutation Code Coverage: 100%&nbsp; &nbsp;Covered Code MSI: 50%如果有人使用phpdbg而不是xdebug并且有那个 memory_limit 问题,对我来说,如果我已经覆盖了我的 phpdbg 的新 php.ini/etc/php/7.3/phpdbg/php.ini我希望这里的这篇文章再次对其他人有所帮助。我不先删除它。也许有一天另一个模式。
打开App,查看更多内容
随时随地看视频慕课网APP