【发布时间】:2019-11-25 16:45:43
【问题描述】:
我已经在我的 drupal 8 路径的根目录下完成了 build.xml,当我在我的 phpunit 测试上运行 ./vendor/bin/phing 以将 xml 日志转换为 html 时,我没有预期结果。那么如何修改我的 build.xml
这里是给我灵感的链接https://cweiske.de/tagebuch/visualizing-phpunit-runs.htm
我的 build.xml
<project name="svie_tarificateur_report" default="spheria-report" basedir=".">
<!--<taskdef name="myecho" classname="MyEchoTask" />-->
<target name="spheria-report">
<echo msg="Hello, Doric!" />
<autoloader autoloaderpath="./autoload.php"/>
<phpunitreport infile="log.junit.xml"
format="frames"
todir="html"
styledir="/usr/share/php/data/phing/etc/"
/>
</target>
</project>
我的 phpunit 日志
<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
<testsuite name="modules/custom" tests="2" assertions="2" errors="0" failures="0" skipped="0" time="0.008327">
<testsuite name="Drupal\Tests\svie_tarificateur\Unit\CalculateurTest" file="/var/www/html/modules/custom/svie_tarificateur/tests/src/Unit/CalculateurTest.php" tests="2" assertions="2" errors="0" failures="0" skipped="0" time="0.008327">
<testcase name="testAgeSouscription" class="Drupal\Tests\svie_tarificateur\Unit\CalculateurTest" classname="Drupal.Tests.svie_tarificateur.Unit.CalculateurTest" file="/var/www/html/modules/custom/svie_tarificateur/tests/src/Unit/CalculateurTest.php" line="43" assertions="1" time="0.008219"/>
<testcase name="testAssureNo" class="Drupal\Tests\svie_tarificateur\Unit\CalculateurTest" classname="Drupal.Tests.svie_tarificateur.Unit.CalculateurTest" file="/var/www/html/modules/custom/svie_tarificateur/tests/src/Unit/CalculateurTest.php" line="50" assertions="1" time="0.000108"/>
</testsuite>
</testsuite>
</testsuites>
我希望有一个生成的 html,但我有这个错误
[root@d15936c9eaa8 html]# ./vendor/bin/phing
Buildfile: /var/www/html/build.xml
svie_tarificateur_report > spheria-report:
[echo] Hello, Doric!
[autoloader] Loading autoloader from ./autoload.php
BUILD FAILED
ReflectionException: Class Drupal\Tests\svie_tarificateur\Unit\CalculateurTest does not exist in /var/www/html/vendor/phing/phing/classes/phing/tasks/ext/phpunit/PHPUnitReportTask.php:229
Stack trace:
#0 /var/www/html/vendor/phing/phing/classes/phing/tasks/ext/phpunit/PHPUnitReportTask.php(229): ReflectionClass->__construct('Drupal\\Tests\\sv...')
#1 /var/www/html/vendor/phing/phing/classes/phing/tasks/ext/phpunit/PHPUnitReportTask.php(269): PHPUnitReportTask->fixDocument(Object(DOMDocument))
#2 /var/www/html/vendor/phing/phing/classes/phing/UnknownElement.php(100): PHPUnitReportTask->main()
#3 /var/www/html/vendor/phing/phing/classes/phing/Task.php(283): UnknownElement->main()
#4 /var/www/html/vendor/phing/phing/classes/phing/Target.php(336): Task->perform()
#5 /var/www/html/vendor/phing/phing/classes/phing/Target.php(366): Target->main()
#6 /var/www/html/vendor/phing/phing/classes/phing/Project.php(898): Target->performTasks()
#7 /var/www/html/vendor/phing/phing/classes/phing/Project.php(868): Project->executeTarget('spheria-report')
#8 /var/www/html/vendor/phing/phing/classes/phing/Phing.php(723): Project->executeTargets(Array)
#9 /var/www/html/vendor/phing/phing/classes/phing/Phing.php(200): Phing->runBuild()
#10 /var/www/html/vendor/phing/phing/classes/phing/Phing.php(347): Phing::start(Array, NULL)
#11 /var/www/html/vendor/phing/phing/bin/phing.php(58): Phing::fire(Array)
#12 /var/www/html/vendor/phing/phing/bin/phing(14): require_once('/var/www/html/v...')
#13 {main}
Total time: 0.1182 seconds
因为它找不到我的 drupal 类
【问题讨论】:
-
请分享您的
autoload.php和Drupal\Tests\svie_tarificateur\Unit\CalculateurTest课程的内容。它似乎有错误的命名空间或错误的自动加载文件。