Ich habe die Aufgabe, die kontinuierliche Integration zu untersuchen, und eines der Dinge, die ich betrachte, ist Gitlab CI.
Ich habe Gitlab, Gitlab CI und zwei Läufer aufgestellt, aber ich bin absolut darauf angewiesen, wie ich das wirklich nutzen kann. Wie könnte ich etwas wie einen Komponententest erstellen, den zum Repo schieben und einen der Läufer testen lassen?
Oder verpasse ich den Punkt hier völlig? Ich bin neu in diesem CI-Zeug (wie in, ich wurde gebeten, dies gestern zu tun und das ist das erste Mal, dass ich in Kontakt mit CI gekommen bin), also wenn ich den Punkt verpasse, lass es mich wissen und zeige mich auf einige Ressourcen.
Vielen Dank.
Es stellt sich heraus, dass in den Einstellungen für die Runner oder den Repo im CI-Panel ein Skripten-Fenster vorhanden ist. Dies kann verwendet werden, um Shell-Befehle wie phpunit -c /path/to/tests
direkt auszuführen und herauszufinden, ob die Tests fehlgeschlagen oder bestanden haben.
Ich denke, das könnte daran liegen, dass PHPUnit auf stderr
statt auf stdout
ausgibt, aber ich weiß es nicht wirklich - nicht Teil des Bereichs, also habe ich noch nicht nachgeschaut.
Sie stellen hier eine ziemlich große Frage. Du wurdest beauftragt, etwas über CI zu lernen. Sie haben GitLab CI und Sie wissen nicht, wie Sie es verwenden. Ich werde zuerst antworten, um zu fragen, ob Sie den Unterschied zwischen einer Build- und einer Skriptausführung verstehen. PHP wird als Vorprozess innerhalb eines Webservers vor dem Senden von HTTP-Inhalten ausgeführt. Es ist kein Build. Java oder C ++ würde kompiliert und gebaut werden. Ich würde empfehlen, dass Sie sich die Open-Source-SCons ansehen, aber dann erkannte ich, dass es für kompilierte Builds ist.
Meine zweite Frage ist, verwenden Sie ein Quellcodeverwaltungs-Repository? Wenn ja, welcher? Für PHP verwende ich Ruby und schreibe meine eigenen Continuous Integration Tools. Ich bin mir nicht ganz sicher. Beantworte meine Fragen. Ich möchte diese Diskussion fortsetzen und Ihnen helfen, dies mit Exzellenz zu lösen.
Tags und Links unit-testing git phpunit continuous-integration gitlab