Shopify, joka kehittää yhtä verkon suurimmista ja suosituimmista sähköisen kaupankäynnin alustoista, dio ilmoitti äskettäin julkistaneensa välityspalvelimen uuden version «Toxiproxy 2.3» joka on suunniteltu simuloimaan vikoja ja poikkeavuuksia verkossa ja järjestelmässä testaamaan sovellusten tilaa tällaisissa olosuhteissa.
Ohjelma erottuu tarjoamalla API:n, jolla muutetaan dynaamisesti viestintäkanavan ominaisuuksia ja jolla voidaan integroida Toxiproxy yksikkötestijärjestelmiin, sen lisäksi, että se tukee jatkuvan integroinnin alustoja ja kehitysympäristöjä.
Tietoja Toxiproxysta
Tämä kehys on erityisesti suunniteltu toimimaan testiympäristöissä, CI ja kehitys, ja tukee determinististä yhteyksien manipulointia, mutta tukee satunnaista kaaosta ja mukauttamista.
pohjimmiltaan, Toxiproxy on sijoitettu työkaluksi että kaikki tarvitsevat suorittaa esittelytestejä sovelluksille, joissa ei ole yksittäisiä vikakohtia. Toxiproxya on käytetty menestyksekkäästi kaikissa Shopifyn kehitys- ja testausympäristöissä lokakuusta 2014 lähtien.
Toksiproksin käyttö koostuu kahdesta osasta. Go:lla kirjoitettu TCP-välityspalvelin (mitä tämä arkisto sisältää) ja asiakas, joka kommunikoi välityspalvelimen kanssa HTTP:n kautta. Tämä määrittää sovelluksen niin, että kaikki testiyhteydet kulkevat Toxiproxyn kautta ja voivat sitten muokata tilaansa HTTP:n kautta.
Toisin sanoen välityspalvelin käynnistetään testattavan sovelluksen ja sen verkkopalvelun välillä, jonka kanssa tämä sovellus on vuorovaikutuksessa, jonka jälkeen voit simuloida tietyn viiveen esiintymistä vastaanotettaessa vastausta palvelimelta tai lähetettäessä pyyntöä, muuttaa kaistanleveyttä, simuloida kieltäytymistä yhteyksien vastaanottamisesta, keskeyttää normaalin muodostamisen tai yhteyksien sulkemisen, muodostaa uudelleen muodostetut yhteydet, vääristää pakettien sisällöstä.
Välityspalvelimen toiminnan ohjaamiseksi sovelluksista tarjotaan asiakaskirjastot Rubylle, Golle, Pythonille, C # /. NETille, PHP:lle, JavaScript / Node.js:lle, Javalle, Haskellille, Rustille ja Elixirille, joiden avulla voit muuttaa vuorovaikutusolosuhteet verkottuvat lennossa ja arvioivat tuloksen välittömästi.
Viestintäkanavan ominaisuuksien muuttamiseksi ilman muutoksia koodiin voidaan käyttää erityistä toxiproxy-cli-apuohjelmaa (Toxiproxy API:ta oletetaan käytettävän yksikkötesteissä ja apuohjelmasta voi olla hyötyä interaktiivisissa kokeissa).
Mitä uutta Toxiproxy 2.3:ssa?
Mitä tulee muutoksiin, jotka sisältyvät uuteen julkaistuun versioon, mainitaan, että HTTPS:lle on sisällytetty asiakkaan päätepisteohjain.
Sekä tyypillisten testiajurien erottaminen erillisiksi tiedostoiksi, client.Populate API:n käyttöönotto.
Tämän lisäksi se erottuu myös armv7- ja armv6-alustojen tuesta ja mahdollisuudesta muuttaa palvelimen rekisteröintitasoa.
Asenna Toxiproxy Linuxiin
Ne, jotka ovat kiinnostuneita tämän kehyksen asentamisesta voidakseen suorittaa testinsä, voivat tehdä tämän seuraamalla alla jakamiamme ohjeita.
Jos olet käyttäjän Debian, Ubuntu tai mikä tahansa muu näihin perustuva jakelu, Voit suorittaa asennuksen avaamalla päätelaitteen (voit käyttää pikanäppäintä Ctrl + Alt + T) ja kirjoitat siihen:
wget https://github.com/Shopify/toxiproxy/releases/download/v2.3.0/toxiproxy_2.3.0_linux_amd64.deb
Suoritamme asennuksen seuraavilla tavoilla:
sudo apt install ./toxiproxy_2.3.0_linux_amd64.deb
Niiden tapauksessa, jotka ovat RPM-paketteja tukevien jakeluiden käyttäjät, kuten mm. Fedora, openSuse, RHEL, ladattava paketti on seuraava:
wget https://github.com/Shopify/toxiproxy/releases/download/v2.3.0/toxiproxy_2.3.0_linux_amd64.rpm
Ja asennat paketin kirjoittamalla:
sudo rpm -i toxiproxy_2.3.0_linux_amd64.rpm
Kun asennus on valmis, voit käynnistää palvelun suorittamalla seuraavan komennon päätteessä:
sudo service toxiproxy start
Lopuksi jos eOlet kiinnostunut tietämään siitä enemmän, Sinun pitäisi tietää, että Toxiproxy-koodi on kirjoitettu Go-kielellä ja sillä on MIT-lisenssi, ja voit tutustua tämän kehyksen käyttöoppaaseen seuraava linkki.