Wat is statisch testen? Technieken voor het testen van software

Wat is statisch testen?

Statisch testen is een softwaretesttechniek die wordt gebruikt om defecten in een softwaretoepassing te controleren zonder de code uit te voeren. Statische tests worden uitgevoerd om fouten in een vroeg ontwikkelingsstadium te voorkomen, omdat het gemakkelijker is om de fouten te identificeren en op te lossen. Het helpt ook bij het vinden van fouten die mogelijk niet worden gevonden door Dynamic Testing.

De tegenhanger ervan is Dynamic Testing, dat een applicatie controleert wanneer de code wordt uitgevoerd. Raadpleeg deze tutorial voor een gedetailleerd verschil tussen statisch en dynamisch testen.

De twee belangrijkste soorten statische testtechnieken zijn:

  • Handmatige onderzoeken: Handmatige onderzoeken omvatten de analyse van handmatig uitgevoerde code, ook wel bekend als BEOORDELINGEN.
  • Geautomatiseerde analyse met behulp van tools: Geautomatiseerde analyses zijn in feite statische analyses die worden uitgevoerd met behulp van hulpmiddelen.

Statische testtechnieken

  • informele Revieuws
  • walkthroughs
  • Technisch Revieuws
  • Inspecties
  • Statische analyse
    • Informatiestroom
    • Controle stroom

Statische testtechnieken

Hulpmiddelen die worden gebruikt voor statische tests

Verschillende hulpmiddelen die worden gebruikt voor statische tests zijn als volgt:

Wat is testen Review?

Een beoordeling bij statisch testen is een proces of bijeenkomst die wordt uitgevoerd om de mogelijke tekortkomingen in het ontwerp van een programma te vinden. Een ander belang van een evaluatie is dat alle teamleden op de hoogte zijn van de voortgang van het project en dat de diversiteit aan gedachten soms tot uitstekende suggesties kan leiden. Documenten worden rechtstreeks door mensen onderzocht en discrepanties worden opgelost.

Reviews kunnen verder worden ingedeeld in vier delen:

  • Informele beoordelingen
  • walkthroughs
  • Technische recensie
  • Inspecties

Tijdens het Review proces Vier soorten deelnemers die deelnemen aan testen zijn:

  • Presentator: Voert ingangscontrole uit, volgt herwerking op, coacht teamlid, plant de vergadering.
  • Auteur: Neemt de verantwoordelijkheid voor het oplossen van het gevonden defect en verbetert de kwaliteit van het document
  • Schriftgeleerde: Het registreert het defect tijdens een beoordeling en woont de beoordelingsvergadering bij
  • Reviewer: Materiaal controleren op gebreken en inspecteren
  • Manager: Beslis over de uitvoering van beoordelingen en zorg ervoor dat aan de doelstellingen van het beoordelingsproces wordt voldaan.

Soorten defecten die gemakkelijker te vinden zijn tijdens statische tests zijn:

  • Afwijkingen van normen
  • Niet-onderhoudbare code
  • Ontwerpfouten
  • Ontbrekende vereisten
  • Inconsistente interfacespecificaties

Meestal is het defect dat tijdens statische tests wordt ontdekt te wijten aan beveiligingsproblemen, niet-gedeclareerde variabelen, grensschendingen, syntaxisschendingen, een inconsistente interface, enz.

Tips voor een succesvol statisch testproces

Enkele nuttige tips voor het uitvoeren van een statisch testproces in Software Engineering.

  • Concentreer u alleen op de dingen die er echt toe doen
  • Plan en volg de beoordelingsactiviteiten expliciet. Een software-walkthrough en -inspectie worden over het algemeen gecombineerd in peer-reviews
  • Train deelnemers met voorbeelden
  • Mensenproblemen oplossen
  • Houd het proces formeel, net als de projectcultuur
  • Continue verbetering – proces en hulpmiddelen
  • Door de grote vertragingen bij de testuitvoering weg te nemen, kunnen de testkosten en -tijd worden verlaagd

Waarom statisch testen?

Statische testen worden om de volgende redenen uitgevoerd

  • Vroegtijdige detectie en correctie van defecten
  • Kortere ontwikkelingstijden
  • Lagere testkosten en -tijd
  • Voor verbetering van de ontwikkelingsproductiviteit
  • Om in een later stadium van de test minder defecten te krijgen

Wat wordt er getest bij statisch testen?

Bij statische tests worden de volgende zaken getest

  • Eenheidstestgevallen
  • Bedrijfsvereistendocument (BRD)
  • Gebruikers verhalen
  • Systeem-/functionele vereisten
  • Prototype
  • Prototypespecificatiedocument
  • DB-veldenwoordenboekspreadsheet
  • Testgegevens
  • Traceerbaarheidsmatrixdocument
  • Gebruikershandleiding/Trainingsgidsen/Documentatie
  • Testplan Strategiedocument/Testgevallen
  • Automatiserings-/prestatietestscripts

Hoe statische tests worden uitgevoerd

Om statische testen uit te voeren, gebeurt dit op de volgende manieren:

  • Voer het inspectieproces uit om het ontwerp van de applicatie volledig te inspecteren
  • Gebruik een checklist voor elk document dat wordt beoordeeld, om er zeker van te zijn dat alle beoordelingen volledig aan bod komen

De verschillende werkzaamheden voor het uitvoeren van Statisch Testen zijn:

  1. Validatie van gebruikscasussenvereisten: Het valideert dat alle acties van de eindgebruiker worden geïdentificeerd, evenals alle input en output die daarmee gepaard gaat. Hoe gedetailleerder en grondiger de use cases zijn, hoe nauwkeuriger en uitgebreider de testcases kunnen zijn.
  2. Validatie van functionele vereisten: Het zorgt ervoor dat de functionele vereisten alle noodzakelijke elementen identificeren. Er wordt ook gekeken naar de databasefunctionaliteit, interfacelijsten en hardware-, software- en netwerkvereisten.
  3. Architectuur Review: Alle processen op bedrijfsniveau, zoals serverlocaties, netwerkdiagrammen, protocoldefinities, taakverdeling, databasetoegankelijkheid, testapparatuur, enz.
  4. Validatie van prototype/schermmodel: Deze fase omvat de validatie van vereisten en gebruiksscenario's.
  5. Validatie van veldwoordenboek: Elk veld in de gebruikersinterface is goed genoeg gedefinieerd om validatietestgevallen op veldniveau te creëren. Velden zijn controle op min/max lengte, lijstwaarden, foutmeldingen, enz.

Samenvatting

  • Statisch testen is bedoeld om defecten zo vroeg mogelijk op te sporen.
  • Statisch testen is geen vervanging voor dynamisch testen; beide vinden een ander soort defecten
  • Reviews zijn een effectieve techniek voor statische tests
  • Reviews helpen niet alleen bij het vinden van defecten, maar begrijpen ook ontbrekende vereisten, ontwerpfouten en niet-onderhoudbare code. Als u op zoek bent naar hulpmiddelen die u bij dit proces kunnen helpen, vindt u hier een uitgebreide lijst van enkele van de volgende beste tools voor codebeoordeling die je misschien nuttig vindt.