Codeception vs PHPUnit

De fapt, cred că este vorba de functional vs unit testing.

Am ceva discuții mai aprinse cu un prieten despre care-i mai bun și mai rumen.

  • El zice despre Codeception că-i cea mai tare chestie, că uite, testează cum funcționează aplicația ca un tot;
  • Eu zic doar că functional testing este nivelul următor peste unit testing și că nu sunt chiar interschimbabile;

Cine are dreptate?

Din ce-am observat, codeception este mult mai complet, in sensul ca foloseste oricum PHPUnit, dar adauga mult peste. E ca si cum ai compara Angular cu JQuery…

Despre unit, functional, integration and acceptance tests, via Stackoverflow:

They’re all complementary. Sometimes it’s advantageous to focus on one type or to eschew them entirely. The main difference for me is that some of the tests look at things from a programmer’s perspective, whereas others use a customer/end user focus.

2 Likes

Asa e, dar codeception stie si unit testing, printre multe alte chestii.

Din cate stiam eu Codeception este o “extensie” (a se observa ghilimelele) la PHPUnit.

Adica se foloseste de PHPUnit, dar face in plus si alte chestii. Cum a zis si @ovidiu_dtp ceva mai sus.

Si cum Codeception = PHPUnit + ceva in plus ==> Codeception e ceva mai cool. :smile:

Mie unul mi-a placut. Nu l-am folosit decat putin pentru a ma juca, dar am fost placut impresionat.

Eu daca ar fi sa aleg dintre cele doua as alege clar Codeception

Așa cum am precizat, este mai mult vorba de functional vs unit testing, nu de Codeception per se.

Codeception e mai misto decat PHPUnit asa cum Symfony2 e mai misto decat PHP. :wink:

Legat de tipurile de teste (care sunt prezente si in Codeception, ca unealta), explicatia de pe Stackoverflow are mi se pare cuprinzatoare.

In alta ordine de idei sunt sigurul care in loc de CodeCeption (like in Inception) a citit CoDececption (as in WTF/min)? :smiley:

1 Like

Eu nu am folosit framework de test, ca la munca nu e voie, iar acasa… ma tenteaza sa incep, dar nu am inceput. Din ce-am vazut pe la Laracast, as merge pe codeception. Mi se pare foarte prietenos, iar alaturi de Laravel ai toate functionalitatile pe care ti le poti dori. Abia astept sa incep sa-l folosesc.

1 Like

WTF? Cum adică nu e voie la muncă? =)) Mi se pare aberant să vrei să îmbunătățești un proces și să ți se spună să stai în banca ta…

1 Like

Ce rol joacă prietenul tău?
Este tester sau programator?
Încerc eu să dau un răspuns: dacă este tester atunci evident codeconception, de altfel am aflat că o companie românească folosește pentru a automatiza o parte din testare codeconception.

Dar dacă este programator, atunci ambele sunt variante posibile.

Dar o combinație mai bună pentru un programator, în opinia mea, este combinația behat cu phpspec, în primul rând pentru a face (emergent) design iar faptul că avem și o modalitate de testare este doar un bonus.

Dar pentru asta, trebuie să fim într-un mediu colaborativ sau să ai o șapcă cu trei cozoroace pe culori corespunzătoare diferitelor roluri: programator, tester, product owner și să încerci de unul singur

2 Likes

Ce zice compania respectiva ca face … you should take it with a grain on salt.