Futtassa a phpunit tesztet a projekthez 1-bites képen
Ebben a bejegyzésben szeretnék bemutatni az én módomat, hogy a Bitrix projekteken teszteljem az egységeket. Az ilyen projektek egységeinek tesztelése során ismert a rendszer rendszermagjának inicializálása. Az alábbiakban megmutatom, hogyan sikerült megoldani.
Azonnal érdemes megemlíteni, hogy a feladat a helyszíni tesztelés, a fejlesztés végrehajtása és távolról a tesztelés és a helyszíni projektek tesztelése volt. Továbbá a tesztek távoli elindításához ssh hozzáféréssel kell rendelkeznie a kiszolgálóhoz a / usr / bin / php jogosultsággal, vagy ahol van a PHP-tolmács a kiszolgálón.
Ezután követi a lépésenkénti utasításokat:
A PHPUnit telepítése és konfigurálása
A PHPUnit függővé válik a projektben a Composer segítségével.
Ezután a / local / tests / mappába hozzáadja a PHPUnit konfigurációs xml-fájlt, a bootstrap-ot és a kernel inicializáló fájlt Bitrix:

Most részletesen a fájlok tartalmáról.
A /local/tests/phpunit.xml.dist fájl
Itt adjuk meg az aktuális mappában lévő bootstrap fájl elérési útját, és állítsuk be a színek paraméterét true értékre. Ezenkívül az aktuális mappa (helyi) "teszt" elérési útját állítjuk be úgy, hogy a PHPUnit minden fájlt a * Test.php végállomásként vizsgálati osztályú fájlokkal számoljon.
A PhpStorm konfigurálása teszteléshez
Az IDE beállítása nem különbözik a hivatalos dokumentációban leírtaktól. A lényeg az, hogy hozzá kell adnunk egy távoli PHP tolmácsot a távoli kiszolgálóhoz, konfigurálnunk kell a PHPUnit-t az IDE-beállításokban, és hozzá kell adnunk a PHPUnit konfigurációt a Run \ Debug Configuration-hoz.
Hozzáadjuk a távoli tolmácsot:
Beállítások - Nyelvek Keretek - PHP

Távoli tolmács hozzáadása

A megjelenő beállításokban az "SSH hitelesítő adatokat" választottam, és a bejegyzés elején leírt jogokkal a szerverhez hozzáférést léptettem be.
Ezután lépjen a Beállítások - Nyelvek menüpontra Keretek - PHP - PHPUnit. Kattintson a "+" és válassza a "Távoli tolmács" lehetőséget. Válassza ki az újonnan hozzáadott tolmácsot. A PHPUnit könyvtár blokkjában válassza az "Egyéni autoloader használata" lehetőséget. A "Pálya a szkripthez" meg kell adnia az autoloader.php fájlt. amely létrehozza a zeneszerzőt. A Teszt rovat blokkban adja meg a / local / tests / phpunit.xml.dist útvonalat

A következő lépés a PHPUnit konfiguráció létrehozása:

A megjelenő ablakban fontos, hogy adjunk hozzá egy rendszeres PHPUnit-et, és ne PHPUnit-t a kiszolgálón. A Test Runner blokk beállításaiban ki kell választania a "Defined in the configuration file"
Ez valójában az egész setup. Most, amikor rákattint a "Futtatás" zöld nyílgombbal, hasonló területet kell látnia:
Most emlékszünk arra a követelményre, hogy teszteket futtassunk egy teszt távoli helyszínen, a helyi és a harcban. Ez a feladat a fent említett hivatalos dokumentációban leírt módon megoldható a szükséges PHPUnit tolmácsok és beállítások hozzáadásával. Ezután a tolmács a projektbeállításokban megváltozik, és ugyanaz a zöld nyíl "Run" ugyanazokat a teszteket hajtja végre, de a másik szerveren (a projekt áthelyezése után kényelmesen nézni "semmi sem tört").
Az a tény, hogy a PHPUnit tesztelése az SSH-n keresztül egy távoli gépen a PhpStorm programmal, nem igényel speciális futást. A projekt PHP-tolmácsa átkapcsolásával a Project Settings | PHP, akkor futtathatjuk a PHPUnit teszteket akár helyi, akár távoli, anélkül, hogy újra kellene konfigurálnunk mást.