Unit Testing Succinctly Testing Basics

Dette er et utdrag fra Unit Testing Succinctly eBook, av Marc Clifton, gitt vennlig av Syncfusion.

For det første antas det at to andre viktige deler av ethvert programvareutviklingsprosjekt er på plass:

  • Et kildekontrollsystem, som CVS, SVN, Git, Mercurial, etc.
  • Et feilsporingssystem, for eksempel Bugzilla, FogBugz, etc..

Microsoft gir integrasjon av disse brikkene med Visual Source Safe, SharePoint og andre produkter.

Hvis du ikke har det både av disse stykkene allerede på plass, stopp nå. Disse er viktige komponenter i en god, solid testprosess.


Så du har en feil

Hvis du oppdager en feil, enten ved å bruke programmet eller en feiltestetest:

  • Rapporter feilen i feilsporingen og tilordne den til noen.

Hvis feilen ikke rapporteres av en enhetstest, men ble oppdaget ved hjelp av koden (enten en annen utvikler eller en bruker):

  • Skriv enhetstesten som bekrefter hvordan du lager problemet (se "negativ testing" beskrevet tidligere).

Med ditt kildekontrollsystem:

  • Vurder å lage en fil spesifikt for denne feilrettingen.

Deretter:

  • Skriv enhetstesten som beskriver hvordan metoden skal fungere riktig.
  • Fest feilen og prøv igjen.

Med ditt kildekontrollsystem:

  • Kontroller endringene, refererer til feilnummeret som er tildelt av feilsporing.
  • Hvis du har lagt til nye enhetstester, må du sjekke disse inn igjen, og referere til feilnummeret.
  • Hvis du forgrenet koden, bestemmer du når du vil slå sammen endringene i hovedgrenen.

Sporing og rapportering

Ved å jobbe med et bugsporing og versjonskontrollsystem kan alle (fra leder til junior programmerer) enkelt gjennomgå:

  • Endringene gjort til kodebase.
  • Enheten tester for å opprette problemet.
  • Enheten tester som løser problemet.

Dette gjør livet enklere for utviklerlaget, ledelsen og til og med sluttbrukeren hvis prosjektet ditt er satt opp slik at sluttbrukeren er interessert i dette detaljnivået. (For eksempel, hvis programvare utvikles internt for en annen avdeling, kan andre være interessert i å vite når en feil er løst.)

Integrasjon med andre teknologier som SharePoint kan lette kommunikasjonen mellom lagmedlemmer, ledere og andre avdelinger. Også ved hjelp av sofistikerte kildekontrollverktøy som Perforce og kontinuerlig integrasjonsverktøy som CruiseControl.NET vil videre integrere og automatisere bruken av kildekontroll med enhetstesting, integreringstesting, rapporteringsverktøy og så videre.