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



Relevanta dokument
Testramverk och Model based testing med java i praktiken

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

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

PRODUCT MANAGEMENT. Klicka här för att ändra format. Klicka här för att ändra format på underrubrik i bakgrunden

ISTQB Testarens ledstjärna

QC i en organisation SAST

Senaste trenderna från testforskningen: Passar de industrin? Robert Feldt,

Kvalitetssäkra ditt projekt med kontinuerlig integration

Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel

Stad + Data = Makt. Kart/GIS-dag SamGIS Skåne 6 december 2017

Testplanering, test-first, testverktyg

Hammer & Hanborgs Kompetensprofil

HUR OCH VARFÖR DIGITAL!

Klicka här för att ändra format

Innovation in the health sector through public procurement and regulation

Steget efter CAD Data Management. Per Ekholm

Support Manual HoistLocatel Electronic Locks

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

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

RUP är en omfattande process, ett processramverk. RUP bör införas stegvis. RUP måste anpassas. till organisationen till projektet

Regressionstestning teori och praktik

Bridging the gap - state-of-the-art testing research, Explanea, and why you should care

Webbtillgänglighet. Tillgänglighet på webben. Hörselskadades behov. Synskadades behov. Kognitivt funktionshindrades behov. Rörelsehindrades behov

Software Engineering. Agneta Nilsson, PhD MPA Software Engineering Master s Programme

Sara Skärhem Martin Jansson Dalarna Science Park

Säkerhetsfunktioner rstå varandra? Finns behov av att avvika från normal säkerhetsfunktion s vissa betingelser under uppstart, ändringar i processen

3rd September 2014 Sonali Raut, CA, CISA DGM-Internal Audit, Voltas Ltd.

Om oss DET PERFEKTA KOMPLEMENTET THE PERFECT COMPLETION 04 EN BINZ ÄR PRECIS SÅ BRA SOM DU FÖRVÄNTAR DIG A BINZ IS JUST AS GOOD AS YOU THINK 05

Health café. Self help groups. Learning café. Focus on support to people with chronic diseases and their families

Creo Customization. Lars Björs

A metadata registry for Japanese construction field

Vässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson

GeoGebra in a School Development Project Mathematics Education as a Learning System

AGIL KRAVHANTERING. Hitta behoven bakom kraven!! Thomas Nilsson! Agile Coach & Mentor! CTO, Responsive

Hur hanterar vi risk? Vad är TKO? Skillnad på agil och trad? Agil/Lean: Defer Commitment, Build knowledge, Fail fast

Nationellt stöd för finansiering av mjukvaruberoende innovation ANDREAS ALLSTRÖM

Alla Tiders Kalmar län, Create the good society in Kalmar county Contributions from the Heritage Sector and the Time Travel method

Enterprise App Store. Sammi Khayer. Igor Stevstedt. Konsultchef mobila lösningar. Teknisk Lead mobila lösningar

SAST Q Jörgen Damberg

Nya möjligheter med M3 Technology. Björn Svensson, Björn Torold

Testning som beslutsstöd

Flytta din affär till molnet

CIO MÖTE OSLO 17/11 INFORMATION // INTELLIGENCE // ADVICE. Radar Ecosystem Specialists

Mjukvarukraft Integration som Tjänst (ipaas)

Sammanfattningar Essentials of Software Engineering

OPEN NETWORKED LEARNING EN ÖPPEN KURS FÖR KOLLABORATIVT LÄRANDE ONLINE I SAMVERKAN MELLAN LÄROSÄTEN

Linköpings universitet 1

Exercise 4a: Test 2 ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15. Lund University Computer Science ETSA01 Ingenjörsprocessen - Metodik VT15 Exercise 1

Testning på 3 föreläsningar. PV7180 Verifiering och Validering. Litteratur. Vad är testning? Varför testa och olika syn? Målet med testning

Wood Buildings. -Development in Sweden Niclas Svensson, Swedish Wood Building Council. Niclas Svensson, Swedish Wood Building Council

.SE (Stiftelsen för Internetinfrastruktur) Presentation November 2009

Innovation och produktutveckling. Joakim Lilliesköld & Liv Gingnell

Platina och kvalité. Rasmus Staberg, Teknisk direktör,

Kvalitetsarbete I Landstinget i Kalmar län. 24 oktober 2007 Eva Arvidsson

Här kan du checka in. Check in here with a good conscience

OFTP2: Secure transfer over the Internet

Våra tjänster [Our services] UMS Group Inc., All Rights Reserved


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

GADD Software en introduktion

Mapping sequence reads & Calling variants

Strategy for development of car clubs in Gothenburg. Anette Thorén

FK Electrodynamics I

Rosetta. Ido Peled. A Digital Preservation System. December Rosetta Product Manager

Flytta din affär till molnet

Problem som kan uppkomma vid registrering av ansökan

Visuell GUI Testning

employee engagement concept (Eec) - a respectful work life designed around people -

PDM Implementation & Change Management /FRN

Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer

Beijer Electronics AB 2000, MA00336A,

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document

FRAMTIDENS FÖRPACKNINGAR OCH DESIGN OM KONSUMENTEN FICK BESTÄMMA

Samarbete i större infrastrukturprojekt med informationsmodeller som bas genom hela BIM baserade processen

CHANGE WITH THE BRAIN IN MIND. Frukostseminarium 11 oktober 2018

Industriell Marknadsföring & Supply Chain Management Del 2 Supply chain management Håkan Aronsson


Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer

Här kan du sova. Sleep here with a good conscience

Mathematical Cryptology (6hp)

på ett stort spelföretag Andreas Ström

Adding active and blended learning to an introductory mechanics course

Mobile IT systems and home care applications

Biblioteket.se. A library project, not a web project. Daniel Andersson. Biblioteket.se. New Communication Channels in Libraries Budapest Nov 19, 2007

PRODUKTINNOVATION Civilingenjör 180 p

Testautomatisering. Intro

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

EVALUATION OF ADVANCED BIOSTATISTICS COURSE, part I

ISO STATUS. Prof. dr Vidosav D. MAJSTOROVIĆ 1/14. Mašinski fakultet u Beogradu - PM. Tuesday, December 09,

SharePoint 2010 licensiering Wictor Wilén

icore Solutions. All Rights Reserved.

Theory 1. Summer Term 2010

Make a speech. How to make the perfect speech. söndag 6 oktober 13

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

RADIATION TEST REPORT. GAMMA: 30.45k, 59.05k, 118.8k/TM1019 Condition D

Implementationsstrategier för PLCS

Den Röda Tråden. Vi kan ta fram arkitekturkrav. Vi kan ta fram arkitektur och design. Vi kan skriva Clean Code KRAV DESIGN IMPLEMENT VISION TEST

Resultatkonferens Välkommen!

Strategiska partnerskap inom Erasmus+ erfarenheter från första ansökningsomgången

The Municipality of Ystad

Transkript:

Hello world

Jörgen Damberg, Claremont, SAST Örebro 2014-06-03 Testautomation När, var, hur?

Vad vill ni prata/höra om?

10 CLS 20 Print Testing, boring routine work? 30 REM Short 40 PRINT Test automation introduction 50 PRINT Test automation concepts 60 PRINT Do/Dont 70 PRINT Tools 80 INPUT$ 90 GOTO Mingle 100 SLEEP 60*60 110 GOTO Home

verkliga Testningens uppgift Tänka på allt som ingen annan tänkt på Finna ut var olika människor förstått eller tolkat samma sak olika Upptäcka alla förutsättningar som ingen annan upptäckt Specialfall i data eller användning Användningsområden Tidsberoenden Tekniska beroenden osv Påtala glömda aktiviteter Hitta var någon råkat gjort fel

[au-tu-ma-ti sé-ra ]

Current trends beneficial for test automation TDD/BDD Shorter iterations Focus on business value Focus on working code Refactoring Centraliced architektures quick change cycle Dynamic teams Insights in maintenance costs A lot of reuse of old code in new ways More use of standard components Better automation tools Cheaper automation tools Parallell development and maintenance More mature testing insights in many organizations Test automation

Current trends making test automation more cumbersome Shorter life cycles for development technologies More frequent changes to systems The W model is flattened Products under test getting more and more complex Maaaaany devices Test automation

Testning Testing Checking/ verification Validation

Mini course in automated testing Test automation

Why automate the testing? Faster execution => quicker/more frequent feedback More exact checks very repetetive Not being dependent on specific persons with specific competences, and getting rid of the lead times from that dependency Re-use of effort Quality metrics More combinations tested Freeing time for manual testing where the humans excel

Risk Continuous quality control Risk reduction Time

Automated testing When? Support programmers Critique product Functional AT Showcasing Exploratory Business facing Automated Manual Technology facing Unit tests Edge cases Fast ~80% of the tests Automated Automated/ Manual Performance tests Security tests

UT IT Varje Pros nivå har sina Cons pros&cons Robust Cope with change Quick Thorough Quite quick Could get thorough Easy to implement negative testing Robust Doesn t test that the system works Easily simplified More care to the environment Data management is an issue ST Test the whole system Make sure the business value remains Slow Many dependencies Hard to get good coverage SIT Quick (In the best of worlds) Slow (In the worst of worlds) Lots of dependencies Hard to get coverage Dependencies to things outside of team control

Automation type Business process coverage Code coverage Execution time GUI 70% 5% Hours API 25% 25% Minutes Unit testing 5% 70% Seconds

Körs ofta Kodnära Whitebox. Testtyper Tester som säkrar utvecklingsteamets heder inför beställaren (kod, DBstruktur osv) Sprinttester Enhetstester Körs mindre ofta Förtroendeskapande Blackbox Tester som säkrar ITorganisationens heder inför verksamheten (MW-konfiguration, produktionsplanering osv) Scenariobaserade flödestester Smoke tests

Stor kostnad Mycket ledtid Mycket kod Mycket underhåll Komplex interaktion Komplexa gränssnitt

Ett testautomatiseringsscript motsvarar den mest detaljerade testspec du någonsin tagit fram, och som alltid måste vara exakt uppdaterad för att funka. Förmodligen dessutom av specialister Ställer stora krav på testkodsarkitektur för att bli förvaltningsbart

Checking and verification against an oracle In order to have an oracle for at test case you ll need: Correct sequence of events, on the right object Appropriate environment (i.e. parameter configuration, integrations) Right versions of components Correct input data Right order of test executed Assumed meta-data in the system Assumed background data in the system Correct user rights for the user account and so forth

Verktygstyper - systemtest Verktygsvalet beror på val av approach och gränssnitt WS/API/MQ och andra systemgränssnitt ICC-verktyg Protokollnivå (headless browser) GUI-verktyg Bildigenkänning Objekthanterande

Vilka tester lämpar sig för automation? Tråkiga tester Datadrivna tester Smoke tests (vertikal integration) Vital, men perifer, funktionalitet (affärsregler) Tidödande tester Testförberedelser Test automation

Utmaningar med automatisering Lätt att råka tappa kontrollen över vad testfallen gör Det ÄR en mjukvarulösning med intima beroenden till en annan mjukvarulösning Kräver disciplin Kommunikationsglapp blir tydliga vid en automatisering Ta hand om någon annans bebis Scripten är i förvaltning från första körningen. Blir lätt nerprioriterat när det hettar till, och tappar då snabbt värde Ingen serendipitet

Fördelar med automatisering Fördelar med automatisering: Ökad förvaltningbarhet av systemet Snabbare incidenthantering Testtid över till mer högvärda tester Fler kombinationer testade, mer regelbundet Snabbare återkoppling Noggranna kontroller Slippa personberoende och ledtider Testa oftare

Skill set för testautomatiserare Kommunikation Struktur Kreativitet

Är det verkligen testexekveringen som man ägnar mest tid till?

Effektiv testning Koll på förutsättningarna för test Koll på utvecklarmaskiner, kodgrenar och byggen Automatisera det som gör mest nytta Informations-spårbarhet Kommunikation Testdatahantering Testfallsframställning (Pairwise testing) Testmiljöhantering Testexekvering

More things to automate Automation of combinatory testing: Pairwice Automation of test data management (subsetting, anonymization of data, syncing data between systems, configuration management) Automation of release management/deployment

Detta är verktygs-bilden (gratisverktyg) Pairwice: ACTS, Pict, Allpairs GUI-baserade systemtester: Sikuli Objekt-baserade systemtester: AutoIT, Selenium, Sahi, Watir/Watin BDD: Specflow/Cucumber API-baserade systemtester: SoapUI Webb-utilities: Link-crawlers (Xenu), W3Ccheckers, Firebug, Yslow, Chrome Dev.tools. Miljöhantering: PowerShell, AutoIT

Några olika testautomationskoncept Model based testing (MBT) Specification by example (SBE/BDD) Testapor Scenariobaserad end-2-end testing Automatiserade regressionstester Datadriven testning Keyword driven test automation

Alternativ till automation Hårt arbete Optimera utvecklingsprocessen Test on tap Acceptans av risk och teknisk skuld Acceptans av ledtider Redigt tillförlitliga rollback-rutiner

Frågor, sharing, synpunkter och kommentarer

PageObject Model Introduction MBT ATDD TDD BDD Success factors SIT ST History Pitfalls Alternatives Pairwice testing UT CI/CD Deploy process Specification-by-example Test data management Environments Challenges Tips and trix Etc Choosing the right tool Appropriateness and ROI

Further reading? Googleable stuff Page Object Model/Data Factories Keyword driven testing Stuff to try out Opensourcetesting.org HP/IBM/MicroFocus/MS web sites JAutomate, Project White, Specflow Attend a course

Tack! Jorgen.damberg@claremont.se @kejsardamberg