workshop: Doelgroep (FAQ)

language

Dutch

Is de workshop (alleen) bedoeld voor “aankomend testers”?

  • Nee; de doelgroep is veel breder: het concept kom uit Lean/Agile/Scrum (Geïntegreerd Agile) aanpak. Iedereen in zo’n ontwikkel/projectaanpak is nodig cq welkom.

  • Vooral (ervaren) testers, om ervaring op te doen met moderne automatisch testen, zoals steeds meer gebruikt zal/gaat worden in Lean/Agile/Scrum ontwikkelingen.

  • Ook programmeurs zijn wel welkom; zeker die (gaan) werken in een agile omgeving. Waar zij de testers moeten “ondersteunen” door het framework te bouwen/onderhouden/aanpassen

  • Er zijn ook oefeningen, die (uitsluitend) gericht zijn op (die) programmeurs

Is selenium belangrijk voor ‘Pathways’? Of voor de workshop?

  • Pathways is onafhankelijk van selenium; maar kan die tool als library gebruiken.

  • De tester/gebruiker/workshop deelnemer hoef niets van selenium te weten!

  • Voor een van de oefeningen wordt (onderwater) selenium gebruik; daarom moet dit (vooraf) geïnstalleerd worden.

  • Andere oefeningen werken zonder die “library”.

  • Of selenium (in het echt) gebruik wordt, is sterk afhankelijk van PUT (het product dat ontwikkeld/getest wordt)

  • Voor “webapps” kan selenium gebruikt worden, of de browser aan te sturen; er zijn echter alternatieven

Hoeveel Python (kennis) is nodig?

  • Ook de tester heeft (beperkt) kennis van Python nodig

  • Elke ATS (de test) is geschreven in python. En wordt (meestal) geschreven door de tester

  • Maar ATS’sen zijn kort een eenvoudig; ook voor niet programmeurs!

  • Een ATS maakt gebruik van ‘bricks’; die zijn ook in Python geschreven; maar complexer en vaak door programmeurs gemaakt

Globaal zijn er 3 a 4 “lagen”, die een ander niveau van Python nodig hebben:

ATS:
  • Korte python scripts, die basis Python-vaardigheden [PY1] vragen.

  • Vooral verstand van test(ontwerpen) is nodig

Bricks:
  • Iets complexer, soms complex. Meer (algemene) programmeerkennis nodig dan de meeste tester hebben.

  • Maar voor programmeurs met een beperkte Python opleiding goed te doen

Gate/config:
  • Meer Python & programmeer kennis nodig. Maar is slechts éénmalig nodig per PUT

  • Nauwelijks/geen kennis van testen nodig

Pathways/Framework:
  • Dit is de core; het ontwerpen & programmeurs hiervan vraag “veel” python en programmer kennis. Het meeste van deze 4 lagen.

  • Eigenlijk is dit is een “apart” project/product

In de workshop zijn de testers vooral bezig met de ATS-laag, en beperkt met de brick-laag.

Voor programmeurs ligt de nadruk op de bricks en gate/config lagen. Gezien het workshop gehalte (en dus korte duur) is dat wel beperkt.

Waarom maakt ‘pathways’ testen (en product-ontwikkeling) efficiënter?

Door het pathways-concept, kunnen de (alle) testers zich concentreren op het ontwerpen van de test(en) ipv het uitvoeren. Bovendien kunnen ze dat lean (efficiënt) doen; omdat de nadruk op (met name het ’schrijf’-deel) van traditionele tools/aanpakken minder is. Voor “eenvoudige” tests (ook afhankelijk van test-ervaring) kan wellicht meteen de ATS geschreven worden. Voor lastigere zaken is die traditionele kennis/aanpak natuurlijk nodig. Maar vaak is de documentatie (& tool) druk minder.

Zo wordt is het ‘nooit (zeg nooit nooit) verplicht’ om MS-Visio (of soortgelijk) om een stroom-diagram te tekenen. Vaak/soms is dat ‘waste’ en dus niet ‘lean’.

De flow ligt vast in de ATS; en dus kan die “flow” direct in het ATS “geprogrammeerd” worden.
Al is een kladje als voorbereiding, soms wel handig. Dat kan op papier of whiteboard. Maar uitwerken is niet nodig; het resultaat (de ATS) is (lees: moet!) duidelijk genoeg zijn.

Ook (vooral) het programmeer-deel van een project wordt efficiënter. Omdat de testen snel (parallel; of soms eerder dan het ontwikkelwerk) beschikbaar zijn, heeft de programmeur een soort van valnet. Door het veelvuldig uitvoeren van alle testen, weet hij snel of hij geen bestaande features “kapot” gemaakt heeft. Maar ook in hoeverre de nieuwe features al werken. (STTD: Test Driven Development, of Systeem niveau)