Het testen van software is een ongelooflijk complex en intensief veld, met bedrijven en onafhankelijke ontwikkelaars die allemaal proberen hun producten te verbeteren met een reeks testmethoden.
Een van de meest voorkomende methoden die bedrijven gebruiken om te testen is black box testing, een techniek die afstand creëert tussen ontwikkelaars en testers om nauwkeurige resultaten te verkrijgen en vooringenomenheid te elimineren.
Leer meer over wat black box testing is, hoe black box testing moet worden uitgevoerd, en enkele voordelen van de implementatie van black box testing in software engineering met deze gedetailleerde gids.
Wat is black box testing?
Black box testing is het testen van een systeem of een stuk software zonder enige voorkennis van de interne werking ervan. Dit verwijst niet alleen naar het niet kennen van de broncode zelf, maar ook naar het niet gezien hebben van de ontwerpdocumentatie rond de software. Testers geven gewoon input en ontvangen output zoals een eindgebruiker dat zou doen. Dit is weliswaar een eenvoudige definitie van black box testing, maar het zet het algemene systeem uiteen.
Het doel van black box testing is om gebruikers op een meer natuurlijke manier dan normaal met de software te laten interageren, zonder bestaande vooroordelen die voortkomen uit het feit dat ze de software al kennen.
Bij deze methode zijn de mensen die verantwoordelijk zijn voor het afronden van de tests anders dan degenen die de software hebben ontwikkeld, waardoor er een scheiding ontstaat tussen de twee teams.
1. Wanneer en waarom moet je Black Box Testing doen bij het testen van software?
Er zijn een paar fasen in de ontwikkelingscyclus waarin het gebruik van black box testing ideaal is, waarbij de meeste black box testing plaatsvindt aan het einde van de ontwikkeling, kort voor de release.
Dit omvat methoden zoals gebruikersacceptatietests, waarbij de software naar leden van de doelgroep van de software gaat als een vorm van pre-releasetests. Dit staat beter bekend als bètatests en is een ideaal hulpmiddel voor een bedrijf, omdat een grotere blootstelling betekent dat mensen eerder potentiële bugs in de software zullen vinden.
Werken met de black box-methodologie tegen het einde van de ontwikkelingscyclus is een must, omdat dit een versie is die een gebruiker eerder zal raadplegen. U zou black box tests kunnen gebruiken voor individuele functies, maar dat zou het doel van het testen tenietdoen.
2. Wanneer u geen Black Box Testing hoeft te doen
Black box testing heeft weinig zin in de vroegste stadia van ontwikkeling. Wanneer een bedrijf de basisfunctionaliteit van zijn software bouwt, gebruikt het white box tests, zodat de ontwikkelaar kan zien op welk punt in de code er problemen zijn.
Er is ook geen behoefte aan black box testing wanneer de software open source is of een relatief eenvoudige webtool of ontworpen om te helpen bij codeerprojecten van derden, aangezien er een relatief kale gebruikersinterface is, en de gebruiker sowieso toegang heeft tot de broncode van het programma. Als je verwacht dat een gebruiker toegang krijgt tot de broncode, verliest black box testing zijn belangrijkste doel.
3. Wie is betrokken bij Black Box Testing?
Er zijn veel rollen die een rol spelen in het black box testproces, waarvan sommige afhangen van de aard van het bedrijf dat de tests uitvoert.
Belangrijke rollen met een betrokkenheid bij het black box testproces zijn onder andere:
– Tester
Een tester is verantwoordelijk voor het invullen van handmatige testcases in een bedrijf, het schrijven van grondige testcases die de app in detail onderzoeken alvorens ze uit te voeren en de resultaten te rapporteren. Deze rol bestaat voornamelijk in een handmatig testproces, waarbij geautomatiseerde systemen de rol overnemen wanneer er sprake is van testautomatisering.
– QA Analist
Een QA-analist is verantwoordelijk voor het programmeren van testgevallen in een QA-proces, voornamelijk wanneer het bedrijf een QA-testautomatiseringsproces gebruikt.
Het proces omvat zowel het ontwerpen van grondige testgevallen die een hoog niveau van functionaliteit garanderen als het uitvoeren van de testgevallen, waarbij de resultaten na afloop worden opgevraagd.
– Ontwikkelaar
De persoon die verantwoordelijk is voor de ontwikkeling van de software die het QA-team test. Een ontwikkelaar ontvangt feedback van het testteam en werkt de software dienovereenkomstig bij, waarbij hij werkt als onderdeel van een ontwikkelingsteam maar voortdurend in contact staat met de testers.
– QA Manager
Een QA manager is de leider van het kwaliteitsborgingsteam en is verantwoordelijk voor het beheer van alle taken die testers uitvoeren.
Dit omvat het regelen van het testschema, het organiseren van een lijst van te doen zaken voor personeelsleden en het oplossen van eventuele conflicten in het team. Zij leggen ook black box testing uit in de opleiding voor nieuwe werknemers.
– Projectleider
Als verantwoordelijke voor de kwaliteit van het eindproject houdt een projectleider toezicht op zowel het testproces als de ontwikkeling en zorgt hij ervoor dat de klant een softwarepakket krijgt dat aan de volledige opdracht voldoet.
Voordelen van Black Box Testing
Het gebruik van black box testing bij uw ontwikkelingswerk heeft een aantal belangrijke voordelen. Hoe meer u zich bewust bent van deze voordelen, hoe meer u ervan kunt profiteren om zoveel mogelijk voordelen uit de techniek te halen.
Enkele van de belangrijkste voordelen van het gebruik van black box testing in uw kwaliteitsborging zijn:
1. Geen behoefte aan technische kennis
Een black box benadering betekent dat je geen technische kennis nodig hebt bij het onderzoeken van een toepassing.
Het doel achter black box testing is te onderzoeken hoe de applicatie werkt voor een eindgebruiker, en de standaardgebruiker heeft in de meeste situaties geen geavanceerde technische kennis. Dit kan de kosten van het testen verlagen, waardoor de organisatie meer bugs kan ontdekken tegen lagere kosten en financieel efficiënter wordt.
2. De gebruiker nauwkeurig modelleren
Het einddoel van een black box testproces is te begrijpen wat de problemen met een applicatie zijn wanneer een gebruiker er dagelijks mee werkt.
Sommige soorten black box testing – die gericht zijn op het nabootsen van het gedrag van een gebruiker – modelleren het gedrag van een gebruiker met een hoge mate van precisie. Dit geldt met name voor gebruikersacceptatietests, waarbij eindgebruikers het product ervaren en niet alleen het gedrag van een gebruiker modelleren of simuleren, maar daadwerkelijk uitvoeren.
Nauwkeurig modelleren helpt om eventuele bugs aan het licht te brengen die de werkelijke werkstromen van de gebruiker beïnvloeden.
3. Mogelijkheid tot crowdsourcing van tests
Black box testing is een zeer toegankelijke vorm van testen dankzij de relatief lage vaardigheidseisen.
Dit betekent dat bedrijven niet alleen testers kunnen inhuren met een lager niveau van technische vaardigheden, maar dat ze hun tests kunnen crowdsourcen naar enthousiaste klanten. Dit is steeds gebruikelijker in de game-industrie met bedrijven die Early Access-releases aanbieden, waarbij het spel na verloop van tijd wordt bijgewerkt om problemen die gebruikers vinden op te lossen.
Het vinden van bugs is in dit geval veel gemakkelijker, omdat alle functies veel meer aandacht krijgen.
Uitdagingen van Black Box Testing
Naast de voordelen van black box testing zijn er een paar grote uitdagingen waarmee u rekening moet houden. Als u zich bewust bent van deze uitdagingen, kunt u zich daaraan aanpassen en de kwaliteit van uw tests verhogen door de schadelijke effecten van black box testing te verminderen.
Enkele van deze uitdagingen zijn:
1. Moeilijk om oorzaken van problemen te vinden
Een van de belangrijkste nadelen van black box testing is dat het moeilijker kan zijn om de oorzaak van problemen te vinden wanneer testers geen toegang hebben tot de broncode.
Hoewel zij kunnen beschrijven wat de fout is en wanneer deze optreedt, hebben zij geen aanwijzing welk stuk broncode de problemen veroorzaakt of waarom.
Testers kunnen dit enigszins verzachten door grondig te zijn in hun notities, waarbij gedetailleerde foutmeldingen van de ontwikkelaar ook meer inzicht bieden voor toekomstige updates.
2. Automatisering is lastiger
Omdat u actief probeert na te bootsen hoe een gebruiker met een softwarepakket omgaat, kan het uiterst moeilijk zijn een black box testproces te automatiseren.
De eerste oorzaak hiervan is het feit dat de tester geen toegang heeft tot de broncode, waardoor het moeilijker wordt een nauwkeurige testcase te coderen. Dit gaat samen met het feit dat de tests zijn ontworpen om menselijk gedrag zoveel mogelijk na te bootsen, met automatisering die speciaal is ontworpen om op een robotachtige manier te handelen.
U kunt deze kwestie in evenwicht brengen door meer ondergeschikte taken te automatiseren en waar mogelijk automatisering te combineren met handmatige tests.
3. Moeilijkheden met testen op grote schaal
De bovengenoemde problemen met automatisering betekenen dat testen op grotere schaal ingewikkelder is. Testen op grote schaal geeft bedrijven veel meer gegevens over de software en betekent dat bugs gemakkelijker te vinden en te repliceren zijn.
De eis dat handmatig testen prioriteit heeft, betekent dat het moeilijker kan zijn om het testen op grotere schaal te regelen. Sommige bedrijven bestrijden dit door een “open bèta” systeem te gebruiken, waarbij iedereen met belangstelling voor het product kan helpen met pre-release testen en het bedrijf kan ondersteunen door op vrijwillige basis feedback te geven op vroege builds.
Kenmerken van Black Box Tests
Er zijn een paar belangrijke kenmerken van black box tests, die deze tests onderscheiden van andere vormen van kwaliteitsborging van software.
Deze kenmerken omvatten:
1. Geen voorafgaande interne kennis
Black box tests vereisen geen voorafgaande interne kennis van de software. Dit kan in sommige gevallen moeilijk zijn omdat de testers een idee hebben van de aspecten van de software die zij testen en van sommige functies waarnaar zij op zoek zijn, maar dit wordt in grote lijnen gedefinieerd als het niet kunnen inzien van enige vorm van interne documentatie.
Simpel gezegd, als de informatie zichtbaar zou zijn voor een eindgebruiker in een app store of de downloadpagina van een website, dan kan een tester die zien.
2. Testers en ontwikkelaars scheiden
De test- en ontwikkelingsfase worden door verschillende mensen uitgevoerd in een black box-testsituatie. Dit onderscheid komt voort uit het gebrek aan kennis dat testers hebben, terwijl ontwikkelaars kennis hebben van de broncode omdat zij degenen waren die verantwoordelijk waren voor de ontwikkeling ervan.
Bedrijven benaderen dit op een aantal verschillende manieren, afhankelijk van hun specifieke situatie. Sommige bedrijven kiezen ervoor een externe organisatie in te schakelen om het testen uit te voeren en grotere bedrijven hebben een speciale afdeling met testers om deze taak uit te voeren.
3. Testen in een laat stadium
Dit verwijst naar het ontwikkelingsstadium waarin deze test plaatsvindt. Black box tests zijn gebaseerd op een relatief geavanceerde versie van een bestaande applicatie, met een uitgebreide UI die volledige navigatie door de software en toegang tot de voorkant van elke functie mogelijk maakt.
Dit betekent dat black box tests alleen mogelijk zijn in sommige latere stadia van het testproces, wanneer dit alles in eerste instantie is ontwikkeld. Hoewel de gebruikersinterface en de besturingselementen na verloop van tijd kunnen worden gewijzigd, moeten ze in een bepaalde vorm bestaan om black box tests toegang te geven tot de functionaliteit.
Wat testen we in Black box tests
Bij black box tests worden specifieke aspecten van een softwarepakket onderzocht, waardoor op sommige gebieden van de software extra informatie wordt verkregen die leidt tot updates die de algemene kwaliteit verhogen.
Enkele van de belangrijkste onderdelen van een softwarepakket die testers in een black box test onderzoeken zijn:
1. Functionaliteit
Sommige ontwikkelaars gebruiken black box testing als middel om ervoor te zorgen dat een stuk software werkt zoals bedoeld voor iemand zonder bestaande kennis.
De overgrote meerderheid van de mensen die software commercieel gebruiken, doen dat zonder enige kennis van de innerlijke werking van de software, dus testen met deze kennis betekent dat je workarounds kent voor bestaande problemen.
Deze grondige functionaliteitstests zorgen ervoor dat iedereen het beste ervaart van wat de applicatie te bieden heeft, in plaats van bugs tegen te komen die bij white box testing ongezien blijven.
2. Gebruikersinterface
De gebruikersinterface verwijst naar alle manieren waarop de gebruiker praktisch met een toepassing interageert om deze een reeks taken te laten uitvoeren. Dit omvat de menu’s waarmee een gebruiker werkt, de specifieke knoppen die in een applicatie aanwezig zijn en de branding die in de hele software aanwezig is.
Ontwikkelaars besteden het grootste deel van hun tijd aan het zorgen dat de applicatie zelf draait zoals ze verwachten, waardoor er minder aandacht is voor de gebruikersinterface.
Bij black box testing worden de testers alleen geconfronteerd met de gebruikerseigenschappen van de software, waardoor er meer aandacht is voor de UI dan bij de meeste andere testfasen.
3. Prestaties
Naast normaal functioneren en er goed uitzien, is de manier waarop een toepassing presteert essentieel om klanten tevreden te stellen.
Prestaties hebben betrekking op een aantal factoren, waaronder de snelheid waarmee de app reageert op invoer van de gebruiker en de bronnen die hij op een bepaald apparaat gebruikt.
Met testformats zoals end-to-end testing die alle functies van een stuk software onderzoeken, kunnen ontwikkelaars zien hoeveel geheugen een app gebruikt en welke van de functies het zwaarst wegen op de respectievelijke apparaten, wat de efficiëntie en prestatiegerelateerde updates in latere versies van de applicatie stuurt.
Wat verwarring ophelderen:
Black box vs. White box vs. Greybox Testing
Black box testing is een concept dat lijkt op grey box en white box testing, maar de ideeën zijn fundamenteel zeer verschillend van elkaar. Verwarring kan leiden tot ernstige communicatieproblemen in het ontwikkelingsproces en het bijwerkingsproces vertragen en minder doeltreffend maken.
Lees verder om wat verwarring weg te nemen over de verschillende soorten “box testing”, hoe ze van elkaar verschillen en wanneer ze te gebruiken.
1. Wat zijn white box tests?
White box testing is soms bekend als “glass box testing”, en verwijst naar een testproces waarbij de tester volledige toegang heeft tot alle informatie achter de software. Dit omvat toegang tot de broncode en de ontwerpdocumenten en de klantopdracht van het pakket.
Als een tester bijvoorbeeld in de vroegste stadia van een ontwikkelingsproces een enkele functie onderzoekt, betekent het kunnen zien van de broncode van die functie dat hij onmiddellijk de oorzaak van het probleem kan vinden.
Een van de beste momenten om white box tests te gebruiken is bij voornamelijk interne taken. Dit heeft betrekking op de vroege ontwikkeling van de functionele kant van de toepassing, waarbij snelle oplossingen ideaal zijn, omdat het geen zin heeft de code te versluieren als je de gebruikerservaring niet simuleert. White code testing wordt ook gebruikt in open-source systemen, omdat de broncode dan voor alle gebruikers beschikbaar is.
Wat zijn de verschillen tussen white box en black box Testing?
Het belangrijkste functionele verschil tussen black box testing en white box testing is de mate van toegang die een tester heeft tot de software, maar dit heeft veel grotere gevolgen voor de aspecten van het testen, zoals de timing.
Black box tests worden later in het proces consequenter gebruikt naarmate de lancering van het product nadert, waarbij de meer elementaire ontwikkelingsfasen profiteren van de transparantie en het reactievermogen van white box tests. Bij een black box-test versus een white box-test verschillen de twee ook in het niveau van de vereiste deskundigheid, aangezien white box-tests deskundigheid op het gebied van codering en ontwikkeling vereisen om effectiever te zijn.
2. Wat is Grey Box Testing?
Grey box testing is een vorm van testen waarbij een gebruiker enig begrip heeft van de code zonder volledige toegang te hebben. Dit houdt in dat men de broncode van de te testen functie moet hebben of toegang moet hebben tot een deel van de ontwerpdocumentatie, zodat de gebruiker begrijpt wat de algemene bedoeling van het softwarepakket is.
Als een tester bijvoorbeeld slechts één van de functies in een softwarepakket onderzoekt, kan hij toegang krijgen tot de broncode voor dat ene deel van de toepassing.
Bedrijven gebruiken vooral grey box testing wanneer ze onderzoeken hoe een applicatie is geïntegreerd met een tool van derden. Zij hebben slechts voor één deel van het proces toegang tot de broncode, wat hun mogelijkheden beperkt om grondige white box tests uit te voeren. In plaats daarvan zien ze de inputs en outputs van de integratie van derden en de broncode die verantwoordelijk is voor de integratie.
Testers beoordelen hiermee of er problemen ontstaan door de software, de applicatie van derden of de integratie tussen beide.
Wat zijn de verschillen tussen Black box en Grey box Testing?
Het belangrijkste verschil tussen black box en grey box testen is ook hier de mate van toegang tot informatie, waarbij het type software dat wordt getest een van de belangrijkste onderscheidende factoren tussen de testtypes is.
Grey box tests omvatten meestal tools van derden, zoals cloud data storage of externe processing tools, terwijl black box systemen meestal één samenhangend geheel vormen. Veel black box tests worden niet onderbroken door derden, terwijl geïntegreerde toepassingen weinig andere keuze hebben dan te werken volgens een grey box testmethodiek.
3. Conclusie: Black Box vs. White Box vs. Grey Box testen
Uiteindelijk zijn er fundamentele verschillen tussen black, grey en white box testing, allemaal gebaseerd op de vraag of informatie achter de schermen aan het testteam wordt gepresenteerd.
Black box en white box testen zijn de uitersten van dit spectrum, waarbij grey box testen alles omvat, van het zien van alle broncode van derden tot het alleen kunnen zien van de code achter een specifieke functie.
Al deze testmethoden hebben echter een rol te spelen in het testen van software, dus tijd en aandacht steken in het leren ervan en ze effectief toepassen is een must.
Soorten Black Box Tests
Er zijn drie hoofdtypen black box tests die alle tests omvatten die een bedrijf via de black box methodologie uitvoert. Deze zijn:
1. Functioneel testen
Functioneel testen omvat alles rond de manier waarop de toepassing mechanisch werkt. Dit houdt in dat ervoor moet worden gezorgd dat gegevens op de juiste manier worden verwerkt, dat gebruikers zich met de juiste referenties kunnen aanmelden en dat informatie en input naar verwachting worden verwerkt.
Testen op functionaliteit is een van de belangrijkste aspecten van het proces en betreft zowel de lokale functionaliteit van de applicatie als de manier waarop deze samenwerkt met externe tools en programma’s zoals cloud-gebaseerde diensten of Single Sign On tools.
2. Niet-functioneel testen
Niet-functionele tests zijn tests die elk aspect van de software onderzoeken dat niet expliciet verband houdt met de functionaliteit van de toepassing. Hierbij wordt nagegaan of een toepassing bruikbaar en gemakkelijk te begrijpen is voor de gebruikers, compatibel is met een groot aantal apparaten en besturingssystemen en hoe zij presteert bij aanzienlijke belasting (hoewel dit op sommige punten kan overlopen in functionele tests).
Dit gebeurt voornamelijk tegen het einde van het ontwikkelingsproces, wanneer de volledige app is gecompileerd.
3. Regressietests
Na een update bekijken testers een applicatie om er zeker van te zijn dat deze de beoogde functie heeft vervuld en dat er geen onbedoelde neveneffecten zijn die de applicatie doen terugvallen.
Dit staat bekend als regressietesten en is een fundamenteel onderdeel van de zorg dat een applicatie klaar is om op de markt te komen.
Regressietests worden na elke update uitgevoerd om ervoor te zorgen dat zowel de functionele als de niet-functionele aspecten van de applicatie voldoen aan de eerder bereikte norm.
Black Box testtechnieken
Wanneer u het black box testproces doorloopt, is er een breed scala aan technieken die u kunt toepassen om de standaard van uw werk te verbeteren. Enkele van de belangrijkste black box-testtechnieken die u in een kwaliteitsborgingsomgeving gebruikt, zijn:
1. Paargewijs testen
Pairwise testing is een vorm van testen waarbij elke mogelijke combinatie van gegevensinvoer in de software wordt uitgeprobeerd.
Als bijvoorbeeld de getallen één tot en met tien in één kolom staan met alle alfabetische tekens in een andere kolom, zou bij paarsgewijze tests elke mogelijke combinatie van 1A tot en met 10Z worden getest. Dit is een vorm van testen die een gebruiker veel tijd en moeite kan kosten, waardoor het een van de technieken is die het meest openstaan voor potentiële hyperautomatisering. Dit is uiterst grondig en vindt alle mogelijke problemen met de gegevensinvoer.
2. Grenswaarde-analyse
Veel software berust op het invoeren van gegevens, waarbij de gegevens specifieke grenzen hebben waarbinnen een klant geacht wordt te werken.
Bijvoorbeeld, een systeem dat is ontworpen om cijfers van 1 tot 100 te berekenen, kan moeite hebben met waarden bij 0 of lager, of hoger dan 100.
Bij grenswaardeanalyse worden deze grenzen getest, waarbij getallen worden ingevoerd op en rond de grenzen die de software test om na te gaan of er bugs zijn aan de rand van het verwachte werkbereik van een softwarepakket. Dit is vooral nuttig bij op berekeningen gebaseerde systemen en kan ontwikkelaars helpen om grenzen aan te passen of de oorzaak van eventuele problemen te vinden.
3. Testen van toestandsovergangen
Veel programma’s variëren tussen verschillende “staten” of “modi” en vereisen een overgang van de ene fase van dit proces naar de volgende. Als deze overgangen goed werken, betekent dit dat de site functioneert zoals de gebruiker verwacht en dat er geen onverwachte vertragingen zijn.
Testen van toestandsovergangen is een vorm van testen waarbij alle overgangen tussen toestanden in een stuk software worden onderzocht, waarbij wordt nagegaan of ze functioneel zijn en zekerheid wordt geboden dat de gebruikersstromen door de software werken zonder onverwachte onderbrekingen.
Black box-testen in de levenscyclus van software-engineering
Black box testing is een discipline die vooral aan het eind van de levenscyclus van software engineering wordt toegepast. Dit omvat alles van het testen van de manier waarop gebruikers met de software omgaan tot het verlenen van volledige bèta-toegang, waarbij black box tests in de eerste plaats komen zodra alle functionaliteit naar verwachting werkt.
Het bespaart veel tijd en moeite in vergelijking met white box testing, waarvoor veel expertise nodig is, en het kan het best worden toegepast als u geen ontwikkelingsteam nodig hebt om onmiddellijk wijzigingen aan te brengen in de manier waarop het systeem werkt.
Handmatige of geautomatiseerde black box tests?
Het testen van software bestaat in twee verschillende vormen, waarbij handmatig testen de traditionele vorm is waarbij in elke fase van het proces softwaretesters worden ingezet. Dit staat haaks op geautomatiseerd testen, waarbij steeds meer kunstmatige intelligentie en machinaal leren worden gebruikt om taken zonder menselijke tussenkomst uit te voeren.
Lees verder om meer te weten te komen over wat handmatig en geautomatiseerd testen zijn, de uitdagingen van beide, en welke van de twee ideaal is voor een bedrijf.
1. Handmatige Black Box Testen – Voordelen, Uitdagingen, Proces
Handmatig black box testen verwijst naar het zelfstandig uitvoeren van black box testen, waarbij medewerkers alle taken uitvoeren in plaats van gebruik te maken van een automatiseringsplatform als onderdeel van de toolset van het bedrijf.
Enkele van de belangrijkste voordelen van handmatig testen bij softwareontwikkeling zijn de manier waarop je een grotere mate van flexibiliteit hebt over de manier waarop je tests uitvoert en de manier waarop ontwikkelaars veel grondigere feedback kunnen krijgen die kwalitatief van aard is.
Er zijn echter een paar aangeboren natuurlijke uitdagingen aan het handmatige testproces. De eerste is het feit dat handmatig testen veel tijd kan kosten, omdat mensen langzamer zijn dan geautomatiseerde programma’s bij het voltooien van hun taken.
Een ander is een grotere kans op fouten: mensen kunnen verkeerd klikken of dingen in de verkeerde volgorde doen. Dit kan uiteindelijk leiden tot onnauwkeurigheden in de testgegevens.
Handmatig testen is een proces dat begint met het leren kennen van de verwachtingen van een bedrijf voor een toepassing, alvorens testgevallen te schrijven die deze opdracht uitdagen, de testgevallen uit te voeren en de resultaten te rapporteren aan het ontwikkelingsteam.
2. Black box Test Automation – Voordelen, Uitdagingen, Proces
Geautomatiseerde tests zijn tests die een bedrijf uitvoert op een softwarepakket door testcases af te werken met een geautomatiseerd systeem. Deze maken gebruik van platforms van derden om het softwarepakket te automatiseren, waarbij alle geautomatiseerde stappen volgen op specifiek voorbereide testgevallen.
Het belangrijkste voordeel van black box testautomatisering is de snelheid, waarbij geautomatiseerde programma’s veel minder tijd nodig hebben voor elke afzonderlijke run van een test. Dit levert een grote tijdwinst op bij het testen, die u kunt besteden aan de ontwikkeling van de toepassing.
Een ander voordeel is nauwkeurigheid, want een goede automatiseringstool voert telkens dezelfde taken in dezelfde volgorde uit.
Nadelen kunnen nog steeds problemen opleveren voor black box testautomatisering, met als een van de belangrijkste problemen een focus op kwantitatieve gegevens. Dit is geweldig voor de metriek, maar betekent dat er bij een acceptatietest weinig waardevolle informatie te winnen valt.
Er is ook een relatief gebrek aan flexibiliteit in geautomatiseerd testen, waarbij analisten geheel nieuwe testgevallen moeten coderen telkens wanneer zij een wijziging willen aanbrengen.
Het testautomatiseringsproces begint met het ontwerp van een reeks testgevallen die vervolgens in het systeem worden gecodeerd voordat de tests worden uitgevoerd, die bij voltooiing een rapport opleveren.
3. Conclusie: Handmatig of Black box Test Automation?
Uiteindelijk is de keuze tussen handmatig en geautomatiseerd black box testen een ingewikkelde, die afhangt van wat u in een systeem zoekt.
Als u op zoek bent naar hoogwaardige kwalitatieve informatie die u kunt gebruiken om ontwerpwijzigingen voor een eindgebruiker door te voeren, is handmatig testen verreweg de beste optie, waarbij geautomatiseerd testen ideaal is voor functionele en prestatiefasen in het proces.
Denk na over wat u zoekt in elke fase van het testproces en u kunt gemakkelijk geleide gegevens krijgen die uw prestaties verbeteren.
Wat heb je nodig om met Black Box Testing te beginnen?
Er zijn enkele randvoorwaarden waarover u moet beschikken voordat u met black box testing begint.
Enkele van de dingen die je moet hebben voordat je met black box testing begint:
1. Softwarevereisten
Software-eisen zijn de specifieke punten in een ontwerpopdracht waaraan de software moet voldoen. Dit kan een hele reeks zaken omvatten, van het moeten uitvoeren van een bepaalde reeks taken tot het hebben van een bepaald uiterlijk en gevoel bij gebruik.
Met deze informatie beschikt u over een aantal specifieke doelstellingen om naar te streven bij het testen, waarbij de testers een testschema en -plan opstellen dat resulteert in een meer samenhangende reeks resultaten die de ontwikkelaars informeren over problemen met de software.
In sommige bedrijven, waar dit een black box test is, zullen de ontwikkelaars de toegang van een tester tot de opdracht beperken.
2. Gecompileerde software
Alvorens een stuk software te testen, moet een kwaliteitsborgingsteam toegang hebben tot de software. Dit houdt meestal in dat de ontwikkelaars de meest recente versie van de software leveren, waarbij het team profiteert van een volledig nieuw gecompileerde versie van de software om hun tests op uit te voeren.
Een recente versie betekent dat de tests enkele van de meest recente fixes bevatten, wat betekent dat het een nauwkeurige weergave geeft van hoe de software presteert.
3. Testen van doelstellingen
Testers benaderen een testperiode meestal met een aantal specifieke doelen voor ogen. Deze testdoelstellingen geven precies aan waarop zij de komende tijd testen, of dat nu de aanvaardbaarheid voor de gebruiker, de end-to-end functionaliteit of het voltooien van penetratietests is.
QA managers hebben meestal deze doelstellingen, waarbij de volgende testfase meestal afhangt van waar het ontwikkelingsteam aan heeft gewerkt en de delen van de software waar die ontwikkelingen betrekking op hebben.
Black Box testproces
Het black box testproces is relatief nauwkeurig en bedrijven hebben er baat bij de processtappen zo nauwkeurig mogelijk te volgen. De verschillende stadia van het black box testproces omvatten:
1. Testplanning
Begin het black box testproces met een ingewikkelde planning. Dit houdt in dat alle individuele doelstellingen die u voor de test hebt, de specifieke aspecten van de software die u onderzoekt en de middelen die u voor het testen inzet, worden besproken.
Grondiger plannen betekent dat iedereen weet wat hij moet doen en wanneer hij dat moet doen, met inbegrip van de methoden die bij de tests worden gebruikt.
2. Het schrijven van testcases
Het schrijven van testcases is de volgende fase van het proces. Een testcase verwijst naar een reeks stappen die in een test moeten worden doorlopen, waarbij meer gedetailleerde testcases de gebruiker een grotere mate van consistentie bieden.
In een geautomatiseerd testproces betekent dit ook het coderen van de testcase in het automatiseringsprogramma dat u wilt gebruiken.
Dubbelcheck al je testcases om er zeker van te zijn dat ze grondig zijn en duidelijk over de te doorlopen stappen.
3. Uitvoering van testcases
Zodra u uw testgevallen hebt voorbereid, begint u de testgevallen uit te voeren. Bij gebruik van automatisering kan dit een relatief eenvoudige taak zijn waarbij het programma op weg wordt gestuurd en op resultaten wordt gewacht. Handmatig testen is gebaseerd op werknemers die de testcases herhaaldelijk uitvoeren, waarbij meer herhalingen leiden tot consistentere gegevens van hoge kwaliteit.
Voer elke testcase zo zorgvuldig mogelijk uit, want hoe nauwkeuriger de uitvoering van de testcases, hoe groter de kans dat de gegevens nuttig zijn voor het ontwikkelingsteam.
4. Definitieve rapportage
De laatste rapportagefase verwijst naar het deel van het proces waarin het testteam verslag uitbrengt aan de ontwikkelaars.
Begin met een eenvoudige samenvatting van de verzamelde informatie en vul deze aan met alle statistieken die de testers hebben verzameld. Dit biedt de ontwikkelaars een eerste leidraad over de ideale richting voor de volgende reeks updates voordat ze de volledige gegevens te zien krijgen, waardoor ze een dieper inzicht krijgen in de problemen.
Beste praktijken voor Black Box Testing
Ongeacht uw bedrijfstak is het volgen van best practices een must voor elk bedrijf. Beste praktijken verwijzen naar een reeks gedragingen en technieken die een bedrijf in zijn dagelijks werk kan toepassen.
Enkele van deze praktijken die een bedrijf helpen om de kwaliteit van zijn black box tests te verbeteren zijn:
1. Focus op de ontwikkeling van vaardigheden
Als u een bedrijf leidt dat aan meerdere stukken software tegelijk werkt, overweeg dan om u te richten op het ontwikkelen van testvaardigheden en specialisaties. Hoe meer tijd u besteedt aan specialisatie en het ontwikkelen van de juiste vaardigheden, hoe beter uw kansen om eventuele problemen in uw producten op te lossen.
Dit gaat gepaard met het aannemen van mensen met de juiste vaardigheden, maar is het meest geschikt voor bedrijven waar bijna voortdurend software wordt getest, omdat er altijd een voordeel is om deze vaardigheden toe te passen.
2. Werkdruk in evenwicht brengen
Sommige testteams kunnen zeer groot zijn, met tientallen of zelfs honderden medewerkers die allemaal regelmatig testcases afwerken.
De beste manier om het beste uit deze personeelsleden te halen is de tijd te nemen en voorzichtig te zijn met het toewijzen van specifieke taken. Burn-out heeft een ernstige geschiedenis van problemen in de softwareontwikkelingsindustrie, maar dit is iets dat kan worden vermeden met een beter beheer van de werklast.
3. Consistente processen creëren
Bedrijven zijn gebouwd op processen die hun medewerkers dagelijks doorlopen, waarbij testprocessen de manier omvatten waarop een bedrijf zijn testgevallen schrijft, onderzoek uitvoert en intern tussen afdelingen communiceert.
Consistentie in deze gevallen is essentieel, omdat mensen dan sneller leren als ze in het bedrijf komen. Dit leidt tot snellere aanpassing en betere output dan in een bedrijf zonder samenhang in de taken.
Indien mogelijk, creëer deze processen op een manier die het personeel betrekt bij het besluitvormingsproces, omdat dit ervoor zorgt dat zij het eens zijn met de strategie.
7 fouten en valkuilen bij het uitvoeren van black box tests
Fouten zijn normaal in elke sector, maar als u fouten kent voordat u ze kunt maken, kan dat u veel tijd en moeite besparen.
Enkele van de meest voorkomende fouten en valkuilen waar black box testers in trappen zijn:
1. Gebrek aan gedefinieerde testomvang
Sommige organisaties beginnen hun producten te testen zonder de processen goed te plannen, wat een grote fout is.
Door niet te plannen, kunnen bedrijven de reikwijdte van de tests uit het oog verliezen. Een overeengekomen reikwijdte helpt de test op de juiste schaal uit te voeren en effectief resultaten te boeken.
Als u het niet eens wordt over de reikwijdte van uw tests voordat u begint, bestaat er een serieus risico dat u te breed test en te veel tijd neemt om resultaten te krijgen die minder relevant zijn.
2. Overhaaste testprocessen
Testen kan aanvoelen als een proces dat erg lang duurt, vooral bij langdradige testcases die ontworpen zijn om een hele applicatie te onderzoeken. Sommige mensen kunnen geneigd zijn hun tests te overhaasten, vooral bij herhalingen van eerdere tests. Dit is een ernstige fout. Overhaast testen kan leiden tot fouten in de uitvoering van testcases, waardoor de waarde van de gegevens afneemt en u uiteindelijk toch weer dezelfde tests moet doen.
3. Automatisering zonder verificatieproces
Bij testautomatisering gaat het er vooral om dat het invoeren van een gegevenswaarde leidt tot de juiste output aan het eind van het proces. Het automatiseren van deze tests werkt door de output van het geautomatiseerde proces te vergelijken met wat de resultaten zouden moeten zijn.
Sommige testers maken een belangrijke fout door de waarde niet zelf te berekenen, wat betekent dat ze geen manier hebben om na te gaan of de output al dan niet correct is en mogelijk belangrijke bugs in het hele systeem niet vinden.
4. Het niet gebruiken van hybride testen
Hybride testen verwijst naar het evenwicht tussen automatisering en handmatig testen, omdat de twee methoden op een manier werken die de gebreken van elkaar perfect afdekt.
Sommige organisaties richten zich echter liever op één van beide methoden. Daarmee stelt u uw tests bloot aan ernstige problemen en onnauwkeurigheden.
Voer hybride tests uit om een beter evenwicht in uw tests te krijgen en het aantal fouten zo veel mogelijk te beperken.
5. Niet voltooien van regressietests
Regressietests zouden een constant proces moeten zijn in elk effectief softwaretestsysteem, waarbij deze vorm van testen vaststelt of software-updates elders in het systeem problemen hebben veroorzaakt. Het niet afronden van regressietests betekent dat functies die u vroeg in het proces hebt getest, kunnen falen zonder dat u het beseft.
Door regressietests uit te voeren zorgt u ervoor dat u een product van hogere kwaliteit levert zonder al te veel extra werk in het kwaliteitsborgingsproces te stoppen.
6. Actief op jacht naar bugs
Sommigen denken dat het doel van black box testing is om bugs te vinden in een softwarepakket en deze te rapporteren aan een ontwikkelingsteam, en hoewel dit één aspect is, is het niet de enige focus. Testen bestaan om in het algemeen de standaard van een softwarepakket te verbeteren.
Door je te sterk te richten op de bugs in de software begin je buiten de standaard workflows te vallen, reik je buiten het bereik van je tests en negeer je enkele van de meer relevante problemen met de software in ruil voor het opsporen van mogelijk irrelevante gebreken in de code.
7. Je intuïtie negeren
Bij handmatig testen heeft een tester die rol omdat hij een bestaand gevoel van intuïtie heeft, en een kennis van code die hem leidt naar mogelijke problemen en hem informeert over gebieden die hij moet onderzoeken wanneer hij werkt.
Sommigen kiezen er echter voor deze intuïtie volledig te negeren bij het werken aan testgevallen. Door alles wat u wilt testen te noteren en te controleren in een nieuwe testcase, profiteert u ten volle van uw technische kennis terwijl u toch de voorbereide testcases afwerkt.
Soorten outputs van blackboxtests
Er zijn verschillende soorten output die u kunt ontvangen van black box tests, en elk daarvan biedt unieke inzichten voor een bedrijf dat relevante updates van zijn producten wil maken en de kwaliteit die klanten ervaren wil verbeteren.
Enkele van de belangrijkste soorten resultaten van black box tests zijn:
1. Kwalitatieve gegevens
De eerste vorm van output die u van een black box test kunt ontvangen zijn kwalitatieve gegevens. Dit is informatie die vooral de toepassing beschrijft en die voortkomt uit tests zoals end-to-end tests en bruikbaarheidstests.
Kwalitatieve gegevens beschrijven meestal de standaard van de toepassing, waarbij de ervaring van mensen met de toepassing wordt besproken en wordt uitgelegd welke veranderingen een tester zou willen aanbrengen.
Bij het opstellen van deze gegevens schrijft een tester meestal een grondig rapport met alle bewijzen voor hun punten, waarbij ze kwalitatieve meningen ondersteunen met verdere kenmerken zoals schermafbeeldingen van waar ze naar verwijzen.
2. Kwantitatieve gegevens
Dit verwijst naar duidelijke numerieke gegevens in de vorm van metrieken, waarbij leden van het testpersoneel ofwel nota nemen van specifieke onderdelen van een toepassing, ofwel numerieke gegevens ontvangen van een automatiseringstestprotocol.
Kwantitatieve informatie is over het algemeen nuttiger om ontwikkelaars duidelijke oplossingen te bieden, die delen van de toepassing aangeven zoals het prestatieniveau, de efficiëntie in termen van gebruikte middelen en het aantal bugs en problemen dat in de toepassing aanwezig is.
Kwantitatieve informatie is eenvoudiger te analyseren en te beoordelen dan het beschrijvende equivalent, omdat er geen interpretatie nodig is.
3. Foutmeldingen
Foutmeldingen treden op wanneer de functionaliteit van de software niet werkt zoals verwacht. Dit kan te maken hebben met hardware- of softwareproblemen, waarbij meestal een korte beschrijving van het probleem en een foutcode worden gegeven.
Ontwikkelaars maken een systeem van foutcodes om hen te helpen precies vast te stellen waar zich in een systeem een probleem voordoet, waarbij het eerste cijfer kan worden gebruikt om de functie te bepalen die een probleem ondervindt, het tweede om te beschrijven wat er specifiek is mislukt en het derde om de oorzaak van het probleem aan te geven.
Door dit systeem van foutcodes te gebruiken, weten ontwikkelaars meteen wat het probleem is en kunnen ze werken aan een oplossing.
Voorbeelden van black box tests
Hoewel de theorie achter black box testing relatief eenvoudig is, kan de praktische uitvoering ervan een complex proces zijn, vooral voor een eerste tester. Het zien van een black box testvoorbeeld in actie kan u helpen bij het organiseren van uw testen.
Enkele voorbeelden van black box-testmethoden, waaronder meerdere soorten tests en verschillende mate van succes, zijn:
1. Ineffectieve gebruikersacceptatietests
Een bedrijf wil zijn product in de komende weken uitbrengen, maar de gebruikersacceptatietests moeten nog plaatsvinden. De applicatie is een breitutorial voor een ouder publiek.
De ontwikkelaars proberen dit proces te versnellen en snel een groep testers te verzamelen, waarbij ze uitsluitend niet-breiers van midden dertig gebruiken om te testen, omdat zij een toegankelijkere groep vormen. Deze groep ziet geen problemen met de aanvraag en geeft groen licht voor openbare bekendmaking.
Door de tegenstrijdige niveaus van technische kennis tussen de twee groepen is het doelpubliek meer in de war bij het gebruik van de software en heeft het geen toegang tot veel van de functies. Als reactie daarop is het bedrijf gedwongen dringende updates uit te voeren.
Mislukkingen bij tests als deze tonen het belang aan van een grondige voorbereiding.
2. Succesvolle end-to-end tests
End-to-end testen is het testen dat plaatsvindt zodra de functionaliteit van een app voor het eerst volledig in één softwarepakket is gecompileerd.
Een bedrijf heeft het end-to-end testproces zorgvuldig gepland, met een reeks personeelsleden die speciaal zijn ingehuurd om testtaken uit te voeren, met twee werknemers voor elk testgeval.
Na een zorgvuldig proces voltooien zij hun testcases en noteren zij alle gegevens die zij verzamelen, waarna een QA-manager de gegevens aan het eind van de test in een samenhangend rapport samenvoegt.
Ontwikkelaars gebruiken dit rapport om de volgende reeks updates en wijzigingen van de toepassing te plannen, waardoor het product aanzienlijk wordt verbeterd.
3. Geautomatiseerde regressietests
Een ontwikkelaar heeft een reeks updates uitgevoerd voor zijn software die, voorafgaand aan de updates, werkte zoals verwacht. Na de updates doorloopt het testteam een regressietestproces, waarbij de nadruk ligt op automatisering.
Het team schrijft de code voor een testcase en voert de testcases uit, leest alle resultaten van de tests door en zoekt waar eventuele problemen zitten.
Dit voorkomt dat er problemen ontstaan doordat een organisatie updates uitvoert en niet controleert of deze een probleem hebben.
Soorten fouten en bugs die door Black box Testing worden opgespoord
Hoewel fouten en bugs niet alles zijn in het black box testproces, vormen ze een belangrijk onderdeel van de manier waarop bedrijven testen.
Als u enkele van de belangrijkste soorten fouten en bugs bij black box testing kent, kunt u de problemen die u tegenkomt beter categoriseren en beter begrijpen waarom ze zich voordoen.
Enkele van de belangrijkste soorten fouten en bugs die via black box testing kunnen worden opgespoord zijn:
1. Gebruiksfouten
Bruikbaarheidsfouten zijn fouten in een programma die niet echt van invloed zijn op de functionaliteit, maar die problemen kunnen veroorzaken voor een gebruiker die met de software probeert te werken.
Als een toepassing bijvoorbeeld een ernstige grafische storing heeft, functioneert zij technisch nog steeds, maar zonder de juiste pictogrammen en tekst kan de eindgebruiker haar niet effectief gebruiken. Deze problemen hebben meestal betrekking op het ontwerp van de app en de manier waarop het ontwerp voor een gebruiker wordt geladen, waarbij complexere toepassingen meer complexe graphics vereisen dan die in eenvoudigere UI’s.
2. Functionele fouten
Functionele fouten zijn problemen die optreden wanneer een onderdeel van een programma niet werkt zoals verwacht.
Als u bijvoorbeeld een stuk databasesoftware gebruikt en probeert de informatie te sorteren op een bepaalde categorie, maar merkt dat het niet werkt. Dit geldt zowel voor functies die helemaal niet werken als voor functies die lijken te werken maar dat niet goed doen.
Dit kunnen enkele van de belangrijkste problemen zijn voor een toepassing, waardoor gebruikers veel ongemak ondervinden en de reputatie van de ontwikkelaar verslechtert omdat het product niet werkt zoals geadverteerd.
3. Crashes
Wanneer een stuk software crasht, is er een fundamenteel probleem met de software waardoor het niet meer werkt. Er zijn een paar verschillende vormen van crashes die kunnen optreden, onder meer wanneer een toepassing in zijn geheel sluit of gewoon bevriest op een bepaald punt in het proces.
Een crash is een van de ernstigste problemen die zich kunnen voordoen, omdat er geen manier is om de functionaliteit van de toepassing te herstellen buiten het volledig sluiten en heropenen ervan. Hoewel sommige toepassingen nog steeds processen op de achtergrond hebben, is er geen mogelijkheid tot interactie met de software voorbij dit punt.
Gemeenschappelijke Black Box Testen Metrieken
Handmatige black box testing blinkt uit in het genereren van kwalitatieve gegevens, maar wanneer u zich richt op kwantitatieve gegevens moet u zich bewust zijn van de metrieken die u controleert. Inzicht in deze statistieken helpt u om de gebreken van het platform te begrijpen en prioriteiten te stellen voor verschillende gebieden om aan te werken.
Enkele van de meer gebruikelijke black box testing metrieken die je in je werk tegenkomt zijn:
1. Foutenpercentage
Het foutenpercentage kan op een paar dingen slaan, hetzij op het zuivere aantal fouten dat zich in de testcyclus van de software voordoet, hetzij op de fouten die zich per testuur voordoen. Uurcijfers zijn beter, omdat zij de dichtheid van fouten in de software weergeven in plaats van alleen een getal, waarbij grotere toepassingen mogelijk een verkeerd beeld geven.
Ontwikkelaars proberen het foutenpercentage in hun toepassingen te beperken, want hoe minder fouten er in het softwarepakket zitten, hoe beter de ervaring van de klant met het gebruik van het systeem zal zijn.
2. Reactietijd
Wanneer een tester meer wil weten over het prestatieniveau dat de gebruiker ervaart, is de reactietijd een van de belangrijkste aspecten om rekening mee te houden. Dit verwijst naar de tijd die de software nodig heeft om een taak te voltooien nadat de gebruiker een prompt heeft ingevoerd, waarbij langere reactietijden wijzen op een relatief inefficiënte toepassing. Hogere reactietijden zijn een bron van zorg, omdat gebruikers hun geduld kunnen verliezen met een applicatie die er te lang over doet.
3. Tevredenheid van de gebruiker
De meeste metrieken richten zich op pure cijfers die door het softwarepakket en de testsoftware in een test worden gegenereerd, maar sommige metrieken richten zich op de mening.
Als een bedrijf bijvoorbeeld een bètatest uitvoert met 1000 testers, kan het gegevens verzamelen over het aantal mensen dat tevreden is en dat omzetten in een percentage. Dit is een uiterst nuttige maatstaf om aan het eind van een cyclus beschikbaar te hebben, want een hogere gebruikerstevredenheid toont aan dat meer mensen het programma leuk vinden en geeft aan dat de kans groter is dat het programma het in de toekomst goed zal doen.
Beste Black Box testtools
Black box testing is een vorm van testen die sterk kan steunen op hulpmiddelen, zowel voor het automatiseren van uw black box testing als voor het organiseren van de informatie die u uit uw tests haalt.
Met de juiste combinatie van hulpmiddelen kunnen u en uw team veel efficiënter werken en effectievere processen opbouwen voor de hele afdeling kwaliteitsborging.
Bekijk hieronder enkele van de beste black box testing tools en leer hoe elk van deze u precies kan helpen:
5 beste gratis Black Box testtools
Kleine en opkomende bedrijven, zoals onafhankelijke ontwikkelaars, hebben geen groot budget om mee te werken bij het maken van hun software. Dit kan een reeks uitdagingen met zich meebrengen, waaronder het vinden van de juiste instrumenten om mee te werken.
Hieronder volgen enkele van de beste gratis tools die beschikbaar zijn voor onafhankelijke ontwikkelaars die met een budget hun workflows willen verbeteren:
1. ZAPTEST GRATIS EDITIE
De gratis editie van ZAPTEST is de perfecte introductie tot softwaretestautomatisering. Dit hulpmiddel is speciaal ontworpen om automatisering van alle taken te ondersteunen, zodat u sneller en effectiever kunt werken, ongeacht de taak die u uitvoert.
De gratis versie van ZAPTEST bevat een enorme hoeveelheid functionaliteit om de automatisering van elke toepassing te ondersteunen… 1SCRIPT implementatie cross browser, cross device, cross application, en parallelle uitvoering zijn enkele van de beschikbare functies.
2. JIRA
Gratis edities van JIRA zijn ideale hulpmiddelen om bugs te noteren, er details aan toe te voegen in tickets en ze prioriteit te geven bij de communicatie met een ontwikkelingsteam.
Dit is echter geen alles-in-één automatiseringshulpmiddel, maar uitsluitend gespecialiseerd in de projectmanagementkant van het testproces.
3. Selenium IDE
Een open-source app die testautomatisering opneemt en afspeelt, dit is een goed hulpmiddel om te zien wat een automatiseringsplatform ziet bij het uitvoeren van een test.
Een tekortkoming van Selenium is een relatief gebrek aan geavanceerde functies zoals platformoverschrijdende integratie van geautomatiseerde taken.
4. AutoHotkey
AutoHotkey is een volledig gratis en open-source scripttaal beschikbaar voor Windows, waarmee gebruikers scripts van verschillende grootte kunnen maken die een reeks taken voltooien na het invoeren van een enkele toetsaanslag.
Hoewel goed voor het automatiseren van eenvoudige taken, kan AutoHotkey beginnen te worstelen met sommige grotere scripts en automatiseringsvereisten.
5. Appium
Een programma dat vooral uitblinkt in het automatiseren van iOS-toepassingen, is een ideaal programma om te gebruiken als u de kwaliteit van uw mobiele toepassingen wilt verbeteren.
Het grootste nadeel van Appium is het feit dat je beperkt bent tot een zeer klein aantal producten, waardoor je beschikbare markt aanzienlijk kleiner wordt.
5 Beste Enterprise Black Box testtools
Gratis tools zijn allemaal goed en wel, maar ondernemingen en grote bedrijven hebben meer mogelijkheden nodig om hun software grondig te kunnen testen. Gelukkig beschikken sommige van de beste black box testing tools voor ondernemingen over uitgebreide functionaliteit en helpen ze bedrijven om een aanzienlijk rendement te halen uit de investering in hun QA-processen.
Enkele ideale black box testing tools voor bedrijven om in te investeren zijn:
1. ZAPTEST ENTERPRISE EDITIE
De Enterprise-editie van ZAPTEST is een van de belangrijkste automatiseringstools op de markt en kan tot 10x rendement op investering voor uw product opleveren.
Functies zoals toegang tot een fulltime ZAP Expert als onderdeel van uw team op afstand en onbeperkte licenties zorgen ervoor dat u black box testautomatisering kunt implementeren zonder een steile leercurve, en tegen vaste kosten, ongeacht hoe snel u groeit.
2. TestRail
TestRail is een platform dat zich richt op real-time testen met als doel uw tests te verbinden met een samenhangend projectbeheerplatform. Hoewel dit ideaal is om uw teambeheer te centraliseren, zijn de automatiseringsfuncties verre van perfect voor een ontwikkelingsteam dat veel nadruk wil leggen op geautomatiseerde tests.
3. Opkey
Opkey is een platform dat zich richt op no-code automatisering, wat betekent dat mensen zonder bestaande technische kennis hun testdiensten kunnen gaan automatiseren.
Een van de belangrijkste tekortkomingen van Opkey is het gebrek aan een actieve gemeenschap rond de software, waardoor u zich relatief gestrand kunt voelen wanneer u probeert te automatiseren op een manier die nieuw voor u is.
4. Perfecto
Perfecto is een tool die gebruikers helpt bij het automatiseren van mobiele toepassingen zonder ernstige problemen, werkt op een breed scala aan apparaten en richt zich op end-to-end testwerk.
De toepassing draait echter op echte apparaten in plaats van op virtuele machines, wat nog eens hoge kosten toevoegt aan wat al een relatief duur testinstrument is, voor beperkte platforms.
5. JIRA Enterprise
Naast de automatiseringskant van het testen blijft projectbeheer belangrijk, en daar komt JIRA om de hoek kijken. Enterprise JIRA heeft meer opslagruimte en geeft meer gebruikers toegang tot het platform, maar kan tot verwarring leiden door de noodzaak van op maat gemaakte machtigingen en toegang voor elke individuele gebruiker. Dit kost veel administratieve tijd.
Wanneer moet u
Enterprise vs. Freemium Black Box tools?
Om te beginnen zullen de meeste bedrijven gebruik maken van freemium black box tools. Vanuit economisch oogpunt is dit logisch, want geen enkel intelligent bedrijf wil investeren in een product dat het niet volledig begrijpt, of het nu gaat om projectbeheer of automatisering.
Freemium-tools omvatten niet alleen volledig gratis apps, maar kunnen ook gratis versies van ondernemingsproducten omvatten die een bedrijf gebruikt om te leren hoe het de tool in zijn processen moet implementeren.
Het ideale moment voor een organisatie om de gekozen tool te updaten naar een enterprise editie is wanneer het bedrijf wrijving begint te ervaren in zijn testprocessen door de gratis tool. Of dit nu een gratis tool is die slechts een select aantal licenties biedt of een hoeveelheid testen, op het moment dat u inefficiënties in uw processen begint te ervaren als gevolg van uw testtools moet u de overstap maken naar een bedrijfsversie die aan al uw behoeften voldoet.
Black box test checklist, tips en trucs
Omdat black box testing een zeer complexe testmethode is met veel mogelijkheden om je kennis van een softwarepakket op te bouwen, zijn er een paar dingen waar je op moet letten.
Enkele belangrijke tips en trucs die u in uw checklist voor black box testing kunt opnemen, zijn onder meer:
– De opdracht begrijpen
Voordat u begint met het maken van testplannen, moet u ervoor zorgen dat u de bredere opdracht voor de testperiode begrijpt. Dit houdt in dat u de software zo goed mogelijk moet begrijpen en precies moet leren wat u moet testen.
– Proeflezen van testcase
Probeer iedereen die betrokken is bij het testen de testgevallen te laten beoordelen die u gebruikt bij black box testing. Hoe meer ogen de testcase zien vóór de uitvoering, hoe groter de kans dat u eventuele fouten elimineert.
– Maak een lijst van dingen die gedaan moeten worden
De niet-technische kant van de voorbereiding op black box testing kan net zo belangrijk zijn als de technische kant. Maak bij de planning een samenhangende lijst van dingen die gedaan moeten worden, die regelt wie welk deel van de software op welk specifiek tijdstip test. Dit vermindert verwarring, potentiële burn-out en vertragingen doordat andere taken het overnemen.
– Resultaten onmiddellijk registreren
Leg alle resultaten die een test oplevert onmiddellijk vast. Door te lang te wachten met handmatige tests kun je zaken verkeerd onthouden, dus het maken van directe aantekeningen verhoogt de nauwkeurigheid aanzienlijk.
– Contacten onderhouden met ontwikkelaars
Bespreek uw testtijdschema en -strategie met ontwikkelaars, zodat zij begrijpen wat er gebeurt en wanneer zij kunnen verwachten aan nieuwe updates te werken. Dat houdt ook in dat er duidelijke processen moeten komen waarmee de afdelingen met elkaar communiceren.
– Bruikbare gegevens
Wanneer u een rapport schrijft, moet u ervoor zorgen dat alle gegevens die u aan een ontwikkelaar verstrekt, bruikbaar zijn. Dit helpt het team om een product te ontwikkelen dat inspeelt op zijn problemen, in plaats van dat een ontwikkelaar niet begrijpt welke veranderingen hij moet aanbrengen.
– Uw prioriteiten begrijpen
Als testteam is uw prioriteit uiteindelijk ervoor te zorgen dat het bedrijf een product van hoge kwaliteit aan zijn gebruikers levert. Als het testen iets langer duurt dan verwacht, bedenk dan dat het een waardevolle ruil is voor de kwaliteitsverhoging die de klant ervaart.
– Ken de hiërarchie
In een ideaal ontwikkelingsbedrijf zitten ontwikkelaars en testers op hetzelfde niveau van de hiërarchie, met een even grote inspraak in de manier waarop de software groeit. Begrijp hoe de hiërarchie in uw organisatie is en probeer ervoor te zorgen dat iedereen de waarde van goed testen begrijpt.
– Houd consistente documentatie bij
Bewaar kopieën van alle gegevens en rapporten die u tijdens het testen genereert. U kunt de wijzigingen van de app volgen waarvoor het testteam verantwoordelijk is, naast het terugkijken van oude bugs om te zien of die in toekomstige edities worden herhaald.
Conclusie
Black box testing is uiteindelijk een van de belangrijkste onderdelen van het softwaretestproces. Het helpt bedrijven ervoor te zorgen dat wat zij verzenden aan de hoogst mogelijke standaard voldoet en maakt gebruik van een verandering van perspectief om unieke inzichten te bieden in de manier waarop een toepassing door een externe gebruiker wordt waargenomen en uitgevoerd.
Elk bedrijf dat geen black box testing, zowel geautomatiseerd als handmatig, aan zijn processen toevoegt, mist een kans om de kwaliteit van zijn applicatie enorm te verbeteren. Test intelligent en u zult de vruchten plukken wanneer uw klanten toegang krijgen tot uw product.
Veelgestelde vragen en bronnen
Ongeacht hoeveel u weet over black box testing, heeft u misschien nog vragen en wilt u meer inzicht in de methode. Zie onze veelgestelde vragen hieronder voor meer informatie over black box testing en toegang tot een reeks bronnen die u meer kunnen vertellen over de methodologie.
1. Beste cursussen over Black box Test Automation
Er zijn verschillende cursussen over black box testautomatisering die u kunt volgen, die elk mensen helpen om een andere standaard van testen te bereiken.
Enkele van de meest gewaardeerde black box testing cursussen die beschikbaar zijn omvatten:
– “Black-box and White-box Testing” door Coursera
– “The Black-Box Software Testing series” door BBST
– “Inleiding tot Black Box Software Testing Technieken” door Udemy
– “Software Automation Testing” door London School of Emerging Technology
– “Drie belangrijke zwarte doos testtechnieken” door Udemy
2. Wat zijn de top 5 interviewvragen over Black box Testing?
Het testen van software is een zeer competitief vakgebied waar voor elke vacature een groot aantal kandidaten solliciteert. Als u een gesprek krijgt voor een functie in black box testing, zijn dit enkele van de vragen die u misschien wilt voorbereiden om in een gesprek te beantwoorden:
– Welke ervaring heb je met black box testing?
– Wat zijn de belangrijkste verschillen tussen black box en white box testen?
– Heeft u in uw vorige functies ervaring opgedaan met softwareautomatisering?
– Kunt u ons een moment vertellen waarop u uitdagingen op het werk hebt ervaren en hoe u die hebt overwonnen?
– Wat is volgens u de toekomst van black box testing, en hoe passen uw vaardigheden bij een langdurige carrière in het testen van software?
3. Beste Youtube-tutorials over Black Box Testing
YouTube is een van de belangrijkste leermiddelen voor mensen die hun vaardigheden op het gebied van softwaretesten uitbreiden, omdat het een gratis bron van informatie is die je kunt gebruiken om je techniek te ontwikkelen.
Enkele van de beste tutorials om te bekijken wanneer je black box testing leert zijn:
– “Black and White Box Testing Introduction – Georgia Tech – Software Development Process” door Udacity
– “Black Box en Glass Box Testing” door MIT OpenCourseWare
– “7 Black Box Testing technieken die elke QA zou moeten kennen” door The Testing Academy
– “Black Box Testing | Wat is Black Box Testing | Leer Black Box Testing” door Intellipaat
– “Wat is White vs. Grey vs. Black Box Testing?” door ITProTV
4. Hoe Black Box Tests onderhouden?
Het onderhouden van black box tests, of dit nu handmatige of geautomatiseerde tests zijn, is een kwestie van aandacht besteden aan de tests terwijl ze doorgaan en voortdurend kijken of er problemen kunnen worden opgelost.
Dit houdt in dat u ervoor moet zorgen dat alle testcases elke keer worden uitgevoerd zoals u verwacht en dat u moet controleren of geautomatiseerde tools alle juiste stappen doorlopen. Doe dit zo vaak mogelijk om te voorkomen dat uw normen afnemen, want een goed onderhouden zwarte doos-test levert de meest nauwkeurige resultaten op.
5. Beste boeken over Black Box Testing
Hoewel black box testing en software testing als geheel een voortdurend evoluerend vakgebied is, zijn er verschillende boeken die relevant blijven en veel inzicht bieden in het verbeteren van uw testwerk.
Enkele van de beste boeken over black box testing zijn:
– “Black Box Testing: Technieken voor functioneel testen van software en systemen” door Boris Beizer
– “Software Testing: Principes en Praktijk” door Srinivasan Desikan, Gopalaswamy Ramesh.
– “Essentials of Software Testing” door Ralf Bierig, Stephen Brown, Edgar Galván
– “Inleiding tot het testen van software” door Paul Ammann, Jeff Offutt