πŸ“¦ White/Black/Grey Box-тСстированиС



БСгодня рассмотрСния ΠΎΠ΄ΠΈΠ½ ΠΈΠ· основных Ρ‚ΠΈΠΏΠΎΠ² тСстирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΡƒΡŽ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ тСстов.



Π‘Π°ΠΌΡ‹ΠΌ высоким ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ Π² ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ² ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π±ΡƒΠ΄Π΅Ρ‚ понятиС Ρ‚ΠΈΠΏΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ сразу нСсколько смСТных Ρ‚Π΅Ρ…Π½ΠΈΠΊ тСстирования.

πŸ’‘ Π’ΠΎ Π΅ΡΡ‚ΡŒ, ΠΎΠ΄Π½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ тСстирования ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ нСсколько Π΅Π³ΠΎ Π²ΠΈΠ΄ΠΎΠ². Рассмотрим, для Π½Π°Ρ‡Π°Π»Π° нСсколько Ρ‚ΠΈΠΏΠΎΠ² тСстирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π·Π½Π°Π½ΠΈΠ΅ΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ устройства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° тСстирования.



πŸ“Œ Black Box



Summary: ΠœΡ‹ Π½Π΅ Π·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ устроСна тСстируСмая систСма.

ВСстированиС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Β«Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика», Ρ‚Π°ΠΊΠΆΠ΅ извСстноС ΠΊΠ°ΠΊ тСстированиС, основанноС Π½Π° спСцификации ΠΈΠ»ΠΈ тСстированиС повСдСния – Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° тСстирования, основанная Π½Π° Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ с внСшними интСрфСйсами тСстируСмой систСмы.



Богласно ISTQB:

тСстированиС Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика – это:



– тСстированиС, ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅, Ρ‚Π°ΠΊ ΠΈ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅, Π½Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰Π΅Π΅ знания Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ устройства ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈΠ»ΠΈ систСмы.

– тСст-Π΄ΠΈΠ·Π°ΠΉΠ½, основанный Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ΅ Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика – ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° написания ΠΈΠ»ΠΈ Π²Ρ‹Π±ΠΎΡ€Π° тСст-кСйсов Π½Π° основС Π°Π½Π°Π»ΠΈΠ·Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ»ΠΈ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ спСцификации ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈΠ»ΠΈ систСмы Π±Π΅Π· знания Π΅Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ устройства.



ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ Β«Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ ящик»? ВСстируСмая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° для тСстировщика – ΠΊΠ°ΠΊ Ρ‡Π΅Ρ€Π½Ρ‹ΠΉ Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΉ ящик, содСрТания ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚. ЦСлью этой Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ являСтся поиск ошибок Π² Ρ‚Π°ΠΊΠΈΡ… катСгориях:



πŸžΠ½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ;

🐞ошибки интСрфСйса;

🐞ошибки Π² структурах Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΊ внСшним Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…;

🐞ошибки повСдСния ΠΈΠ»ΠΈ нСдостаточная ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ систСмы;



Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ Π½Π΅ ΠΈΠΌΠ΅Π΅ΠΌ прСдставлСния ΠΎ структурС ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ устройствС систСмы. НуТно ΠΊΠΎΠ½Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄Π΅Π»Π°Π΅Ρ‚, Π° Π½Π΅ Π½Π° Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½Π° это Π΄Π΅Π»Π°Π΅Ρ‚.



ΠŸΡ€ΠΈΠΌΠ΅Ρ€:



ВСстировщик ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ тСстированиС Π²Π΅Π±-сайта, Π½Π΅ зная особСнностСй Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ прСдусмотрСнныС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ поля Π²Π²ΠΎΠ΄Π° ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ. Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° – спСцификация.



ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это Ρ‚ΠΈΠΏ тСстирования, ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΅Π³ΠΎ Π²ΠΈΠ΄Ρ‹. ВСстированиС Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΈ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ тСстированиС ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ систСмы, Π° Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ΅ – соотвСтствСнно, ΠΎΠ±Ρ‰ΠΈΠ΅ характСристики нашСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.



Π’Π΅Ρ…Π½ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° Π½Π° всСх уровнях тСстирования (ΠΎΡ‚ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΎ ΠΏΡ€ΠΈΠ΅ΠΌΠΎΡ‡Π½ΠΎΠ³ΠΎ), для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сущСствуСт спСцификация. НапримСр, ΠΏΡ€ΠΈ осущСствлСнии систСмного ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ тСстирования, трСбования ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ спСцификация Π±ΡƒΠ΄ΡƒΡ‚ основой для написания тСст-кСйсов.



Π’Π΅Ρ…Π½ΠΈΠΊΠΈ тСст-Π΄ΠΈΠ·Π°ΠΉΠ½Π°, основанныС Π½Π° использовании Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚:

– классы эквивалСнтности;

– Π°Π½Π°Π»ΠΈΠ· Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ;

– Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ;

– Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ измСнСния состояния;

– тСстированиС всСх ΠΏΠ°Ρ€.



βž•ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π°:



– тСстированиС производится с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ нСточности ΠΈ противорСчия Π² спСцификации;

– тСстировщику Π½Π΅Ρ‚ нСобходимости Π·Π½Π°Ρ‚ΡŒ языки программирования ΠΈ ΡƒΠ³Π»ΡƒΠ±Π»ΡΡ‚ΡŒΡΡ Π² особСнности Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

– тСстированиС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ спСциалистами, нСзависимыми ΠΎΡ‚ ΠΎΡ‚Π΄Π΅Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ прСдвзятого ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ;

– ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ тСст-кСйсы, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³ΠΎΡ‚ΠΎΠ²Π° спСцификация.



βž–ΠΠ΅Π΄ΠΎΡΡ‚Π°Ρ‚ΠΊΠΈ:



– тСстируСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ количСство ΠΏΡƒΡ‚Π΅ΠΉ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

– Π±Π΅Π· Ρ‡Π΅Ρ‚ΠΊΠΎΠΉ спСцификации (Π° это скорСС Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…) достаточно Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ эффСктивныС тСст-кСйсы;

– Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ тСсты ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ, Ссли ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования;



ΠŸΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика являСтся тСстированиС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π±Π΅Π»ΠΎΠ³ΠΎ ящика, Ρ€Π΅Ρ‡ΡŒ ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠΉΠ΄Π΅Ρ‚ дальшС.



#QAΠ³Π»Π°Π·Π°ΠΌΠΈΠ”ΠΆΡƒΠ½Π°_ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ #blackbox