[英]^How to configure phing build.xml to use drupal aotoloader
我已經在我的 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 類
如果您使用的是 Composer,那么autoload.php
文件位於供應商目錄中,請嘗試以下操作:
<autoloader autoloaderpath="vendor/autoload.php"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.