1

Gibt es eine Referenz der Implementierung von WorPress (WP_UnitTestCase) mit Gitlab CI?Wordpress CI in Gitlab

Ich habe bereits versucht, die .gitlab-ci.yml zu konfigurieren, implementiert den Build, aber kein Test ausgeführt werden.

Dies ist die .gitlab-ci.yml Datei:

image: php:5.6 

variables: 
    # Configure mysql service (https://hub.docker.com/_/mysql/) 
    MYSQL_DATABASE: wordpress_tests 
    MYSQL_ROOT_PASSWORD: mysql 

before_script: 
    # Install dependencies 
    - bash ci/docker_install.sh wordpress_tests root mysql tutum-wordpress latest 

stages: 
    - test 

# test:PHP5.3:MySQL: 
# image: tetraweb/php:5.3 
# script: 
# - phpunit --configuration phpunit.xml.dist 

test:PHP5.4:MySQL: 
    image: tetraweb/php:5.4 
    services: 
    - tutum/wordpress:latest 
    script: 
    - phpunit --configuration phpunit.xml.dist 

# test:PHP5.6:MySQL: 
# image: php:5.6 
# script: 
# - phpunit --configuration phpunit.xml.dist 

# test:PHP7:MySQL: 
# image: php:7 
# script: 
# - phpunit --configuration phpunit.xml.dist 
+1

Es scheint, als ob Sie nach einem Tutorial fragen, das bei SO nicht im Thema ist. Ich würde vorschlagen, dass Sie Ihre Frage mit allen Informationen erweitern: was Sie versucht haben, den Inhalt Ihrer '.gitlab-ci.yml', welcher Teil fehlschlägt, das Build-Protokoll usw. – tmt

+0

@cascaval Ich werde mit dem Code aktualisieren , aber es funktioniert nicht. Ich fragte, weil ich es für wichtig hielt, dass die WP-Community CI in einem kostenlosen Tool wie gitlab implementiert. – StevenV

Antwort

2

Nach viel Versuch und Irrtum ich es für mich zu arbeiten habe, können Sie die Tests für PHP5.3 durch PHP7.0 sehen läuft richtig für ein Test-Plugin Ich erstellte here

Das ist, wie meine .gitlab-ci.yml aussieht. und das Shell-Skript zum Einrichten der Umgebung ist here

Um dies in Ihrem Projekt zu verwenden, kopieren Sie einfach die .gitlab-ci.yml, bin/install_gitlab_tests.sh zu Ihrem Projekt.

+0

Es funktionierte großartig, jetzt ist Build, und testet richtig :) – StevenV

+0

die Antwort funktionierte ok. Aber heutzutage zeigt mir gitlab diesen Fehler: Schwerwiegender Fehler: Klasse 'PHPUnit_Framework_TestCase' nicht in /tmp/wordpress-tests-lib/includes/testcase.php in Zeile 15 gefunden. – StevenV

+0

WP CLI unterstützt nun Gitlab CI im Scaffold-Befehl, Dies sollte erstellt werden all die richtigen Dateien für dein Plugin/Theme - http://wp-cli.org/commands/scaffold/plugin-tests/ –

1

Ich hatte ein ähnliches Problem. Sieht aus als wäre es ein Wordpress-Kompatibilitätsproblem mit phpunit 6.0. Korrektur durch Downgranding von phpunit auf 5.6. Siehe: https://github.com/wp-cli/wp-cli/issues/3802

+0

Ich sehe, ich benutze das tetraveb/php: 7.0 Bild, jedes andere Bild für Wordpress CI, das die phpunit 5.6 hat? – StevenV

+0

Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier aufzunehmen und den Link als Referenz zur Verfügung zu stellen. Nur-Link-Antworten können ungültig werden, wenn sich die verknüpfte Seite ändert. - [Aus Bewertung] (/ review/low-quality-posts/15650233) – Tom

+0

@StevenV Ich verwende nicht Wordpress CI, also habe ich gerade die composer.json-Anforderung für das Plugin, das ich gerade teste, geändert. –