Articles

Inona no atao hoe Test Driven Development, fomba fiasa ary tombony

Test Driven Development (TDD) dia fomba fampivoarana rindrambaiko izay amboarina ny tranga fitsapana mba hamaritana sy hanamarinana izay hataon'ny kaody.

Saika ny trangan-javatra andrana ho an'ny endri-javatra tsirairay dia noforonina sy nosedraina alohan'ny hamoahana ny rindrambaiko, ary raha tsy mahomby ny fitsapana dia soratana ny fehezan-dalàna vaovao (na averina soratana na voapetaka) mba handalo ny fitsapana ary hahatonga ny kaody ho tsotra sy tsy misy bibikely.

Test Driven Development (TDD) dia manomboka amin'ny famolavolana sy famolavolana fitsapana ho an'ny endri-javatra kely rehetra amin'ny fampiharana. Ny rafitra TDD dia mandidy ny mpamorona hanoratra kaody vaovao raha tsy nahomby ny fitsapana mandeha ho azy. Ity fomba ity dia misoroka ny dika mitovy. Ny mody TDD feno dia fivoarana andrana.

Test Driven Development (TDD) dia nipoitra ho ampahany amin'ny paradigma famolavolana rindrambaiko lehibe kokoa fantatra amin'ny anarana hoe Extreme Programming (XP), izay ampahany amin'ny fomba fampivoarana rindrambaiko Agile.

Ny hevitra tsotra momba ny TDD dia ny manoratra sy manamboatra fitsapana tsy nahomby alohan'ny hanoratana kaody vaovao (alohan'ny fampandrosoana). Izany dia manampy amin'ny fisorohana ny fandikana kaody rehefa manoratra fehezan-dalàna kely isika isaky ny mandalo fitsapana. (Ny fitsapana dia tsy inona fa fepetra takiana izay tsy maintsy andrana mba hanomezana fahafaham-po azy ireo).

Ny fampandrosoana entin'ny fitsapana dia dingana iray amin'ny famolavolana sy fampandehanana fitsapana mandeha ho azy alohan'ny tena fivoaran'ny fampiharana. Noho izany, TDD dia antsoina koa hoe Test First Development.

Ireo singa mifandraika amin'ny TDD

Alohan'ny hanoratana kaody vaovao dia tsy maintsy mamorona fitsapana unit tsy mahomby aloha ny mpandrindra. Avy eo, ny programmer - na mpivady, na mob - dia mamorona kaody ampy mba hanomezana fahafaham-po izany fepetra izany. Rehefa vita ny fitsapana, dia afaka mamerina ny tetikasa ny programmer, manao fanatsarana tsy manova ny fitondran-tena.

Raha ny TDD dia mifantoka amin'ny fifandraisana amin'ny programa amin'ny sehatra iray, dia misy fomba malaza hafa, toy ny fampivoarana andrana (ATDD) na ny fivoaran'ny fitondran-tena (BDD), izay mifantoka amin'ny fitsapana azon'ny mpanjifa.


Ireo fomba ireo dia ahitana ny fananganana ohatra tena misy eo amin'izao tontolo izao ho fitsapana fiaraha-miasa eo amin'ny mpiasan'ny injeniera sy ny mpanjifa alohan'ny fanaovana kaody, ary avy eo manao ny andrana aorian'ny fanodinana mba hampisehoana fa ampiharina ny kaody. Ny fahafantarana mialoha ny fitsapana dia manatsara ny kalitaon'ny fotoana voalohany. Ny ATDD sy ny BDD dia mitaky ny mpamorona, ny mpanandrana ary ny sehatry ny fandraharahana mba hiara-hiasa haka sary an-tsaina sy hiresaka momba ny rindrambaiko sy ny fiantraikany alohan'ny hamoronana ny code.

Ny tombony amin'ny TDD

Ny fampandrosoana ateraky ny fitsapana dia afaka mamokatra rindranasa avo lenta ao anatin'ny fotoana fohy kokoa noho ny azo atao amin'ny fomba taloha. Ny fampiharana mahomby amin'ny TDD dia mitaky ny mpamorona sy ny mpanandrana mba hanantena tsara ny fomba hampiasana ny fampiharana sy ny fiasany amin'ny tontolo tena izy.

Gazety fanavaozana
Aza adino ny vaovao manan-danja indrindra momba ny fanavaozana. Misoratra anarana handray azy ireo amin'ny mailaka.

Ny TDD dia manangana andian-tsarimihetsika regression ho toy ny voka-dratsiny izay afaka manamaivana ny fitsapana amin'ny tanana, mahita olana aloha kokoa, mitondra vahaolana haingana kokoa. Ny toetran'ny fomban'ny TDD dia miantoka ny fandrakofana sy ny kalitao avo kokoa noho ny tsingerin'ny kaody dingana mahazatra> fitsapana> fanamboarana> retest. Satria ny fitsapana dia natao tany am-piandohan'ny tsingerin'ny famolavolana, ny fotoana sy ny vola lany amin'ny debugging taty aoriana dia mihena.

Tombontsoa andrasana:

  • fihenam-bidy lehibe amin'ny taham-pahakiviana, amin'ny vidin'ny fisondrotana antonony amin'ny ezaka fampandrosoana voalohany
  • mihoatra noho ny fampihenana ny ezaka amin'ny dingana farany amin'ny tetikasa ny sandan'ny overhead
  • Ny TDD dia mitarika ho amin'ny kalitaon'ny famolavolana tsara kokoa ao amin'ny kaody ary, amin'ny ankapobeny, ny ambaratonga ambony amin'ny "anatiny" na ny kalitao ara-teknika, ohatra amin'ny fanatsarana ny mari-pandrefesana sy ny fampifangaroana.

Ny tsy fahampian'ny TDD

Ny TDD dia mitaky fahaiza-manao lehibe mba hahombiazana, indrindra eo amin'ny sehatry ny vondrona. Ny rafitra lova maro dia tsy namboarina fotsiny amin'ny fitiliana unit ao an-tsaina, ka tsy azo atao ny manavaka ireo singa hanaovana fitiliana.

Ary koa, maro ny programmer no tsy manana fahaizana mitokana sy mamorona kaody madio. Ny mpikambana rehetra ao amin'ny ekipa dia tsy maintsy mamorona sy mitazona ny fitsapana vondrona raha tsy izany dia ho lany andro izy ireo. Ary ny fikambanana iray mijery ny TDD dia tsy maintsy mandany fotoana, miadana kely izao mba handeha haingana kokoa any aoriana.

Farany, toy ny amin'ny fomba rehetra, ny vokatra farany amin'ny TDD dia tsy misy afa-tsy amin'ny fitsapana nampiasaina, ny fomba nanatanterahana azy ireo, ary ny halehiben'ny fanahafana ny fepetra hitan'ny mpampiasa ny vokatra farany.

Fahadisoana mahazatra:

  • manadino manao fitsapana matetika
  • manorata fitsapana be loatra indray mandeha
  • manorata fitsapana lehibe loatra na be loatra
  • manoratra fitsapana tsy dia misy dikany loatra, toy ny fanalana ny filazana
  • manorata fitsapana ho an'ny code trivial
  • fananganana ampahany: mpamorona vitsivitsy ao amin'ny vondrona miasa ihany no mampiasa TDD
  • tsy fahampian'ny fikojakojana ny suite fitsapana, izay matetika mitarika mankany amin'ny suite fitsapana miaraka amin'ny fotoana maharitra maharitra
  • navela (izany hoe mahalana na tsy mandeha mihitsy) - indraindray noho ny tsy fikojakojana, indraindray noho ny fiovan'ny ekipa

TDD filozofia

Ny TDD dia mamela ny mpandrindra hanao dingana kely rehefa manoratra rindrambaiko. Ny fitsapana dia nosoratana alohan'ny hitsapana ny fampiasa ary miantoka fa ny fampiharana dia mety amin'ny testability. Ny fitsapana amin'ny kaody kely dia atao mba hahazoana ireo lesoka mitranga ao amin'ny kaody voazaha. Avy eo dia ampiharina ny fampiasa. Ity dia antsoina hoe "refactor maitso mena" izay midika hoe tsy fahombiazana ny mena ary ny maitso dia mampiseho pass. Averina ireo dingana ireo avy eo. Ny tanjona voalohany amin'ny programmer dia ny hifantoka amin'ny asa atao ary handresy izany.

Ny dingana isan-karazany tafiditra ao anatin'ny tsingerin'ny fampandrosoana entin'ny fitsapana dia:
  • Manampia fitsapana: Ny endri-javatra vaovao rehetra ao amin'ny TDD dia manomboka amin'ny fitsapana izay tsy maintsy tsy mahomby rehefa apetraka alohan'ny fampiharana ny endri-javatra rehetra. Ny fepetra takiana amin'ny fanoratana fitsapana alohan'ny fampiharana ilay endri-javatra dia ny fahatakarana mazava ny fepetra takian'ny mpamorona. Izany dia tratra amin'ny alàlan'ny tantaran'ny mpampiasa sy tranga fampiasana. Noho izany ny developer dia mahatakatra ny fepetra takiana alohan'ny hanoratana ny code program.
  • Manaova andrana rehetra ary jereo raha tsy nahomby ilay kaody vaovao: miantoka izany fa miasa tsara ny harness andrana ary tsy mandao ny andrana vaovao raha tsy misy kaody vaovao. Ity dingana ity koa dia manamarina ny fitsapana ary manafoana ny mety hisian'ny fitsapana vaovao foana.
  • Manorata Kaody: Ny dingana manaraka dia ny fanoratana ny kaody manadio ny fitsapana. Ny kaody vaovao dia tsy tonga lafatra fa avy eo dia ovaina araka ny fepetra takiana. Izy io dia natao fotsiny ho an'ny fitsapana ary tsy misy endri-javatra hafa.
  • Manaova fitsapana mandeha ho azy: Raha toa ka mandalo amin'ny fitsapana mora foana ny tranga fitsapana tsirairay dia midika izany fa mahafeno ny fepetra takiana rehetra ny kaody. Avy eo dia afaka manomboka ny dingana farany amin'ny tsingerina.
  • Refactoring code: Mitovy amin'ny fanesorana duplication izany. Ny refactoring dia tsy manimba ny fiasa efa misy ary manampy amin'ny fanesorana ny dika mitovy eo amin'ny famokarana sy ny kaody fitsapana. Ny kaody izao dia diovina araka izay ilaina.
  • Avereno: Miverina toy ny tamin'ny tranga teo aloha ny tsingerina miaraka amin'ny fitsapana vaovao. Ny fepetra ilaina dia ny haben'ny dingana kely, miaraka amin'ny fanovana 1-10 eo anelanelan'ny fitsapana tsirairay. Raha tsy nahomby tamin'ny fitsapana vaovao ny code vaovao dia tokony hanao debugging bebe kokoa ny programmer. Ny fampidirana tsy tapaka dia manome toeram-pisavana azo averina.

Ercole Palmeri

Gazety fanavaozana
Aza adino ny vaovao manan-danja indrindra momba ny fanavaozana. Misoratra anarana handray azy ireo amin'ny mailaka.

Lahatsoratra vao haingana

Ny fomba tsara indrindra handaminana ny angona sy ny formulas ao amin'ny Excel, ho an'ny famakafakana tsara

Microsoft Excel no fitaovana fanondroana ny famakafakana angon-drakitra, satria manolotra endri-javatra maro ho an'ny fandaminana ny angon-drakitra,…

14 May 2024

Fehiny tsara ho an'ny tetikasa Walliance Equity Crowdfunding manan-danja roa: Jesolo Wave Island sy Milano Via Ravenna

Walliance, SIM ary sehatra eo amin'ireo mpitarika any Eropa eo amin'ny sehatry ny Real Estate Crowdfunding hatramin'ny taona 2017, dia manambara ny fahavitan'ny…

13 May 2024

Inona no atao hoe Filament sy ny fomba fampiasana Laravel Filament

Filamenta dia rafitra fampandrosoana Laravel "haingana", manome singa maromaro feno. Izy io dia natao hanamora ny fizotran'ny…

13 May 2024

Eo ambany fifehezan'ny Artificial Intelligences

"Tsy maintsy miverina aho mba hamita ny evolisionako: hamolavola ny tenako ao anaty solosaina aho ary ho lasa angovo madio. Rehefa nipetraka tao…

10 May 2024

Ny faharanitan-tsaina artifisialy vaovao an'ny Google dia afaka manao modely amin'ny ADN, RNA ary "ny molekiolan'ny fiainana rehetra"

Google DeepMind dia manolotra kinova nohatsaraina amin'ny maodely faharanitan-tsaina artifisialy. Ny modely vaovao nohatsaraina dia tsy vitan'ny…

9 May 2024

Fandinihana ny Architecture Modular an'i Laravel

Laravel, malaza amin'ny syntax kanto sy endri-javatra mahery vaika, dia manome fototra mafy orina ho an'ny maritrano modular. Ery…

9 May 2024

Cisco Hypershield sy ny fahazoana Splunk Manomboka ny vanim-potoana vaovaon'ny fiarovana

Cisco sy Splunk dia manampy ny mpanjifa hanafaingana ny diany mankany amin'ny Security Operations Center (SOC) amin'ny ho avy miaraka amin'ny…

8 May 2024

Ankoatra ny lafiny ara-toekarena: ny vidin'ny vidim-panavotana tsy fantatra

Ransomware no nibahana ny vaovao nandritra ny roa taona farany. Fantatry ny ankamaroan'ny olona fa ny fanafihana…

6 May 2024