Jämförda versioner

Nyckel

  • Dessa rader lades till.
  • Denna rad togs bort.
  • Formateringen ändrades.

Innehållsförteckning

På denna sidan finns instruktioner för hur EI ska testas efter deploy i QA miljö. Utöver dessa tester utförs automatiserade tester då EI byggs. Dessa finns  beskrivna i SAD:en.

Testrapporter från EI tester hittar ni här.

Funktionella tester

I SoapUI-projektet finns det exempelrequest för Update, FindContent och ProcessNotificationoch ProcessNotification. Förutom dessa request finns även tester som verifierar majoriteten verifierar majoriteten av de regler som finns beskrivna i tjänstekontraktet.

Testbeskrivning

Syftet med de funktionella testerna är att verifiera reglerna i tjänstekontraktet. Testerna dokumenteras endast i SOAP-UI projektet.

Begränsningar

Det finns inte automatiserade tester för att verifiera att notfieringar skickas notfieringar skickas korrekt efter uppdateringar med Update och ProcessNotification. Detta steg måste göras manuellt enligt instruktionerna nedan.

Instruktioner gör att genomföra testerna

Förberedelser

För att kunna köra både request och tester behöver man anpassa miljön för om man ska man ska köra testerna mot utvecklingsmiljön (MuleStudio) eller mot exempelvis QAexempelvis QA-miljön:

  1. HSA-ID. I projektinställningarna ("Custom properties") finna möjligheten att  välja  välja HSA_ID_QA och HSA_ID_DEV för inställningen HSA_ID.
  2. Endpoints. För varje tjänst behöver man uppdatera vilken endpoints som ska användasska användas. I och med att testerna återanvänder alla tre tjänster behöver således uppdatera således uppdatera endpointen för alla tre tjänster.
    Exempel på metod för att välja QA som endpoint:
    Dubbelklicka på UpdateResponderBinding, välj "Service Endpoints".
    Välj "https://qa.esb.ntjp.sjunet.org:20000/vp/Update/1/rivtabp21" och tryck knappen "Assign.".
    Välj alternativet "All requests och TestRequests" och tryck på ok.
  3. Upprepa detta för FindContentWSBeanServiceSoapBinding

...

  1. samt ProcessNotificationResponderBinding.

Köra tester

Nu är det klart att köra testerna. Testerna kan köras en och en eller alla.

För att För att köra alla test, högerklicka på projektet -> Launch Testrunner. Välj "All" i TestCase i TestCase och TestSuite.
Tryck sedan till sist på "Launch".
Lägg <Lägg till vilket projektprojekt>

Manuella Tester

EI-ProcNot_test1

Verifiera att Process Notification anropas vid Update

<BESKRIV HUR DETTA GÖRS>

 

EI-ProcNot_test2

Verifiera att Process Notification anropas vid ProcessNotification

 

<BESKRIV HUR DETTA GÖRS>

 


Dokumentation av tester

Det ska dokumenteras att testerna utförts samt på vilken mjukvaruversion man kört dem. Fyll i denna tabellen och spara den under EI Testrapporter.

AUTOMATISERADE TESTER

DatumEI versionVP versionAlla / Vissa tester utfördaTester utförda avResultat
      
Kommentar:<eventuellt någon kommentar om resultatet>

MANUELLA TESTER

DatumEI versionVP versionTester utförda av
    
TestResultatKommentar
   
   

 


Lasttester

Testbeskrivning

Syftet med lasttesterna är att belasta systemet för att verifieraxxxx < .... något mer om syftet>

SOAP-UI projektet med lasttesterna heter lasttesterna heter SKLTP-EI-loadtests-soapui-project.xml. Det har tester har tester för Update och Find Content.
De tester De tester som finns är:

  • Update med 1, 10, 100, 1000 engangemang
  • FindContent med 2 eller alla element.

Testerna är uppdelade in olika antal samtidiga antal samtidiga klienter (trådar), detta för att för att testa med olika antal anrop per sekund. <FIXA MENINGEN>. <FIXA MENINGEN. OK?>

Förberedelser

Det är viktigt att ställa in rätt endpoints för varje tjänst om testerna inte
ska köra mot qa1. Detta görs på följande sätt:

<JAg ändrade meningen ovan. Är detta OK?>

Testerna är förkonfigurerade konfigurerade att köra mot QA1. Om man ska köra mot någon annan nod måste man ställa in rätt endpoints för varje tjänst.  Detta  Detta görs på följande sätt:

  1. Dubbelklicka på UpdateResponderBinding, välj 'Service Endpoints'.
  2. Välj exempelvis Välj exempelvis 'https://qa.esb.ntjp.sjunet.org:20000/vp/Update/1/rivtabp21' och tryck knappen 'Assign'.
  3. Välj alternativet 'All requests och TestRequests' och tryck på ok.

Upprepa detta för FindContentWSBeanServiceSoapBinding samt ProcessNotificationResponderBindingsamt ProcessNotificationResponderBinding.

Köra tester

Alla lasttester finns Alla lasttester finns just nu i https://code.google.com/p/skltp/source/browse/tp/ei/trunk/modules/intsvc/

Köra lasttester i SoapUI.

För att köra ett simpelt test i klicka TestCaset och sedan Loadtests.
Dubbellklicka för att få fram ett fönster där högerpilen finns längst upp  fönstretpå fönstret.

Som resultat ser man antal test per sekund, genomsnittlig svarstid o.s.v.

Köra lasttester i SoapUI från terminalen

För att köra lasttesterna från SoapUI behöver följande göras

  • Hämta skript och installera soapUI samt Ruby om maskinen inte kör på osx
  • Gå in i katalogen loadtest_runner och öppna filen run.sh. 
  • Sätt variablerna soapUIpath (sökväg till soapui-katalogen) samt  samt remote_host som är adressen som cpu-monitoreringen körs mot. För att kunna köra ssh-monitorering 
    krävs antingen extisterande sshanslutningen ControlMaster eller att anslutningen använder nycklar. 
  • För att verifiera att det fungerar, skriv ssh ADDRESS_TILL_REMOTE_HOST i terminalen och verifiera att det att det går att logga in utan att ange lösenord.
  • Kör ./run.sh från terminalen. Tar idag cirka 60 minuter att slutföra

Resultat från skriptet

Från skriptet kommer man se statistik kring svarstider för de olika testerna,
antal tester per sekund samt last och cpuinfo.

...

JMeter

Då SoapUI inte verkar kunna hantera keep-alive syns ingen märkbar skillnad i svarstiderna i svarstiderna när keep-alive är på och när det är avstängt. Därför finns några av några av lasttesterna posterade till JMeter för där på ett korrekt sätt kunna göra tester med tester med keep-alive.

Köra lasttester med JMeter

  • Öppna SKLTP-EI-loadtests-jmeter.jmx med JMeter
  • I menyn, välj SSL-manager ange certifikatet som ska användas. (Jag har använt
    tk_qa_auth.p12)
  • Aktivera den eller de threadgroups som ska köras och tryck sedan på kör.
  • Resultatet visas som helhelt för den aktuella trådgruppen samt för varje
    soaprequest i trådgruppen.

Tänk på att de olika trådgrupperna har olika inställningar för antal  samtidiga  samtidiga klienter och körlängder. Detta ställs in i trådgruppsinställningarna trådgruppsinställningarna (klicka på den valfri Thread Group).

Testdokumentation

Testrapport ska fyllas i och sparas under EI Testrapporter.


Robusthetstester

<Här ska vi ha någon instruktion, klippt från rapporten>