Home De voordelen van software testen

De voordelen van software testen

“Software testen, een bron van inkomsten ”

In dit artikel vindt u meer informatie over wat software testen voor u kan opleveren of wat het u moet kosten.

De voordelen van software testen
Delen

Dit is wat testen van software voor u kan betekenen

Heeft u al eens gedacht aan een testorganisatie als partner? Het testen van software is vaak een ondergeschoven kind. Het is een sluitpost van veel ontwikkeltrajecten en uitgevoerd wordt omdat dit nu eenmaal zo hoort.

“We zijn vergeten de uren voor het testen in het budget op te nemen…”

“Wellicht is het secretariaat beschikbaar om door de applicatie te klikken.”

“… maar wel snel want de finale release moet morgen naar de klant.”

Maar de voordelen wegen hiertegen op:

  • In een vroeg stadium eventuele fouten en bugs ontdekken
  • Risicobeheersing die verband houden met het gebruik van de software
  • Kostenbesparing op het totale ontwikkelproject
  • Continue verbeterproces middels feedback en testresultaten analyse
  • Bijdrage aan een agile ontwikkelproces

Meer aandacht voor het testen van software

Er zijn een aantal ontwikkelingen die vragen om meer aandacht voor testen, door eventueel een testorganisatie

  1. Het gebruik van web-applicaties. Hierdoor moet de applicatie in theorie op alle gangbare browsers werken. Echter, de praktijk wijst vaak anders uit.
  2. De intrede van mobiele apparaten. Door de komst van de tablet en de smartphone zullen steeds meer online applicaties en websites met deze apparaten benaderd worden. Door de veelvoud van verschillende modellen neemt de complexiteit toe in de compatibiliteit. Ieder type apparaat zal separaat getest moeten worden.
  3. Agile-software-ontwikkeling. Steeds meer applicaties worden volgens de Agile-methodiek ontwikkeld. Hierdoor is het noodzakelijk om het testen juist parallel te laten lopen met de ontwikkelingen.

Soorten testen

Er zijn verschillende soorten testen die u uit kunt voeren, afhankelijk van het doel van de nieuwe software. Ten eerste zijn er functionele en niet-functionele testen, die beide uit verschillende onderdelen bestaan. Dit zorgt ervoor dat u middels gespecificeerde procedure gestructureerd kunt testen.

Functioneel testen

Functioneel testen is een praktische methode om te testen of de functionaliteit van de software applicaties voldoet aan de opgestelde vereisten. Dit wordt bekeken middels:

  • Functionele acceptatietest
  • Gebruikersinterface testen
  • Systeemtesten
  • Integratie testen
  • Regressie testen
  • End-to-end testen
  • Smoke testing
  • Unit testing
  • Sanity testing

Niet-functionele testen

Niet-functioneel testen kijkt naar aspecten als betrouwbaarheid, prestaties en andere kwaliteitskenmerken van de software. Dit gebeurt middels de volgende testmethoden:

  • Prestatietest
  • Beveiligingstest
  • Schaalbaarheidstest
  • Bruikbaarheidstest ( ook wel usability test genoemd)
  • Compabiliteitstest
  • Beta test

Door deze twee soorten testen te combineren, kijk je of de daadwerkelijke uitkomst van de software overeenkomt met de opgestelde doelen, en weet je of de functionaliteiten optimaal presteren.

Oorzaken van onjuist testen

De oorzaken van het onjuist of niet testen heeft dan ook vaak te maken met:

  1. Ontbreken van kennis om gestructureerd te kunnen testen;
    1. er worden geen testcases gemaakt;
    2. er wordt niet gewerkt via vast protocollen;
    3. hierdoor kost het testwerk waarschijnlijk onnodig veel tijd;
    4. dus loopt men het gevaar bepaalde onderdelen niet te testen en andere juist dubbel;
  2. Geen rekening houden met testenwerkzaamheden in het budget en daarom voor onverwachte verrassingen komen te staan;
  3. Het feit dat het effect van testen pas later merkbaar is. Op het moment dat de applicatie in gebruik genomen wordt en deze op de pijnbank komt te liggen wordt het effect van testen merkbaar;
  4. Tunnelvisie van de ontwikkelaar. Iedereen test zijn eigen gebied, echter niemand test de samenhang van de onderdelen;
  5. Te beperkt testen. Vaak wordt testen beperkt tot het klikken op knopjes en kijken of het geen blauwe schermen oplevert. Dit gebeurd vaak ongestructureerd en uitgevoerd wordt door personen die niet zijn opgeleid als professioneel tester;
  6. Onderschatten van het belang van testen. Met de gedachte ‘de ontwikkelaars doen hun werk vast wel goed’, wordt testen vaak overbodig geacht.

    Ontwikkelaars laten testen is verkwisten van resources

    Het is niet altijd efficiënt om softwareontwikkelaars zelf de testen uit te laten voeren. De bekende auteur en onderzoeker Fred Brooks schreef in zijn standaard werk “The mythical Man-Month”(1) dat software ontwikkelaars 50% van hun tijd besteden aan testen. Dit is tegenwoordig waarschijnlijk wel iets lager, als wij de verhalen uit de praktijk mogen geloven, maar het blijft nog steeds een aanzienlijk deel. Dit is niet efficiënt en werkt dus zeker niet productief. Bovendien is het controelren van software een vak apart, of wel een aparte discipline binnen de softwareontwikkeling.

    Ontwikkelaars willen van nature werken aan nieuwe en uitdagende projecten. In een tijd waarbij er gevochten wordt om goede ontwikkelaars is het belangrijk om de capaciteit van de ontwikkelaar het meest optimaal te benutten. Laten de ontwikkelaars daarom doen waar zij goed in zijn, analyseren en programmeren. Hieronder valt meestal niet het uitvoeren van testwerkzaamheden. Dit heeft ook een positieve werking op de medewerker tevredenheid. U kunt zelf een testorganisatie opzetten. Maar door het testen uit te laten voeren door gespecialiseerde software testers profiteert u meer van het voordeel van testen, verbetert de performance van uw software en profiteert u van automatisch testen.

    Testen uitbesteden aan een testorganisatie

    Testwerkzaamheden laten zich uitstekend uitbesteden aan professionele testorganisatie, met name naar lageloonlanden in Oost-Europa. Dit heeft een aantal voordelen:

    1. Testen is meestal repeterend productiewerk. Dit uitbesteden levert meestal kosten voordeel en kwaliteitswinst op.
    2. Door het gebruikmaken van de juiste tools is het gewaarborgd dat de testers op afstand volledig geïntegreerd zijn in het ontwikkelteam en men instaat is om integraal te testen.
    3. Indien men uitgaat van een dedicated testteam is het voordeel dat de opdrachtgever kan beschikken over een vast team van testers dat kennis opdoet van de producten van de opdrachtgever en zo ook de samenhang van de verschillende applicatieonderdelen leert kennen.
    4. In het buitenland zijn de professionele en goed opgeleide testers nog beschikbaar.

    Uit bovenstaande kan worden afgeleid dat testen niet alleen geld kost, maar zeker ook kan besparen door gebruik te maken van een professionele testorganisatie. Goed geteste software levert een grotere klanttevredenheid op en dat is winst voor de gebruiker en/of klant.

    Addcode als professionele software tester

    Addcode levert professionele testdiensten. Ons team werkt aan verschillende projecten binnen softwareontwikkeling. Denk aan automatisch testen en software ontwikkelen. Hiervoor hebben we een gestructureerd stappenplan die we doorlopen binnen het testproces en testautomatisering. We bieden korte ontwikkelcycli, tooling, expertise en gerichte communicatie. Hierdoor voldoet uw software aan de verwachte uitkomst en gestelde eisen.

    Wanneer u kiest voor ons als uw testorganisatie, heeft u volledige beschikbaarheid van een tester, de juiste tools en profiteren uw ontwikkelaars van onze rapportages.

    We hebben ervaring met handmatig en geautomatiseerd testen, evenals met prestatietests. Ons team heeft ook ervaring met een breed scala aan platforms, waaronder mobiele en webapplicaties.

    We begrijpen dat testen niet alleen op knoppen klikken is, maar een diepgaande kennis van de applicatie en de nuances vereist. Daarom hebben we onze eigen testomgevingen ontwikkeld om ervoor te zorgen dat onze klanten het maximale resultaat behalen.

     

    Literatuurlijst


    Download onze QA & Testing brochure

    Het inzetten van (meer en/of betere) testcapaciteit wordt vaak gezien als een vermijdbare uitzetting van kosten. De praktijk wijst echter uit dat QA testing vaak veel geld oplevert in de vorm van het vermijden van kosten achteraf.