Een testcase schrijven
Deze testcase stelt de parameterized input (params.json
) voor het inputdossier (file.jpg
) toe produceert de verwachte PNG vertoning (rendition.png
).
-
Verwijder eerst de automatisch gegenereerde testcase van
simple-worker
op/test/asset-compute/simple-worker
omdat deze ongeldig is, omdat onze worker de bron niet langer gewoon naar de uitvoering kopieert. -
Maak een nieuwe testhoofdmap op
/test/asset-compute/worker/success-parameterized
om te testen of de worker die een PNG-uitvoering genereert, correct wordt uitgevoerd. -
In de
success-parameterized
omslag, voeg het test inputdossiervoor dit testgeval toe en noem hetfile.jpg
. -
Voeg in de map
success-parameterized
een nieuw bestand met de naamparams.json
toe dat de invoerparameters van de worker definieert:{ "size": "400", "contrast": "0.25", "brightness": "-0.50" }
Dit zijn de zelfde sleutel/de waarden die in de het profieldefinitie van Asset Compute van het Hulpmiddel van de Ontwikkelingworden overgegaan, minus de
worker
sleutel. -
Voeg het verwachte vertoningsdossieraan dit testgeval toe en noem het
rendition.png
. Dit bestand vertegenwoordigt de verwachte uitvoer van de worker voor de opgegeven invoerfile.jpg
. -
Voer vanaf de opdrachtregel de tests van de projectbasis uit door
aio app test
uit te voeren- Verzeker {de Desktop van 0} Docker 🔗 en het steunen van de beelden van Docker geïnstalleerd en begonnen zijn
- Beëindig alle actieve instanties van het Hulpmiddel voor Ontwikkeling
Een testcase voor foutcontrole schrijven
Met deze test wordt getest of de worker de juiste fout genereert wanneer de parameter contrast
op een ongeldige waarde is ingesteld.
-
Maak een nieuwe testhoofdmap bij
/test/asset-compute/worker/error-contrast
om een foutieve uitvoering van de worker te testen vanwege een ongeldigecontrast
-parameterwaarde. -
In de
error-contrast
omslag, voeg het test inputdossiervoor dit testgeval toe en noem hetfile.jpg
. De inhoud van dit bestand is niet van belang voor deze test. Het bestand moet bestaan om voorbij de controle "Beschadigde bron" te komen, zodat de geldigheidscontroles vanrendition.instructions
kunnen worden uitgevoerd die door deze testcase worden gevalideerd. -
Voeg in de map
error-contrast
een nieuw bestand met de naamparams.json
toe dat de invoerparameters van de worker met de inhoud definieert:{ "contrast": "10", "errorReason": "rendition_instructions_error" }
- Stel
contrast
-parameters in op10
, een ongeldige waarde omdat het contrast tussen -1 en 1 moet liggen om eenRenditionInstructionsError
-element te genereren. - Stel dat de juiste fout wordt gegenereerd in tests door de
errorReason
-toets in te stellen op de 'reden' die aan de verwachte fout is gekoppeld. Deze ongeldige contrastparameter werpt de douanefout,RenditionInstructionsError
, daarom plaatserrorReason
aan de reden van deze fout, ofrendition_instructions_error
om het te bevestigen wordt geworpen.
- Stel
-
Aangezien er geen uitvoering moet worden gegenereerd tijdens een foutieve uitvoering, is er geen
rendition.<extension>
-bestand nodig. -
Voer de opdracht
aio app test
uit om de testsuite uit te voeren vanuit de hoofdmap van het project- Verzeker {de Desktop van 0} Docker 🔗 en het steunen van de beelden van Docker geïnstalleerd en begonnen zijn
- Beëindig alle actieve instanties van het Hulpmiddel voor Ontwikkeling