Executați teste de phpunit pentru proiect pe un bitrix 1

În acest post vreau să-mi arăt modul de a rula teste unitate pe proiecte Bitrix. Atunci când unitatea de testare a acestor proiecte, există o problemă cunoscută de inițializare a kernel-ului sistemului. Mai jos voi arăta cum am reușit să o rezolv.

Este demn de remarcat faptul că sarcina a fost aceea de a efectua teste atât la nivel local, cât și în faza de dezvoltare, și de la distanță pe proiecte de testare și proiectele. De asemenea, pentru pornirea la distanță a testelor este necesar să aveți acces ssh la server cu drepturi de / usr / bin / php sau unde aveți un interpret PHP pe server.

Apoi urmează ceva asemănător cu instrucțiunea pas cu pas:

Instalarea și configurarea PHPUnit


PHPUnit este instalat în proiect ca dependență prin Composer.


Apoi, dosarul / local / teste / adaugă fișierul xml de configurare PHPUnit, fișierul de bootstrap și fișierul de inițializare a kernel-ului Bitrix:

Executați teste de phpunit pentru proiect pe un bitrix 1

Acum, în detaliu despre conținutul fișierelor.
Fișierul /local/tests/phpunit.xml.dist

Aici specificăm calea către fișierul bootstrap din dosarul curent și setăm parametrul culori la true. De asemenea, setăm calea "test" pentru dosarul curent (local) astfel încât PHPUnit să numere toate fișierele cu sfârșitul * Test.php ca fișiere cu clase de test.

Configurarea PhpStorm pentru testare


Configurarea IDE în sine nu diferă mult de cea descrisă în documentația oficială. Concluzia este că avem nevoie pentru a adăuga un PHP interpret la distanță pe un server de la distanță, configurați PHPUnit din setările IDE și adăugați configurația PHPUnit în Run \ Debug Configuration.

Adăugăm interpretul de la distanță:
Setări - Limbi Cadre - PHP

Executați teste de phpunit pentru proiect pe un bitrix 1

Adăugarea unui interpret de la distanță

Executați teste de phpunit pentru proiect pe un bitrix 1

În setările care au apărut, am ales "SSH Credentials" și am introdus accesul la server cu drepturile descrise la începutul postării.

Apoi mergeți la Setări - Limbi Cadre - PHP - PHPUnit. Faceți clic pe "+" și selectați "Prin interpret de la distanță". Alegeți interpretul nou adăugat. În blocul Bibliotecă PHPUnit, selectați "Utilizați autoloader personalizat". În "Calea spre script" trebuie să specificați fișierul autoloader.php. care creează un compozitor. În blocul Test Runner, specificați calea către / local / tests / phpunit.xml.dist

Executați teste de phpunit pentru proiect pe un bitrix 1

Următorul pas este să creați configurația PHPUnit în:

Executați teste de phpunit pentru proiect pe un bitrix 1

În fereastra care apare, este important să adăugați un server PHPUnit regulat și nu PHPUnit pe server. În setările sale din blocul Test Runner, trebuie să selectați "Defined in the file configuration"

Aceasta este de fapt întreaga configurație. Acum când faceți clic pe butonul săgeată verde "Run" ar trebui să vedeți o zonă similară:

Acum ne amintim de cerința de a rula teste pe un loc de testare la distanță, local și de luptă. Această sarcină, așa cum este descrisă în articolul din documentația oficială de mai sus, este rezolvată prin adăugarea interpreților și a setărilor necesare pentru PHPUnit. Apoi, în cadrul proiectului se modifică setările interpretul și același verde săgeată «Run» pentru a lansa aceleași teste, dar pe un alt server (este convenabil pentru a viziona „Nu face nimic nu este rupt“ după transferul proiectului).

Faptul că executarea testelor PHPUnit pe SSH pe o mașină la distanță cu PhpStorm nu necesită o rulare specială. Prin comutarea interpretului PHP al proiectului prin Setările proiectului | PHP, putem rula testele PHPUnit fie locale, fie la distanță, fără a fi nevoie să reconfiguram altceva.

Articole similare