SAST Q1. Som att börja arbeta på ett nytt jobb. Testautomatisera med Modell-baserad testning



Relevanta dokument
Implementering av Model- Based Testing i LoadRunner

Testdriven utveckling av Web Services. Ole Matzura

Teststrategier och Testcertifiering. Per Strandberg, Maj 2013

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

Metoder och verktyg för funktionssäkerhet

V!cto. Att tjäna pengar genom bättre testning med

Agil testning i SCRUM

Property-based Testing. Hans Svensson SAST Väst Q

Enhetstester på.netplattformen

Testplanering, test-first, testverktyg

Några grundläggande begrepp

Undervisningen i ämnet webbutveckling ska ge eleverna förutsättningar att utveckla följande:

Belastningstester med Visual Studio Gränssnittet

Testbara krav. SAST Syd Ställ gärna frågor under presentationen eller efteråt Åhörarkopior distribueras efteråt

Dag König Developer Tools Specialist Microsoft Corporation

Övningstenta (Kursplan 2011) Ver 2015,

SAST Marie Östberg Konsult & Tjänsteområdesansvarig Krav på Qtema

DevOps i Verkligheten

IBM Software Group. Agil Acceptans Test. Annika Kortell SAST 15-års jubileum IBM Corporation

Jonas Hermansson

Creo Customization. Lars Björs

Vår resa till bra Acceptanstestning. Ingela Hagman Thomas Cook Northern Europe

men borde vi inte också testa kraven? Robert Bornelind

Kurser och seminarier från AddQ Consulting

Kurser och seminarier från AddQ Consulting

SKOLFS. beslutade den XXX 2017.

Agila Metoder. Nils Ehrenberg

Microsoft ALM Agenda. Processer metoder Kundcase Paus Under huven på Visual Studio Team Test Frågor och Svar + en liten tävling

Presentation. Fredrik Runnsjö 1996 Utvecklare 2004 Testare ~2006 Scrum/Canban

SCRUM på Riksarkivet. Magnus Welander /

ALM Live. April 2008 Effektivare projektarbete med Visual Studio 2008

Testramverk och Model based testing med java i praktiken

Skapa kreativa och innovativa testorganisationer. Staffan Iverstam, QualityMinds

Övningstenta, examinationsfrågor

Copyright Prolore All Rights Reserved.

Configuration testing Why? Vad det är tänkt att koden ska göra. Performance testing Kommentarer Skriva om koden som kommentar

Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod

Programmering. Hur, var, när och varför. 22 November. Lars Ohlén Tieto

Yanting Larsen. Mjukvaruutvecklare. Cybercom Group

Testautomation av sammansatta och mobila applikationer. Magnus Nilsson Lemontree

Regressionstestning teori och praktik

TDDI02. Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Filhanterare med AngularJS

men borde vi inte också testa kraven?

Kursöversikt Certifierad Mjukvarutestare

Continuous Integration med Jenkins. Linus Tolke Enea Experts

Test och utvärdering - introduktion. Systemering med användarfokus Malin Pongolini

Automatisk generering av enhetstester

Uppgift v1: Teststrategi i sammanhang Terese Berger. Teststrategi. Projekt CiviCRM. Version 0.9. Sida 1(7)

Swedbank Mobile Loadtesting. LoadRunner Mobile App protocol

Visuell GUI Testning

Objektorienterad programmering, allmänt

Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha?

Jörgen Damberg, Claremont, SAST Örebro Testautomation. När, var, hur?

Att tänka på inför integrationen

ALM Live: Testfokus bättre mjukvarukvalitét med Visual Studio 2008 Team System

Användningscentrering i agila utvecklingsprojekt. johanna.sarna@valtech.com Valtech

Distribuerade affärssystem

Teknisk testning för otekniska testare

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS

Java Programmer for JDK Developer for Java 2 Platform 2002

Ajax TruClient. Erfarenheter, tips och trix från Swedbank IT. Christian Gerdes Performance Engineer, LIGHTS IN LINE AB

12 principer of agile practice (rörlig)

Automation Region. Affärsdriven systemutveckling genom agila metoder. Stefan Paulsson Thomas Öberg

Date Version Description Author. 1 Introduktion s Översikt av Vårdguiden 1.2 Syfte och Omfattning Inkluderat

När? Varför? För vem? Resultat? (Artefakter?)

Sammanfattningar Essentials of Software Engineering

Tentamen. 2D4135 vt 2005 Objektorienterad programmering, design och analys med Java Lördagen den 28 maj 2005 kl

Verktyg för agil systemutveckling. Vad är ett verktyg? Olika typer av verktyg för mjukvaruutveckling. Vad kan ett bra verktyg tillföra?

BILAGA E till Programvaruprojekt ÅTERSTÅENDE PROBLEM MultiPC v1.0. Innehållsförteckning

Samarbetsstrukturer för att självorganisera inom givna ramar.

I detta nyhetsbrev. Stockholm Q1 Prestanda och automation Värmland Q1 Verktyg. Årsmöte och konstituerande möte. Ordförande har ordet

Arbeta med databas. Översikt. Lektion 1: Arbeta med Entity Data Models. Arbeta med Entity Data Models. LINQ (Language Integrated Query).

TRADITIONELLA FAKTURALÖSNINGAR VS. BILLOGRAM

Vision Med fokus på kvalitet och effektivitet bidrar vi till att underlätta människors vardag.

Utvecklingen av test hos Microcraft AB. microcraft ab 2006

på ett stort spelföretag Andreas Ström

Kurser inom Datavetenskapligt kandidatprogram och Computer Science Master s programme våren 2010

Symptom på problemen vid programvaruutveckling

Nevenka Silfverhielm

Pragmatisk programmering. Cyberrymden Marcus Rejås Pragmatisk programmering,16 december (29)

Scrum i praktiken Tillämpning inom Gripen demonstrator. Fredrik Lorentzon & Marcus Frejd SESAM

Användning av testautomation inom Extendas utvecklingsorganisation

Referensuppdrag Soleil

AGILA METODER. (för oss som inte kodar) Nina Berlin

Tentamen. DD2385 Programutvecklingsteknik vt Fredagen den 5 juni 2009 kl Inga hjälpmedel utom penna, sudd och linjal

Utforskande testning Så gör jag. Torbjörn Ryber Fearless Consulting

WEBBSERVERPROGRAMMERING

Projekt intranät Office 365 av Per Ekstedt

Therese Hansson & Magnus Jonsson. Motivationsfaktorer - Test inom Agila utvecklingsprojekt

Webbserverprogrammering

ODIN Testdag Atlassians verktyg i en testorganisation Nordic Medtest

Objekt, klasser. Tillstånd Signatur Kommunikation Typ. Fält, parametrar och lokala variabler. Konstruktorer Metoder DAVA15

Kommunal Jämförelsetjänst

Scrum + XP samt konsekvensanalys

Tentamen. DD2385 Programutvecklingsteknik vt 2013 Onsdagen den 22 maj 2013 kl Hjälpmedel: penna, suddgummi, linjal

- Effektiv prestandatestning, teknisk verifiering, tuning, verifiera krav, förvalta prestanda

Testplan Cykelgarage

Agil transformation och DevOps Hur lyckas du? Stockholm, Stefan Ingelgård

Transkript:

SAST Q1 Som att börja arbeta på ett nytt jobb Testautomatisera med Modell-baserad testning Christina Nordström Kristian Karl

Christina Nordström Test sedan 1996 Aldrig testautomatiserat Enhetschef Testenheten It-avdelningen PPM Tf chef It-avdelningen PPM (fr o m januari 2009)

Kristian Karl Testautomatiserat sedan 1994 Modell-baserad test sedan 2004 Arbetar på Prolore [Specialiserat på Testautomatisering, Prestanda samt Utbildningar inom dessa områden]

Agenda PPM Projektet Testautomatisering Modell-baserad test (MBT) MBT på PPM Reflektioner Framgångsfaktorer

PPM

PPM + FK = nästan sant PPM 315 dagar kvar Pensionsmyndigheten

PPM idag Ca 220 anställda 77 på it-avdelningen 11 på testenheten 6,1miljoner kunder 560 000 pensionärer Fondvärde ca 300 miljarder kronor 500 miljoner rader i transaktionstabellen

PPM enl Regleringsbrevet PPMs uppgift är bl a Administrera och förvalta premiepensionssystemet Verka för ökad kunskap om premiepensionen

Syftet med 2K Externa aktörer Ge information om innehav på sitt premiepensionskonto på extern aktörs webbplats Möjliggöra fondbyten, på sitt premiepensionskonto, via en extern aktörs webbplats Skapa en säker lösning för att hantera stora mängder fondbyten som förvaltningsföretag gör för p-sparares räkning

Tekniken i projektet Synkrona- samt asynkrona meddelanden Webservices (SOAP) Filöverföringar (batchkörningar) XML fram och tillbaka, hit och dit

Syftet med 2K - IT-projektet Utveckla och produktionssätta tekniskt gränssnitt och infrastruktur som gör detta möjligt!

Projektets förutsättningar Budget IT - 25,8 miljoner kronor Ca 28 000 mantimmar (blir 35 000) Ca 20 konsulter och 10 anställda Scrumprojekt!!! (4 team)

Varför testautomatisera? Testa varje gång det har skett en förändring! Hitta fel så snabbt som möjligt Bli lika agila som utveckling (!?) Naturligtvis finns det tester som inte kommer att automatiseras.

Tidigare försök... Försök har gjorts Underskattat insatsen inte avsatt så mycket tid och resurser som verkligen krävs Verktygsinriktat

Varför gick det bättre nu? Testautomatisering är inget verktyg Det är en process Verktyg, metoder och personer är lika viktiga

Modell-baserad testning

Vad är MBT? Wikipedia Test case generation by: theorem proving constraint logic programming model checking symbolic execution using an event-flow model using an Markov chains model

Varför MBT? Modeller är enklare än de system som de avbildar, därmed enklare att förstå Visuella! Enklare att designa tester Lyfter bort logiken från skripten Lättare att underhålla

MBT Crash course - Process

MBT Crash course - Process

MBT Crash course - Design Avancerad Standard

MBT Crash course - Design

MBT Crash course - Design

MBT Crash course - Design

MBT Crash course - Process

MBT Crash course - Koda Exempel på funktion e_scientific implementerad i QTP '@Description Implements the Edge 'e_scientific' Public Function e_scientific() Window("Calculator").WinMenu("Menu").Select "View;Scientific" End Function

MBT Crash course - Process

MBT Crash course - Exekvering

MBT Crash course - Exekvering Generering av testfallssekvenser Generering Slumpat (Fyllegång) Optimerat Stopkriteria Samtliga övergångar Tid Längd Specifikt tillstånd Specifikt övergång

MBT Crash course - Exekvering Offline vs. Online Offline (statisk) Testsekvensen genereras före testet. Samma sekvens varje test Lätta att implementera Online (Dynamisk) Testsekvensen genereras vid varje test Unik sekvens för varje test Skapar bättre testtäckning

MBT Crash course - Exekvering Testfallssekvens e_initialize v_stopped_std e_start v_running_std e_scientific v_running_sci e_stop v_stopped_sci e_start v_running_sci

MBT på PPM 1(4) Design av tillståndsmodeller Med hjälp av krav och verksamhetskunskap ritas en tillståndsgraf i yed (editor) Kraven noteras i modellen (för spårbarhet och testrapportering)

MBT på PPM 2(4) Gemensam granskning av modellerna Innan man börjar koda, så granskas modellen.

MBT på PPM 3(4) Implementering av kod Klient byggd i java testas mha QTP Tester mot webben tillverkas i Selenium Mocka bort beroenden!!!

MBT på PPM 4(4) Leverans av testerna till Integrationsteamet När testerna förväntas fungera i den integrerade testmiljön, så levereras dom Testerna anpassas för att köras integrerat, dvs med beroenden av andra system

MBT på PPM En sprint Tid Utv. / Test Utv. / Test Utv. / Test Utv. / Test Utv. CVS

MBT på PPM Nattliga byggen Körs varje natt Testar allt som är incheckat Testerna går i en integrerad miljö (omockad)

Reflektioner från omgivningen Nattliga byggen exponerar fel tidigt. Detta kan leda till frustration, då man kan tycka att: Ingenting fungerar! Överflöd av tester. Vadå 238.000 testfall? Begreppet 'Planerade testfall' existerar inte Test och utveckling har fått en ny relation Mätetal! Hur redovisar man resultat på ett vettigt sätt?

Resultat 69 felrapporter, på 8 månader, på 10 testare Om vi hade skrivit 1.000 felrapporter, och om varje felrapport kostat 2 timmar? Många fel löstes enkelt, utan att behöva skriva felrapporter Icke-experter designar tester Varje natt testas allt: Enhetstester Funktionella API-tester GUI-tester Prestandatester

Framgångsfaktorer En duktig Scrum master Experthjälp Nyfikna, öppna, intresserade och "villiga" testare MBT - Modellerna Mockade (stubbade) testmiljöer Vid sprintplanering: 1 timme utv = 1 timme test Fungerande nattliga byggen och deploy

Resurser Verktygen http://mbt.tigris.org http://www.yworks.com Model-Based Testing http://www.geocities.com/model_based_testing/ http://www.goldpractices.com/practices/mbt/index.php http://en.wikipedia.org/wiki/model-based_testing

Litteratur och annat Litteratur Model-Based Software Testing and Analysis with C# by Jonathan Jacky, Margus Veanes, Colin Campbell, Wolfram Schulte 2008 Practical Model-Based Testing: A Tools Approach by Mark Utting and Bruno Legeard, Morgan-Kaufmann 2006 Video Model-Based Testing: Black or White? - Google Talk (Utting) http://video.google.com/videoplay? docid=5521890509476590796&q=mark+utting&total=545&start= 0&num=10&so=0&type=search&plindex=0

Frågor