Server pro automatické PHPUnit testy

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
pepakriz
Člen | 246
+
0
-

V testování jsem teprve nováček, ale poslední dobou se u mě testy dostávají na pořad dne. Chtěl bych se zeptat zkušenějších, jaké používají nástroje, aby se jim do hlavního repozitáře nedostala chyba, kterou by testy odhalily.

Má představa využití testů (PHPUnit) spočívá ve vybudování proxy serveru, na kterém bude kopie veřejného repozitáře. Vývojáři by klonovali pouze tento proxy repozitář a při poslaném commitu by server spustil testy a až při úspěšném splnění by commit zaslal do veřejného repozitáře.

Když jsem se porozhlédl po nějakém hotovém řešení, na nic kloudného jsem nenarazil. Jal jsem se proto iniciativy a udělal si takový jednoduchý online nástroj, který mi provádí testy a zobrazuje přes web. K nahlédnutí zde: http://autotester.venne.cz/. Dá se to použít i na testování projektů přímo z veřejných repozitářů a v případě navěšení hooku (Post-Receive URL) se budou testy přegenerovávat při každém commitu. Chtěl bych ještě dodělat nějakou základní podporu pro scripty po testech. Celý server si můžete rozjet i lokálně (https://github.com/…TesterModule).

Ještě jednou tedy, existuje nějaký podobný nástroj? Má smysl něco takového vyvíjet? A jak provozujete automatické testování vy?

arron
Člen | 464
+
0
-

Tomu, čeho se snažíš docílit, se obecně říká Continuous integration (CI) a jeden z rozšířených nástrojů, který se používá, je Jenkins server
Existují i další nástroje (v rámci balíku JIRA je možné mít i CI server, MS má nějaké vlastní řešení a podobně), další odpovědi Ti jistě dá Google po zadání Continuous integration.

Editoval arron (9. 4. 2012 11:39)

Filip Procházka
Moderator | 4668
+
0
-

Máš to pěkné, ale proč psát vlastní nástroj? CI serverů je spousta a taky máme přeci http://travis-ci.org/

newPOPE
Člen | 648
+
0
-

@pepakriz pred par dnami som sa tymto tiez zaoberal, urcite si pozri jenkins ktory popisuje @arron.
Easy setup, trochu mi pomohlo http://jenkins-php.org/ kde je template pre PHP a dokaze to pracovat aj s gitom ako auto-push pri uspesnom builde a pod…

Pride mi zbytocne pisat nieco nove, ked nastroje su :-).

pepakriz
Člen | 246
+
0
-

Díky všem. Jenkins vypadá zajímavě, dá se propojit i se selenium serverem, takže by to bylo super. Na Trevis se podívám také, ale přednost bych dal raději lokálnímu serveru.

RDPanek
Člen | 189
+
0
-

Ahoj, vytvořil jsem nástroj pro testování aplikaček v Nette Frameworku – nic méně, je v začátcích. Dělím testy na selenium a unit – přičemž před každým commitem si může programátor spustit testy, které jsou ve skupině unit – tak to to aspoň řeším já a mám na to pre-coomit v https://github.com/…etteTestCase