Til tester

Denne del af vejledning er målrettet testere, der ønsker at lære, hvordan man bruger Azure Test Plans til at udføre testopgaver i deres projekt.

Som tester ligger fokus på at analysere krav, designe testen, oprette og afvikle testcases. Azure Test Plans har de nødvendige værktøjer til at understøtte testerens arbejde med at udføre testaktiviteter, registrere testresultater og rapportere fejl i et struktureret miljø.

Denne side indeholder ikke en vejledning til, hvordan Azure Test Plans fungerer. Til det henvises der til de gode beskrivelser fra Microsoft (se links nederst på siden), som allerede findes. Formålet med denne side er at give anbefalinger til, hvordan vi her på AU bedst anvender værktøjet. 

Testproces med Azure Test Plans

​Forudsætninger

Forudsætninger for at komme i gang med at anvende Azure Test Plans:

  • Der skal oprettes et projekt i Azure Devops
  • Der skal sikres de rette brugerrettigheder og -adgange
    • Som test manager er der behov for at kunne oprette testplaner og testsuites, hvilket kræver den store Test Plans-licens.
    • Som tester er der behov for at kunne oprette testcases og afvikle testpoints, hvilket kræver en basic-licens.

Processen kort

  1. Opret testcases (kan også oprettes direkte under testsuiten – eller på et senere tidspunkt) 
  2. Opret testplan (kræver Test Plans-licens)
  3. Opret testsuites (kræver Test Plans-licens)
  4. Opret eventuelle konfigurationer og assign til testplan/testsuite/testcase
  5. Afvikl testpoints
  6. Rapporter eventuelle fejl
  7. Gentest ved at genafvikle testpoints (alternativt opret en ny testplan/testsuite, tilknytte de relevante testcases og afvikl testpoints).
  8. Lav løbende opfølgning ved hjælp af "progress report" og andre relevante udtræk/´dashboards.

Oprettelse af testcase

Testcases kan oprettes forskellige steder i Azure Devops.

Opret nyt workitem

  • Opret nyt workitem af typen "Test Case" 
    • Testcasen tilknyttes ikke til en testplan eller en testsuite automatisk.
    • Testcasen er ikke tilknyttet en user story, medmindre relationen manuelt er indtastet under oprettelsen.
    • Testcases er ikke synlige hverken på teamets board eller på sprint boardet.
    • Testcasen fremgår af listen over workitems under Board > Work Items og kan tilsvarende fremsøges via Query.
    • Testcasen skal manuelt lægges i relevant testplan/testsuite for at kunne afvikles.

Yderligere information

https://learn.microsoft.com/en-us/azure/devops/test/create-test-cases?view=azure-devops

 

Opret via board

  • Opret testcase via teamets board > User Story-kort > "Add test"
    • Testcase oprettes med en overskrift og kan efterfølgende tilføjes yderligere beskrivelse, steps m.m.
    • Gør det nemt at brainstorme, hvad der skal testes på hver enkelt user story.
    • Testafviklingsstatus er synlig på user storiens kort på boardet, hvilket giver et nemt overblik over teststatus.
    • Testcase og user story relateres automatisk til hinanden, derved sikres sporbarhed
    • Hvis der er oprettet en testsuite af typen "Requirement based" (anbefales til sprinttest), som indeholder user storien, vil testcase automatisk blive tilføjet suiten, så den kan afvikles. Se Opsætning af test suites for yderligere beskrivelse af blandt andet  requirement based testsuites

Opret via testsuiten

  • Opret testcase via testsuite > Define-fane > knappen "New test case" > "Add a new test case using a form"
    • Testcasen tilknyttes testsuiten, den oprettes i
    • Hvis testsuiten er requirement based, relateres testcase og den user story, den oprettes på, automatisk til hinanden, og testafviklingsstatus er synlig på user storiens kort på boardet.
  • Opret testcase via testsuite > Define-fane > "New testcase" > dropdown > "Add testcases using grid"
    • Griddet giver mulighed for i samme billede at oprette flere testcases nemt og overskueligt.
    • Når der trykkes på gem-knappen, oprettes testcase på samme måde, som var der brugt form (se ovenfor). 
    • Gem-knappen sidder til venstre i toppen af griddet og ser sådan ud: 
    • Man kan oprette overskrift, teststeps, tildele testcasen til relevant person, angive status og prioritet i griddet.

Tilføj eksisterende testcase til testsuite

  • Tilføj eksisterende testcase til testsuite via Define-fanen > "Add existing test case"
    • Tilføj de relevante søgekriterier og fremsøg den eller de testcases, der skal tilføjes
    • Marker de ønskede testcases og klik på "Add test cases"

Shared elements

Shared steps

  • Shared Steps består af en række teststeps, som kan anvendes på tværs af testcases.
    • Steps, som man ofte anvender i test cases, kan med fordel oprettes som Shared steps - eksempelvis login

Shared parameters

  • Shared Parameters er et defineret sæt af testdata, som kan anvendes på tværs af testcases.
    • Eksempelvis brugerdata til at teste login

Yderligere information

Configuration

  • Configuration anvendes til at kombinere konfigurerbare variable værdier. Eksempelvis operativ system, browser eller database.
  • En konfiguration kan tilknyttes en testsuite og arves til underliggende niveauer (testsuite/testcase) - eller den kan tilknyttes til testcases.
  • Hver kombination giver et test point, som kan afvikles – eventuelt i kombination med tester.
  • Anvendes som alternativ til at oprette en testcase pr. kombination (eksempelvis testcase 1: Windows med Safari, testcase 2: Windows med Edge, testcase 3: Windows med Chrome - anvendes i stedet configuration, opretter man kun en enkelt testcase, og der oprettes automatisk 3 testpoints til at dække kombinationen af OS Windows med browserne Safari, Edge og Chrome).

Opdatering af testcases

  • Hvis man laver rettelser til en testcase, som allerede er lagt i en testsuite, opdateres hvert testpoint tilsvarende.
  • Der er historik på ændringer i testcasen.
  • Hvis man har afviklet testcasen, INDEN man laver rettelser til den, kan man under execute-fanen > ”View test result” se resultatet af hver enkelt afvikling.
  • Man kan tilsvarende se ændringen under historik-fanen på selve testcasen.
  • Hvis man har ændringer til en testcase, der allerede er afviklet, anbefales det, at testcasen kopieres til en ny testcase, hvori ændringerne foretages - og at man eventuelt lukker den oprindelige testcase, hvis den ikke længere er relevant. Denne tilgang gør det nemmere at se, hvordan testcasen så ud på afviklingstidspunktet. Alternativt skal man foretage rettelserne i den oprindelige testcase, men så er man nødt til at sammenholde testcasens historik med afviklingstidspunkterne for at se, hvordan testcasen faktisk så ud i de forskellige afviklinger.

Klon versus kopier testcase

Klon testcase

    • Der oprettes en reference til den testcase, der klones
    • Ændringer i oprindelig testcase/testsuite slår igennem på klonen
    • Ændringer i klonen, slår igennem på den oprindelige testcase/suite.
    • Anvendes, hvis den samme testcase skal afvikles i flere testsuites. Man skal kun foretage ændringen i ét sted, hvorefter det slår igennem i alle instanserne.
    • Funktion: ”Import test suites” > ”Add existing test case” eller importer fra eksisterende testsuite

Kopier testcase

    • Der oprettes et nyt work item, som er uafhængig af den oprindelige testcase/testsuite
    • Ændringer i oprindelig testcase/testsuite slår IKKE igennem på klonen
    • Ændringer i klonen, slår IKKE igennem på den oprindelige testcase/suite.
    • Anvendes, hvis der elementer fra en eksisterende testcase, skal bruges som udgangspunkt for en ny testcase, men der er behov for at tilrette den nye testcase, uden at den oprindelige testcase skal ændres.
    • Funktion: ”Create copy of work item” direkte fra testcasen.

Slet testcase

  • Slet fra testsuite
    • Hvis man sletter en testcase fra en testsuite, anvendes funktionen ”Remove”.
    • Testcasen slettes ikke, men referencen fra testsuiten til selve testcasen slettes.
    • Selve testcasen eksisterer forsat som work item.
    • Test points slettes.
  • Slet testcase permanent
    • Hvis man vil slette en testcase HELT, kræver det specifik permission (tilladelsen ”permanently delete work items”), samt at man er medlem af projektets adminstratorgruppe, OG at man har Test Plan licens eller Visual Studio Enterprise licens).

Afvikling af testcases

  • Samme testcase kan indgå og afvikles i flere forskellige testplaner og testsuites.
  • Samme testcase kan afvikles af flere forskellige testere i samme suite – så lægges der ekstra test points ind i suiten.
  • Testafviklingen sker via en testrunner, enten som webapplikation eller som desktopapplikation (skal downloades).
    • I testrunneren kan man:

      • Oprette bug
      • Tage screenshot
      • Optage (med og uden lyd)
      • Optage log
      • Tilføje kommentarer til hvert enkelt teststep
      • Tilføje dokumenter
    • Se i øvrigt forudsætninger og beskrivelse af testrunner i link til højre.

Yderligere information om testrunner

https://learn.microsoft.com/en-us/azure/devops/test/run-manual-tests?view=azure-devops

Testpoints

  • Testcases i sig selv er ikke eksekverbare.
  • Når der tilføjes en testcase til en test suite, genereres der automatisk et eller flere test points. Et test point er en unik kombination af testcase, test suite, konfiguration og tester.
  • Eksempel: Hvis man har en testcase med navnet "Test login funktionalitet" og tilføjer to konfigurationer (en for Edge og en for Chrome browser), oprettes automatisk to testpunkter. Hvert test points kan afvikles.
  • Ved afvikling af testpoints genereres der testresultater. Under ”view test result” eller ”view execution history” kan man se alle afviklinger af et test point.
  • I fanen ”Execute” vises den seneste afvikling for test poin’et.

Teststeps

  • Teststeps, som har et forventet resultat (“expected result”) kaldes et “validerings-teststep” (“validation test step”).
  • Validerings-teststeps skal under afvikling af en testcase tildeles en status.
  • Det samlede resultat for en testcase afspejler statussen for alle de teststeps, som testeren har markeret med en status. Testcasen vil få status som ”Fail”, hvis testeren enten har markeret et enkelt valideringsstep som ”failed” eller undladt at give et valideringsstep en status.

Udforskende test

  • Man kan fra sprintboardet bruge addon´et "Test and feedback" til at afvikle udforskende test.
  • Åben "Test and feedback" og følg vejledningerne her:
  • Værktøjet "Test and feedback" anvendes til løbende at registrere noter, skærmbilleder, skærmoptagelser m.m. og tilbageføre disse til Azure Devops.
  • Der kan via "Test and feedback" oprettes følgende (som derefter oprettes automatisk i Azure Devops):
    • Bug
    • Task
    • Testcase 
  • Der linkes automatisk mellem den user story, der testes, og den bug/task/testcase, der oprettes under den udforskende test.
    • Bugs bliver synlige i boardet og/eller sprintboardet (afhængig af, hvordan bugs er konfigureret i Azure Devops).
    • Tasks bliver synlige i sprintboardet.
    • Testcases bliver synlige under den User Story, der er testet og skal kan efterfølgende lægges i relevant testplan/testsuite - eller tagges "Regressionstest" til senere brug. 

Yderligere information

For mere information og hjælp til Azure Test Plans, kan du udforske følgende sider: