Lahendatud: võltsserver

Võltsserverid on kujunenud ajasäästlikuks ja mugavaks võimaluseks arendajatele oma koodi testimiseks, kui neil puudub juurdepääs päris serverile. Need serverid on sisuliselt reaalsete serverite simulatsioonid, mida kasutatakse arenduses ja testimises ning mis on olulised tööriistad veebiarendusarsenalis.

Lahendus

lahendus serveri juurdepääsu puudumise probleemile kodeerimise või testimise ajal on võltsserver. Selle lahenduse mõistmiseks on oluline mõista serveri rolli veebisaidi arendamisel. Server on sisuliselt üksus, mis vastab kliendi masinate päringutele koos sobivate vastustega. Näiteks tüüpilise stsenaariumi korral võib klient saata päringu konkreetse veebilehe kohta, mille server seejärel edastab.

Koodi väljatöötamise ajal ei pruugi aga arendajatel alati olla ligipääsu reaalajas serveritele. Olenemata sellest, kas põhjuseks on ressursside nappus või reaalajas serveri kättesaamatus kodeerimise ajal, vajavad arendajad viisi oma koodi testimiseks. Siis tuleb sisse võltsserver, mis toimib tõelise serveri "simulaatorina" või "seisjana".

Koodeksi samm-sammult selgitus

Illustreerimaks, kuidas a võltsserver töötab JavaScriptis, vaatame läbi mõne lihtsustatud pseudokoodi.

 

```JavaScript
// First, we need to create an instance of a fake server
var server = sinon.fakeServer.create();

// Then, let's stipulate how the server should respond
server.respondWith("GET", "/some/endpoint", [200, {}, "Hey there!"]);

// We then have the server respond automatically
server.respond();

// Lastly, we restore the server to its previous state once we're done testing
server.restore();
```

Jagame samm-sammult lahti, mida kood teeb:

  • Esimene samm initsialiseerib võltsserveri, kasutades Sinon.JS-i, mis on JavaScripti jaoks eraldiseisev testspioon, stubs ja mõnitus.
  • Järgmisena määratleme, kuidas server peaks vastama konkreetse lõpp-punkti GET-päringule.
  • Seejärel käsime serveril päringutele vastama hakata.
  • Lõpuks, kui meie testimine on tehtud, taastame serveri, et viia kõik tagasi algsesse olekusse.

Teegid ja funktsioonid

Eespool nimetatud koodilõigu puhul oleme kasutanud Sinon.JS, populaarne JavaScripti testispioonide, tünnide ja pilkamisteek. Sinon võimaldab arendajatel oma testides funktsioone ja käitumist kontrollida. Selles kontekstis oleme seda kasutanud võltsserveri sujuvaks loomiseks.

funktsioon sinon.fakeServer.create() loob võltsserveri eksemplari server.respondWith() on meetod, mis määrab, kuidas server peaks mis tahes sissetulevatele päringutele vastama. Funktsioon server.respond() käivitab serveri sissetulevatele päringutele vastama. Lõpuks server.restore() kasutatakse serveri algoleku taastamiseks.

Võltsserveri ilu seisneb selles, et vastuste parameetreid saab vastavalt vajadusele kohandada, võimaldades arendajatel testida oma koodi erinevate serveri vastuste suhtes. JavaScripti ja teekide (nt Sinon.JS) ilu seisneb selles, et need võimaldavad arendajatel neid testkeskkondi lihtsalt ja tõhusalt luua.

Seonduvad postitused:

Jäta kommentaar