Server pro automatické PHPUnit testy
- pepakriz
- Člen | 246
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
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
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
@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 :-).
- RDPanek
- Člen | 189
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