prøvning som en chef i laravel: modeller

, afprøvning, som en chef i laravel: modeller,,,,, 8,,,,,,,,, 59,,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, hvis du håber på at finde ud af, hvorfor prøver er positive, er det ikke den artikel for dig.i løbet af denne lektion, jeg antager, at du forstår de fordele, og håber på at lære, hvordan man bedst at skrive og organisere deres undersøgelser i laravel 4.,,,, version 4 af laravel giver store forbedringer i forhold til testning, sammenlignet med foregående overgang.dette er den første artikel i en serie, der skal dække at skrive test for laravel 4 ansøgninger.vi begynder serien ved at drøfte modelforsøg.,,, opsætning, hukommelses database, medmindre du er rå forespørgsler om jeres database, laravel giver din ansøgning om fortsat at være database agnostiker.med en simpel chaufførtræning, din ansøgning kan nu arbejde med andre dbms (mysql, postgresql, sqlite osv.).blandt de standardløsninger, sqlite tilbyder en underlig, men meget nyttigt element: hukommelse databaser., med sqlite, kan vi sætte database forbindelse til: hukommelse:,, der vil kraftigt fremskynde vores test, på grund af den database, som ikke findes på en harddisk.desuden, produktion /udvikling database, vil aldrig blive befolket med venstre over test data, fordi den forbindelse: hukommelse:,, begynder altid med en tom database.,,, kort sagt: en hukommelses database giver mulighed for hurtig og clean test.,,, som, app /ud /testning, fortegnelse, skabe en ny fil, ved navn, database. php, og fyld den med følgende indhold: //app /ud /test /database.php <?php tilbage system (»misligholdelse« = > "sqlite", "samlinger" = > system ('sqlite = > system ("chauffør" = > sqlite "," database "= >": hukommelse: "," præfikset "= >')), er den kendsgerning, at database.php placeres inden for konstruktion, afprøvning, statistik, betyder, at disse miljøer, kun vil blive brugt i et testmiljø (som laravel automatisk indeholder).som sådan, når deres anvendelse er adgang til normalt, i hukommelses database vil ikke anvendes, før prøver, siden i hukommelses database er altid tomme, når en forbindelse, er, at det er vigtigt, at migrere, databasen før hver prøvning.for at gøre dette, åben, app /test /testcase.php, og tilføje følgende metode til udgangen af klasse:,, /* * * migrerer den database, og sagen til simuleret.* det vil forårsage prøver at løbe hurtigt.* * /privat funktion preparefortests() {håndværker: indkaldelse ('migrate); - post: lad som om (korrekt)}, note:, setup(), metode gennemføres af phpunit før hver prøvning,.,,, denne metode vil forberede den database, og ændre status af laravel er mailer, klasse, lade som om.på denne måde, sagen vil ikke sende en e - mail, når det kører tests.det vil i stedet log "sendt" beskeder.,, til at færdiggøre, app /test /testcase. php,,, preparefortests() inden for phpunit, setup(), metode, der vil henrette før hver prøvning, glem ikke, moder: setup(), som vi er ikke overskrives metoden for modervirksomheden klasse.,,, /* * * misligholdelse forberedelse til hver test * * /offentlige funktion setup() (moder: setup(); //ikke glemme!$- > preparefortests();},, på dette punkt, at app /test /testcase.php, skal have følgende kode., huske på, at createapplication, opstår automatisk af laravel.du behøver ikke at bekymre dig om det.,,, //app /test /testcase.php <?php klasse testcase udvider belyse. institut. test. testcase {/* * * misligholdelse forberedelse til hver test * /offentlige funktion setup() (moder: setup(). $- > preparefortests();} /* * * skaber anvendelsen.* * @ tilbage symfony. komponent. httpkernel. httpkernelinterface * /offentlige funktion createapplication() ($unittesting = sandt. $testenvironment = "test" tilbagevenden kræver __dir__. "/.. /.. /. folkesundhedsprogrammet"} /* * * migrerer den database, og sagen til simuleret.* det vil forårsage prøver at løbe hurtigt.* /privat funktion preparefortests() {håndværker: indkaldelse ('migrate); - post: lad som om (korrekt)), som nu at skrive vores test, forlænger, testcase, og databasen vil blive igangsat og overgået før hver prøvning,.,,, test, er det korrekt at sige det i denne artikel, kan vi ikke efter, tdd - proces.spørgsmålet her er belærende, med det formål at demonstrere, hvordan prøverne kan blive skrevet.af denne grund, valgte jeg at afsløre de modeller i første spørgsmål, og deres forretningsmæssigt forbundne undersøgelser.jeg mener, at dette er en bedre måde at illustrere denne forelæsning.,, forbindelse med denne demo anvendelse er en simpel blog /cms, indeholder brugere (godkendelse), post - og statiske sider (som er angivet på menuen.), efter model, bedes de bemærke, at modellen udvides den klasse, glødende, snarere end veltalende.glødende er en pakke, som giver let validering, ved at redde model (jf. $regler, ejendomsret). siden har vi, offentlige statisk $fabrik, system, som udnytter de factorymuff pakke, der skal hjælpe med at oprette ved test objekt.,,,, ardentx, og factorymuff, er tilgængelige via packagist og komponist.,,, i vores post, model, vi har et forhold til brugerne, model, gennem den magi, forfatter, metode.,, og endelig, at vi har en simpel metode, der returnerer den dato, formateres som, "dag /måned /år",.,, //app /model /post.php <?folkesundhedsprogrammet aspektet anvendelse laravelbook er glødende. varm og klasse efter udvider glødende {/* * * tabel * /beskyttede $tabel = stillinger; /* * * glødende valideringsregler * /offentlige statisk $regler = system (afsnit "= > »krævet«, //efter tittle" kugle "= >", der kræves



Previous:
Next Page: