Hannes Lindblom

Veckans testartips #8 - Har du långa strängar på din lyra?

2018-03-19 Blogg Test Testartips Läst 405 gånger

I förra veckans testartips tipsade vi om att använda olika specialtecken när du testar. Ibland är det dock inte bara intressant vilka tecken du testar med, utan även hur många. Detta kan vara relevant till exempel ur säkerhetsperspektiv då långa strängar kan användas i vissa typer av attacker. Men det gäller förstås också att systemet kan hantera ovanligare användarscenarion. Det existerar till exempel personer med exceptionellt långa namn, mycket längre än man först kanske föreställer sig.

Oavsett om du vill testa hur många tecken som får plats i ett inmatningsfält eller vill skapa en testfil fylld med blandade tecken så kan det vara lite bökigt att skapa dessa långa strängar. En taktik kan vara att slumpmässigt hamra på tangentbordet, men det finns smartare sätt. Med verktyget Perlclip kan du skapa strängar av godtycklig längd och innehåll. Speciellt användbart när du vill hålla koll på stränglängden är så kallade counterstrings. En counterstring är en sträng som är självbeskrivande vad gäller dess längd. En counterstring kan se ut så här:

$3$5$7$9$12$15$18$21$24$27$30$

Varje dollartecken är en referenspunkt för talet som står innan. Så strängen $3$5$7$ är sju tecken lång medan $3$5$7 är sex tecken lång. Så om du klistrar in en jättelång counterstring i ett inmatningsfält kan direkt avläsa var strängen kapas, det vill säga hur långa strängar fältet tillåter. 

Vilka stränglängder kan vara intressanta att testa med då? I många fall finns det kravställt eller specificerat hur många tecken en applikation eller ett system tillåter, och det är naturligtvis klokt att utforska gränserna runt dessa värden. Men glöm inte att ett system även kan ha dolda gränsvärden i form av begränsningar i hårdvaran, operativsystemet eller i olika datatyper som används i applikationen. Här kan det vara värt att testa med värden runt olika potenser av 2. Några klassiker är till exempel 2^32 och 2^64.

Sammanfattningsvis kan vi säga att det är viktigt att ta strängars längd i beaktning, inte bara innehållet, för det är ju tråkigt när de kapas av för tidi

Läs fler testartips här

Dela artikeln