HTTP-palveluiden suorituskykytestausohjelmisto
Kekkonen, Saku (2007)
Kekkonen, Saku
Lahden ammattikorkeakoulu
2007
All rights reserved
Tiivistelmä
Opinnäytetyössä suunnitellaan ja toteutetaan testausohjelmisto HTTP-palveluiden suorituskyvyn testaukseen. Ohjelmisto tukee Windows- sekä Linuxkäyttöjärjestelmää käyttäen avoimen lähdekoodin ohjelmistokirjastoja. Ohjelmiston pääasiallisina vaatimuksia ovat HTTP- ja HTTPS-protokollien tuki, useiden yhtäaikaisten käyttäjien simulointi sekä mittaustulosten keruu ja esitys. Työssä tutkitaan selaimen ja palvelimen välistä toimintaa peruskäyttötapauksissa. Tutkittavana ovat sivujen lataukseen sekä tietojen välitykseen liittyvät HTMLelementit. HTML-tasolta syvennytään tutkimaan selaimen ja palvelimen välistä HTTP-protokollaa. HTTP-protokollaa tutkitaan, jotta suunniteltava ohjelmisto osaisi tulkita sekä muodostaa HTTP-protokollan mukaisia viestejä. Toteutusosuudessa esitetään ohjelmistolle asetetut vaatimukset. Vaatimusten pohjalta esitetään eri vaihtoehtoja ohjelmistokirjastoista, joita voitaisiin käyttää ohjelmiston toteuttamiseksi sekä esitetään valitut ohjelmistokirjastot: Boost C++, libcurl sekä wxWidgets. Toteutusosuudessa esitetään myös ohjelmiston rakenne, joka tukee muuttujia sekä ulkoisia tietolähteitä, joiden avulla virtuaalikäyttäjille voidaan asettaa käyttäjäkohtaisia tietoja, kuten kirjautumistunnukset. Toteutusosuuden lopussa esitetään käyttötapaus, josta voidaan nähdä, kuinka tehtyjen suorituskykymittausten pohjalta voidaan osoittaa testattavan kohdepalvelimen sekä palvelun yhtäaikaisten käyttäjien lukumäärän raja sekä syy. Työssä selviää ohjelmiston graafisen käyttöliittymän esittämien kuvaajien merkitys suoritettaessa testejä. Vaikka lopulliset kuvaajat olisi tarkoitus esittää ulkoisella ohjelmalla, kuten Microsoft Excelillä, nopeuttavat ohjelmiston esittämät kuvaajat testien suoritusta, koska tulokset nähdään välittömästi ilman tietojen viemiseen liittyviä välivaiheita. Työssä selviää myös palvelimella suoritettavien mittausten merkitys mahdollisten ongelmakohtien selvittämisessä. Testausohjelmistolla suoritettavilla mittauksilla voidaan selvittää ainoastaan palveluiden suorituskykyrajat, mutta yhdistämällä näihin tietoihin palvelimella suoritettujen mittausten tulokset on mahdollista selvittää myös palvelun suorituskykyä rajoittavat tekijät.