CASE Varma Testauksen haasteet moniuloitteisessa testiympäristössä 5.11.2015 Tuukka Vähäpassi
Varman esittely Keskinäinen työeläkevakuutusyhtiö Varma on Suomen suurin työeläkevakuutusyhtiö ja yksityinen sijoittaja. Yhtiö vastaa yksityisellä sektorilla noin 870 000 henkilön työeläketurvasta. Vuonna 2014 Varman maksutulo oli 4,3 miljardia euroa, ja yhtiö maksoi eläkkeitä 5 miljardia euroa Lakisääteisten TyEL- ja YEL-vakuutusten hoidon lisäksi Varma tarjoaa asiakkailleen työeläkekuntoutus- ja työhyvinvointipalveluita http://vuosikertomus.varma.fi/2014/sijoitukset/sij oitusvuosi/ 2
Minkälaisella kentällä toimimme? 1. Useita toimittajia ja asiakkaita 2. Testiaineisto on todella tärkeässä asemassa. Käsittelyprosesseja ohjaa henkilön työhistoria, joka on pitkälti ulkoisissa järjestelmissä. 3. Monta eri aikakauden järjestelmää, jotka liittyvät toisiinsa useilla eri liittymillä. 4. Vakuutusten elinkaari on todella pitkä. 5. Korkeat laatuvaatimukset. Eläkkeet ovat usealle ihmisille ainoa toimeentulo. 3
Ympäristöt ja liittymät 4
Otsikko 1. Oikea testauskattavuus ja konfiguraation hallinta 2. Automaation mahdollisuudet 3. Testauksen ei välttämättä tarvitse tapahtua pelkästään käyttöliittymän läpi 4. Testiympäristöt ja testidata 5
Oikea testauskattavuus 1. Testauksen suunnittelussa on tunnettava seuraavat asiat: - Liiketoimintaprosessit - Testidata - Järjestelmäarkkitehtuuri 6
Miten päätetään mitä testataan? Järjestelmä a Järjestelmä b Palveluväylä a Palveluväylä b Järjestelmä c Järjestelmä d 7
Miten päätetään mitä testataan? Järjestelmä a Järjestelmä b Palveluväylä a Palveluväylä b Järjestelmä c Järjestelmä d 8
Miten päätetään mitä testataan? Järjestelmä a Järjestelmä b Palveluväylä a Palveluväylä b Järjestelmä c Järjestelmä d 9
Miten päätetään mitä testataan? Järjestelmä a Järjestelmä b Palveluväylä a Palveluväylä b Järjestelmä c Järjestelmä d 10
Miten päätetään mitä testataan? Järjestelmä a Järjestelmä b Palveluväylä a Palveluväylä b Järjestelmä c Järjestelmä d 11
Konfiguraation hallinta Konfiguraatio Järjestelmä a Järjestelmä b Palveluväylä a Palveluväylä b Järjestelmä c Järjestelmä d 12
Konfiguraation hallinta Konfiguraatio Versio 2 Järjestelmä a Versio 2 Järjestelmä b Palveluväylä a Versio 2 Palveluväylä b Järjestelmä c Järjestelmä d 13
Automaation mahdollisuudet Liiketoimintaprosessin testaus on työlästä käsin - Useat järjestelmät - Testidataa on hankala hallita - Osaaminen on hajautunut organisaatioon Automaatiolla saavutettavat hyödyt - Vähennetään manuaalitestauksen tarvetta - Lisätään kattavuutta - Kannattaa myös tutkia mahdollisuuksia hyödyntää automaatio testidatan luonnissa, siivoamisessa tai keräämisessä. 14
Testauksen ei välttämättä tarvitse tapahtua pelkästään käyttöliittymän läpi - Perinteinen työnjako testauksessa - Toimittajat ja integraattorit tekevät "teknisen testauksen" - Asiakas hyväksymistestaa pelkästään käyttöliittymän läpi - Kannatta pohtia onko omassa testauksessa hyödynnetty kaikkia rajapintoja - SOAP/Rest rajapintojen läpi voidaan testata toiminnallisuuksia aivan samalla tavalla kuin käyttöliittymän kautta - Tietokannasta voidaan suoraan lukea testituloksia tai kirjoittaa testidataa - Palveluväylistä voidaan varmistaa nopeasti mahdollisia konfigurointiongelmia. 15
Testiympäristöt ja testidata Ympäristöt, jotka mahdollistavat: Testidatan haltuunotto -> Versionhallinta käyttöön datalle ja konfiguraatioille Testidatan liikuttamista ympäristöjen ja versionhallinnan välillä (import/export) Ympäristöjen nopean pystyttämisen ja siivoamisen 16
Testiympäristöt ja testidata Ulkoinen palvelu Sisäiset järjestelmät Ulkoinen palvelu 17
Testiympäristöt ja testidata Ulkoinen palvelu Stubi / DB klooni Sisäiset järjestelmät Ulkoinen palvelu Stubi / DB klooni 18
Testiympäristöt ja testidata Konfiguraatioversio 1.0. Konfiguraatioversio 1.1. Stubi / DB klooni Stubi / DB klooni Sisäiset järjestelmät Sisäiset järjestelmät Stubi / DB klooni Järjestelmä 1.1. Liittymä 1 Versio 2.1. Stubi / DB klooni Järjestelmä 1.2. Liittymä 1 Versio 2.2. 19
Stubi / DB klooni Stubi / DB klooni Konfiguraatioversio 1.1. Sisäiset järjestelmät Järjestelmä 1.2. Liittymä 1 Versio 2.2. Konfiguraatioversio 1.1. Konfiguraatioversio 1.1. Stubi / Konfiguraatioversio 1.1. DB klooni Stubi / Konfiguraatioversio 1.1. DB klooni Stubi / Konfiguraatioversio 1.1. DB klooni Stubi Varman / järjestelmät Stubi / DB klooni Stubi Varman / järjestelmät Järjestelmä 1 DB klooni Stubi / DB klooni Varman Versio järjestelmät Järjestelmä 1.2. 1 DB klooni Stubi / Varman Versio järjestelmät Järjestelmä 1.2. 1 DB klooni Stubi / Sisäiset Liittymä Versio järjestelmät Järjestelmä 1 1.2. 1 DB klooni Stubi / Versio Liittymä 2.2. Versio Järjestelmä 1 1.2. 1 DB klooni Versio Liittymä 2.2. 1.2. Versio Liittymä 2.2. 1 Versio Liittymä 2.2. 1 Versio 2.2. 20