Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  php:TDD ja unit test märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
lehm2
Kreisi kasutaja


liitunud: 19.09.2004




sõnum 11.02.2008 18:15:59 php:TDD ja unit test vasta tsitaadiga

Tahaks natuke rääkida sellel teemal. Kas keegi kasutab ja kuidas muidu on?
Ise olen proovinud ühte lihtsamat programmi TDD-s ja peab mainima, et tuli täiesti teist viisi mõelda ja tegutseda. TDD põhiprintsiip on et ennem koodi kirjutamist kirjuta testi kood valmis ja seejärel kirjuta õige kood, et see läbiks testi.

Php TDD frameworkidest parim on minu arust SimpleTest.

Unit testist ma pole nagu arusaanud, õigemini pole süvenenud sellesse. TDD pidi olema UnitTestist järgmine tase. Nii on ka TDD-st järgmine BDD. icon_rolleyes.gif

_________________
Piilu siia, progreja!
Vajad abi Node.JS-ga ?
Võta ühendust !
Kommentaarid: 15 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
nene
Kreisi kasutaja
nene

liitunud: 20.03.2004




sõnum 11.02.2008 23:23:05 Re: php:TDD ja unit test vasta tsitaadiga

lehm2 kirjutas:
Unit testist ma pole nagu arusaanud, õigemini pole süvenenud sellesse. TDD pidi olema UnitTestist järgmine tase.


Unit test on lihtsalt ühe mooduli / klassi / komponendi testimisega tegelev kood.

TDD (Test Driven Development) on aga arendusprotsess, kus nagu sa isegi kirjutasid, luuakse enne test ja siis testi rahuldav kood. Seega kirjutatakse posu Unit teste.

Jäi endiselt arusaamatuks?

lehm2 kirjutas:
Nii on ka TDD-st järgmine BDD. icon_rolleyes.gif


BDD all pead ilmselt silmas Business Driven Developmenti. Suht tundmatu asi minu jaoks - on see mingi konkreetne metoodika või lihtsalt mingi üldine mõiste?

lehm2 kirjutas:
Tahaks natuke rääkida [TDD] teemal. Kas keegi kasutab ja kuidas muidu on?


Peamine probleem minu jaoks on see, et ma olen ainuke oma tiimis, kes seda kasutada üritab. Ülejäänud küll nõustuvad, et see on hea asi, aga leiavad, et hetkel pole aega testide kirjutamiseks, kuna on nii kiire - vähemasti ütleb nii management ja oma pool aastat juba.

Teine probleem on see, et kuna süsteem pole ehitatud üles testimise peale mõeldes, siis on sinna ka takkajärgi testide sisse istutamine kaunis tülikas. Olen seda täheldanud ka kõigi teiste süsteemide puhul, millega olen kokku puutunud. Mõnikord õnnestub mul arendada mõnda piisavalt eraldiseisvat moodulit ja siis saan sellele ka testid kirjutada. Enamik muust süsteemist on aga niivõrd läbi põimunud, et sealt on suht raske mõnda tükki eraldiseisvaks testimiseks välja tõsta.

Raamistikuna olen kasutanud PhpUnit'it. Peamiseks põhjuseks see, et sellel on [url=http://selenium.openqa.org/]Selenium[/ur]'i tugi. Viimasega saab testida seda, et veebileht töötaks brauseris nii nagu peab (s.h. JavaScript). Seleniumit olen kasutanud rohkem regressioonide tuvastamiseks - siiamaani pole ma ühtegi Seleniumi testi kirjutanud enne veebilehe olemasolu.
Kommentaarid: 24 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 23
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
lehm2
Kreisi kasutaja


liitunud: 19.09.2004




sõnum 11.02.2008 23:33:16 Re: php:TDD ja unit test vasta tsitaadiga

BDD ehk Behaivor Driven Development, TDD edasi areng PHP-s kasutamiseks ka loodud framework , keeleliselt väga hästi arendatud saab kasutada pea, et inglise keelseid lauseid näiteks
$this->spec($object)->should->have('breaks');

tsitaat:
Peamine probleem minu jaoks on see, et ma olen ainuke oma tiimis, kes seda kasutada üritab. Ülejäänud küll nõustuvad, et see on hea asi, aga leiavad, et hetkel pole aega testide kirjutamiseks, kuna on nii kiire - vähemasti ütleb nii management ja oma pool aastat juba.
Hetkel minul täpselt sama arvamus, kuid üritan enda mõtteviisi muuta.
_________________
Piilu siia, progreja!
Vajad abi Node.JS-ga ?
Võta ühendust !
Kommentaarid: 15 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 13
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
tonis
HV vaatleja

liitunud: 04.06.2004




sõnum 15.02.2008 22:17:42 vasta tsitaadiga

Tööl meil kasutatakse unit testimist igas projektis, vanadele projektidele on teste lihtsalt juurde kirjutatatud ja uutes tehakse need koos koodiga, ehk siis tehakse TDD-d küll. Kuigi ise vahel ei ole eriti tahtmist testi kirjutada asja kohta, mille enda kirjutamine võttis pool tundi ja siis testi enda tegemine võtaks sama palju või rohkem. Kõige tüütum on testandmete loomine, et asja üldse testida saaks - seda seetõttu, et proge on aja jooksul läinud nii suureks ja mahukaks.

Teeme seda kõike Rubys, Delphis ja .netis. Eriti hea on mockimine.. ja ka üks uus avastus ruby-s, kus öeldakse näiteks, et objekti instantsi see meetod tagastab selliseid andmeid, siis ei pea testandmeid ise baasi/kuhuiganes toppima ja testid käivad kiiremini ka.

[edit]
Tegelikult küll mu jutt ei maini sõnagagi phpi, kuna seda me ei tee, aga testimise ideed on ikka samad
[/edit]
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  php:TDD ja unit test
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.