Wat is geïntegreerd testen?
De ontwikkeling van computersoftware vereist een proces voor het ontwerpen, coderen en testen van softwarecode. Het softwaretestproces bestaat uit eenheids-, integratie-, systeem- en prestatietestfasen. Geïntegreerd testen is het proces waarbij modules binnen een applicatieproject worden gecombineerd en als een volledig pakket worden getest.
Een testomgeving is een gedeelde omgeving die is ontworpen voor testen. Deze omgeving wordt het best gebruikt voor systeemtests en prestatietests. Doorgaans staat een testomgeving los van een ontwikkel- en productieomgeving.
Een softwareapplicatie bevat meerdere onafhankelijke modules. Elke module is ontworpen voor een specifiek doel, waardoor deze zelfvoorzienend is. Eenheidstesten is het valideren van een module binnen een applicatie. Dit testen van eenheden vindt meestal plaats voorafgaand aan integratietesten.
Softwaremodules zijn als puzzelstukjes die moeten worden geïntegreerd in het grotere softwaretoepassingsraamwerk. Wanneer de modules worden samengevoegd in het toepassingsraamwerk, worden geïntegreerde tests uitgevoerd. Dit testproces valideert dat de modules kunnen communiceren met andere objecten in de applicatie.
Het testmodel is een serieel proces dat begint met eenheidstest gevolgd door integratietests en vervolgens systeemtests. Met de systeemtestfase kan de volledige applicatie worden getest. Voordat systeemtests kunnen plaatsvinden, moeten alle modules de geïntegreerde testfase doorlopen. Deze fase vindt normaal gesproken plaats tijdens een geautomatiseerd systeembouwproces.
De meeste softwareontwikkelingsprojecten omvatten meerdere ontwikkelaars. Elke ontwikkelaar krijgt specifieke modules toegewezen om te bouwen en te integreren in het softwaretoepassingsraamwerk. Wanneer een ontwikkelaar code schrijft, checkt hij zijn module uit een gedeelde omgeving in in een particuliere ontwikkelomgeving. Deze privéomgeving bevindt zich meestal op een zelfstandige computer of laptop.
Voordat software kan worden geïmplementeerd in een gedeelde ontwikkelomgeving, moet deze worden gecompileerd in binaire machinecode. Dit compilatieproces wordt meestal het bouwproces genoemd. Continue integratietests zijn processen waarbij softwareontwikkelaars tijdens het ontwikkelproces van een ontwikkelproces geïntegreerde tests moeten uitvoeren.
Het geautomatiseerde build-proces omvat het maken van documentatie, validatie van unit-tests en geïntegreerde validatie van tests. Deze volgorde wordt herhaald voor elke update van de softwarecode. Als er tijdens het buildproces een fout optreedt, blijft de code in een privéomgeving. Dit integratieproces vermindert fouten in de gedeelde codeomgeving. Geautomatiseerde build-processen worden beschouwd als een best practice voor softwareontwikkeling.
Binnen softwareontwikkeling is een project een map die meerdere modules, objecten en klassen bevat die een softwarepakket vormen. Project testen is het testen van een heel softwareproject. Deze projecttest is voltooid tijdens de integratietestfase.