Hallo zusammen,
ich habe OXID Developer VM installiert und versucht, Tests ohne Erfolg auszuführen.
Dafür habe ich das Folgendes gemacht:
- Installieren OXID Developer VM
- Besuchen www.oxideshop.dev, um zu wissen, dass alles ok ist.
- Verbinden zum Server durch Putty
- Führen den folgenden Befehl aus:
cd /var/www/oxideshop/source
- Führen den folgenden Befehl aus:
vendor/bin/runtests /var/www/oxideshop/tests/Unit/Modules/oe/invoicepdf/models/InvoicePdfOxOrderTest.php
- Phpunit wird nicht ausgeführt und ich bekomme die folgende Ausgabe:
dir=$(d=${0%[/\\]*}; cd "$d"; cd '../phpunit/phpunit' && pwd)
# See if we are running in Cygwin by checking for cygpath program
if command -v 'cygpath' >/dev/null 2>&1; then
# Cygwin paths start with /cygdrive/ which will break windows PHP,
# so we need to translate the dir path to windows format. However
# we could be using cygwin PHP which does not require this, so we
# test if the path to PHP starts with /cygdrive/ rather than /usr/bin
if [[ $(which php) == /cygdrive/* ]]; then
dir=$(cygpath -m "$dir");
fi
fi
dir=$(echo $dir | sed 's/ /\ /g')
"${dir}/phpunit" "$@"
Ich habe ein bisschen geschaut und ich habe gesehen, dass der Befehl:
vendor/bin/runtests /var/www/oxideshop/tests/Unit/Modules/oe/invoicepdf/models/InvoicePdfOxOrderTest.php
führt den folgenden Befehl aus:
TEST_SUITE='/var/www/oxideshop/tests' php /var/www/oxideshop/source/vendor/bin/phpunit --bootstrap /var/www/oxideshop/source/vendor/oxid-esales/testing-library/bootstrap.php -c '/var/www/oxideshop/tests/phpunit.xml' '/var/www/oxideshop/tests/Unit/Modules/oe/invoicepdf/models/InvoicePdfOxOrderTest.php'
Danach habe ich derselbe Befehl ohne “php” ausgeführt:
TEST_SUITE='/var/www/oxideshop/tests' /var/www/oxideshop/source/vendor/bin/phpunit --bootstrap /var/www/oxideshop/source/vendor/oxid-esales/testing-library/bootstrap.php -c '/var/www/oxideshop/tests/phpunit.xml' '/var/www/oxideshop/tests/Unit/Modules/oe/invoicepdf/models/InvoicePdfOxOrderTest.php'
Nach diese Ausführung wird phpunit ausgeführt.
Diese “php” wird in der Zeile 33 von der Datei:
/var/www/oxideshop/source/vendor/oxid-esales/testing-library/bin/runtests
$php = getenv('PHPBIN') ? getenv('PHPBIN') : 'php';
Könntet ihr mir erklären, warum den folgenden Befehl nicht läuft? Mache ich etwas falsch?
vendor/bin/runtests /var/www/oxideshop/tests/Unit/Modules/oe/invoicepdf/models/InvoicePdfOxOrderTest.php
Danke schön im Voraus
PS: Für die Installation von OXID Developer VM habe ich https://github.com/OXID-eSales/oxvm_eshop benutzt.