Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

ВСрификация ΠΈ валидация: Ρ‡Ρ‚ΠΎ это ΠΈ Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π°?

На собСсСдованиях часто ΡΠΏΡ€Π°ΡˆΠΈΠ²Π°ΡŽΡ‚, Π² Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ. МногиС люди ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ эти слова ΠΊΠ°ΠΊ синонимы, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ взаимозамСняСмы.

ВСрификацияВалидация
ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π»ΠΈ ΠΌΡ‹ строим систСму?ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Π»ΠΈ систСму ΠΌΡ‹ строим?
ВСрификация β€” это процСсс ΠΎΡ†Π΅Π½ΠΊΠΈ ПО Π½Π° стадии Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Он Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π»ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ трСбованиям Π² спСцификациях.Валидация β€” процСсс ΠΎΡ†Π΅Π½ΠΊΠΈ ПО Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π­Ρ‚Π° ΠΎΡ†Π΅Π½ΠΊΠ° Π½ΡƒΠΆΠ½Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π»ΠΈ ПО оТиданиям ΠΈ трСбованиям ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².
ЦСль Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ β€” ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ создаСтся Π² соотвСтствии с трСбованиями ΠΈ спСцификациями.ЦСль Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ β€” ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ соотвСтствуСт трСбованиям ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π±Ρ‹Π»ΠΈ Π»ΠΈ Π²Π΅Ρ€Π½Ρ‹ спСцификации.
ВСрификация связана с Ρ‚Π°ΠΊΠΈΠΌΠΈ активностями, ΠΊΠ°ΠΊ Ρ€Π΅Π²ΡŒΡŽ, совСщания ΠΈ инспСкции.Валидация связана с Ρ‚Π°ΠΊΠΈΠΌΠΈ активностями, ΠΊΠ°ΠΊ тСстированиС Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ, Π±Π΅Π»ΠΎΠ³ΠΎ ΠΈ сСрого ящиков ΠΈ Ρ‚.ΠΏ.
ВСрификация проводится ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ QA, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, соотвСтствуСт Π»ΠΈ создаваСмоС ПО спСцификациям.Валидация проводится ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ тСстировщиков.
ВСрификация Π½Π΅ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°.Валидация проводится с запуском ΠΊΠΎΠ΄Π°.
ВСрификация проводится Π΄ΠΎ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.ДСйствия, связанныС с Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‚ΡΡ сразу послС Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.
ΠŸΡ€ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ‰ΠΈ: ΠΏΠ»Π°Π½Ρ‹, спСцификации Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, спСцификации Π΄ΠΈΠ·Π°ΠΉΠ½Π°, ΠΊΠΎΠ΄, тСст-кСйсы.ΠŸΡ€ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ оцСниваСтся собствСнно ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΈΠ»ΠΈ тСстируСмая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°.
Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ ошибок, выявлСнных ΠΏΡ€ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Π½ΠΈΠΆΠ΅, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.Ошибки, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ, обходятся Π΄ΠΎΡ€ΠΎΠΆΠ΅, Ρ‡Π΅ΠΌ Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.
Π­Ρ‚ΠΎ, Π² основном, ручная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ².Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ПО, основанная Π½Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ… ΠΈ Ρ„Π°ΠΉΠ»Π°Ρ….

Π˜Ρ‚ΠΎΠ³ΠΎ

Какой Π±Ρ‹Π»Π° ваша пСрвая Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° Π² QA ΠΈ ΠΊΠ°ΠΊ Π²Ρ‹ искали ΠΏΠ΅Ρ€Π²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ?

МСга обсуТдСниС Π² нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ ΠΎ поискС ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹. ОбмСн ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ ΠΈ мнСния.

ΠžΠ‘Π’ΠΠ’Π¬Π’Π• ΠžΠ’Π’Π•Π’ ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚

ΠŸΠΎΡ…ΠΎΠΆΠ΅Π΅

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ риск-тСстированиС?

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ тСстировании Π½Π° основС риска, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ†Π΅Π½ΠΈΠΌ прСимущСства Ρ‚Π°ΠΊΠΎΠ³ΠΎ тСстирования ΠΈ популярныС ошибки ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ use case? ВСория ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ user story ΠΈ ΠΊΠ°ΠΊ Π΅Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ?

User Story пСрСводится с английского ΠΊΠ°ΠΊ Β«ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ история». Π­Ρ‚ΠΎ ΠΎΠ±Ρ‰Π΅Π΅ описаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написанноС ΠΊΠ°ΠΊ Π±Ρ‹ ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ user-story формулируСтся, Ρ‡Π΅ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» прилоТСния Ρ†Π΅Π½Π΅Π½ для Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ отличия user stories ΠΎΡ‚ спСцификаций ΠΈ Π΄Π°Π΄ΠΈΠΌ практичСскиС совСты ΠΏΠΎ написанию.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ВСрификация VS Валидация. Π’ Ρ‡Ρ‘ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π°?

Π£ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ тСстировщиков Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ слоТности с понятиями вСрификация ΠΈ валидация. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ расставим всС Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π°Π΄ Β«ΠΈΒ» ΠΈ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ эти понятия.

Начнём с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ:

ВСрификация (Verification) β€” Π”ΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ исслСдования ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ трСбования Π±Ρ‹Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹.

Валидация (Validation) β€” Π”ΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ исслСдования ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ трСбования для ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ использования прилоТСния Π±Ρ‹Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹.

Пока Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ понятно Π² Ρ‡Ρ‘ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π°.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π° ΠΌΠΈΠ½ΡƒΡ‚Ρƒ отвлСчёмся ΠΈ Ρ€Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ Π΅Ρ‰Ρ‘ 2 понятия:

БтатичСскоС тСстированиС (Static testing) β€” ВСстированиС Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ трСбования, Π΄ΠΈΠ·Π°ΠΉΠ½, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΈ ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π±Π΅Π· исполнСния этих Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΎΠ². НапримСр, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ рСцСнзирования ΠΈΠ»ΠΈ статичСского Π°Π½Π°Π»ΠΈΠ·Π°.

ДинамичСскоС тСстированиС (Dynamic testing) β€” ВСстированиС, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈΠ»ΠΈ систСмы.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ вСрнёмся ΠΊ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ.

ВСрификация = статичСскоС тСстированиС
Валидация = динамичСскоС тСстированиС

Π Π°Π·Π±Π΅Ρ€Ρ‘ΠΌ ΠΏΠ°Ρ€Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:

НадСюсь, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ стало ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ понятнСС 🙂

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π€ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ тСория тСстирования

Π’ тСстировании Π½Π΅Ρ‚ Ρ‡Π΅Ρ‚ΠΊΠΈΡ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ Π² Ρ„ΠΈΠ·ΠΈΠΊΠ΅, ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ„Ρ€Π°Π·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ становятся Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ процСссы ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹. Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ основныС опрСдСлСния Ρ‚Π΅ΠΎΡ€ΠΈΠΈ тСстирования.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ основным понятиям

ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния (Software Testing) β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° соотвСтствия Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² повСдСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, проводимая Π½Π° ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ Π½Π°Π±ΠΎΡ€Π΅ тСстов, Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.

ЦСль тСстирования β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° соотвСтствия ПО ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹ΠΌ трСбованиям, обСспСчСниС увСрСнности Π² качСствС ПО, поиск ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Ρ… ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ выявлСны Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΡ… ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ°Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Для Ρ‡Π΅Π³ΠΎ проводится тСстированиС ПО?

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ тСстирования

QC (Quality Control) β€” ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ качСства ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° β€” Π°Π½Π°Π»ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² тСстирования ΠΈ качСства Π½ΠΎΠ²Ρ‹Ρ… вСрсий выпускаСмого ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

К Π·Π°Π΄Π°Ρ‡Π°ΠΌ контроля качСства относятся:

К Π·Π°Π΄Π°Ρ‡Π°ΠΌ обСспСчСния качСства относятся:

ВСрификация ΠΈ валидация β€” Π΄Π²Π° понятия тСсно связаны с процСссами тСстирования ΠΈ обСспСчСния качСства. К соТалСнию, ΠΈΡ… часто ΠΏΡƒΡ‚Π°ΡŽΡ‚, хотя отличия ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ достаточно сущСствСнны.

ВСрификация (verification) β€” это процСсс ΠΎΡ†Π΅Π½ΠΊΠΈ систСмы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‚ Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ этапа Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ условиям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ сформулированы Π² Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»Π΅.

Валидация (validation) β€” это ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ соотвСтствия Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ПО оТиданиям ΠΈ потрСбностям ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π΅Π³ΠΎ трСбованиям ΠΊ систСмС.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»ΠΈ аэробус А310, Ρ‚ΠΎ Π½Π°Π΄ΠΎ Π±Ρ‹Π»ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Π»ΠΊΠΈ вставали Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«Ρ‚ΠΎΡ€ΠΌΠΎΠΆΠ΅Π½ΠΈΠ΅Β», ΠΊΠΎΠ³Π΄Π° шасси ΠΊΠΎΡΠ½ΡƒΠ»ΠΈΡΡŒ Π·Π΅ΠΌΠ»ΠΈ. Π—Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° шасси Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒΡΡ, Ρ‚ΠΎ Π·Π°ΠΊΡ€Ρ‹Π»ΠΊΠΈ ставим Π² ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«Ρ‚ΠΎΡ€ΠΌΠΎΠΆΠ΅Π½ΠΈΠ΅Β». Но Π²ΠΎΡ‚ Π²ΠΎ врСмя испытаний Π² Π’Π°Ρ€ΡˆΠ°Π²Π΅ самолСт выкатился Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ полосы, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π±Ρ‹Π»Π° мокрая ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ. Он ΠΏΡ€ΠΎΡΠΊΠΎΠ»ΡŒΠ·ΠΈΠ», Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ Π±Ρ‹Π» крутящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈ ΠΎΠ½ΠΈ, Π·Π°ΠΊΡ€Ρ‹Π»ΠΊΠΈ, ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈΡΡŒ. Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Β«Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈΒ» β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° сработала, с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Β«Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈΒ» β€” Π½Π΅Ρ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΊΠΎΠ΄ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ измСнСния давлСния Π² ΡˆΠΈΠ½Π°Ρ… ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π»ΠΈΡΡŒ Π·Π°ΠΊΡ€Ρ‹Π»ΠΊΠΈ.

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΏΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО, ΠΌΠΎΠΆΠ½ΠΎ условно Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹:

Π­Ρ‚Π°ΠΏΡ‹ тСстирования:

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ стадии:

ВрСбования

ВрСбования β€” это спСцификация (описаниС) Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ.
ВрСбования ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π±Π΅Π· Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ тСхничСской стороны Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

ΠžΡ‚Ρ‡Ρ‘Ρ‚ ΠΎ Π΄Π΅Ρ„Π΅ΠΊΡ‚Π΅ (bug report) β€” Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΎ любом нСдостаткС Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ систСмС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈΠ»ΠΈ систСму ΠΊ нСвозмоТности Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

Атрибуты ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΠΎ Π΄Π΅Ρ„Π΅ΠΊΡ‚Π΅:

Π–ΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Π±Π°Π³Π°

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

Severity vs Priority

Π‘Π΅Ρ€ΡŒΡ‘Π·Π½ΠΎΡΡ‚ΡŒ (severity) ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΡƒΡ‰Π΅Ρ€Π±Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ наносится ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ сущСствованиСм Π΄Π΅Ρ„Π΅ΠΊΡ‚Π°. Severity выставляСтся тСстировщиком.

Градация Π‘Π΅Ρ€ΡŒΠ΅Π·Π½ΠΎΡΡ‚ΠΈ Π΄Π΅Ρ„Π΅ΠΊΡ‚Π° (Severity):

Градация ΠŸΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° Π΄Π΅Ρ„Π΅ΠΊΡ‚Π° (Priority):

ВСстовыС срСды

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„Π°Π·Ρ‹ тСстирования

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ тСстирования ПО

Π’ΠΈΠ΄ тСстирования β€” это ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ активностСй, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° тСстированиС Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… характСристик систСмы ΠΈΠ»ΠΈ Π΅Ρ‘ части, основанная Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… цСлях.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

Автор ΠΊΠ½ΠΈΠ³ΠΈ «A Practitioner’s Guide to Software Test Design», Lee Copeland, выдСляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ тСст-Π΄ΠΈΠ·Π°ΠΉΠ½Π°:

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ тСстирования

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

ВСстированиС Π±Π΅Π»ΠΎΠ³ΠΎ ящика β€” ΠΌΠ΅Ρ‚ΠΎΠ΄ тСстирования ПО, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ внутрСнняя структура/устройство/рСализация систСмы извСстны тСстировщику.

Богласно ISTQB, тСстированиС Π±Π΅Π»ΠΎΠ³ΠΎ ящика β€” это:

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

Богласно ISTQB, тСстированиС Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика β€” это:

ВСстовая докумСнтация

ВСст ΠΏΠ»Π°Π½ (Test Plan) β€” это Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ описываСт вСсь объСм Ρ€Π°Π±ΠΎΡ‚ ΠΏΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ, начиная с описания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, стратСгии, расписания, ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π² Π½Π°Ρ‡Π°Π»Π° ΠΈ окончания тСстирования, Π΄ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ оборудования, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ†Π΅Π½ΠΊΠΈ рисков.

ВСст ΠΏΠ»Π°Π½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ вопросы:

Π§Π°Ρ‰Π΅ всСго Ρ‡Π΅ΠΊ-лист содСрТит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ дСйствия, Π±Π΅Π· ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°. Π§Π΅ΠΊ-лист ΠΌΠ΅Π½Π΅Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½.

ВСстовый сцСнарий (test case) β€” это Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ шагов, ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… условий ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ тСстируСмой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ Π΅Ρ‘ части.

Атрибуты тСст кСйса:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ВСстированиС, вСрификация ΠΈ валидация – различия Π² понятиях

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

НСсмотря Π½Π° ΠΊΠ°ΠΆΡƒΡ‰ΡƒΡŽΡΡ ΡΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ, Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ «тСстированиС», «вСрификация» ΠΈ «валидация» ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ коррСктности Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ систСмы. Π”Π°Π±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ дальнСйшСй ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹, Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ эти понятия.

ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния – Π²ΠΈΠ΄ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, связанный с Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ (Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ наличия) ошибок (нСсоотвСтствий, Π½Π΅ΠΏΠΎΠ»Π½ΠΎΡ‚Ρ‹, двусмыслСнностСй ΠΈ Ρ‚.Π΄.) Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ систСмы. ΠŸΡ€ΠΎΡ†Π΅ΡΡ тСстирования относится Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΊ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ коррСктности ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ систСмы, соотвСтствия Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ трСбованиям, Ρ‚.Π΅. тСстированиС – это управляСмоС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Ρ†Π΅Π»ΡŒΡŽ обнаруТСния нСсоотвСтствий Π΅Π΅ повСдСния ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

Рис. 1 ВСстированиС, вСрификация ΠΈ валидация

ВСрификация ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния – Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±Ρ‰Π΅Π΅ понятиС, Ρ‡Π΅ΠΌ тСстированиС. ЦСлью Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ являСтся достиТСниС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (трСбования ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄) соотвСтствуСт трСбованиям, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π±Π΅Π· нСпрСдусмотрСнных Ρ„ΡƒΠ½Β­ΠΊΒ­Ρ†ΠΈΠΉ ΠΈ удовлСтворяСт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½Ρ‹ΠΌ спСцификациям ΠΈ стандартам. ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π²Π΅Ρ€ΠΈΒ­Ρ„ΠΈΒ­ΠΊΠ°Β­Ρ†ΠΈΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя инспСкции, тСстированиС ΠΊΠΎΠ΄Π°, Π°Π½Π°Π»ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² тСстирования, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ…. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, принято ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ процСсс тСстирования являСтся составной Ρ‡Π°ΡΡ‚ΡŒΡŽ процСсса Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΎΠ΅ ΠΆΠ΅ Π΄ΠΎΠΏΡƒΡ‰Π΅Π½ΠΈΠ΅ сдСлано ΠΈ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ курсС.

Валидация ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ систСмы – процСсс, Ρ†Π΅Π»ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ являСтся Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмы ΠΌΡ‹ достигли Ρ‚Π΅Ρ… Ρ†Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π΄ΠΎΡΡ‚ΠΈΡ‡ΡŒ благодаря Π΅Π΅ использованию. Π˜Π½Ρ‹ΠΌΠΈ словами, валидация – это ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° соотвСтствия систСмы оТиданиям Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°. Вопросы, связанныС с Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ выходят Π·Π° Ρ€Π°ΠΌΠΊΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡƒΡ‡Π΅Π±Π½ΠΎΠ³ΠΎ курса ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠ½ΡƒΡŽ Ρ‚Π΅ΠΌΡƒ для изучСния.

Если ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° эти Ρ‚Ρ€ΠΈ процСсса с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния вопроса, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ΠΈ Π΄Π°ΡŽΡ‚ ΠΎΡ‚Π²Π΅Ρ‚, Ρ‚ΠΎ тСстированиС ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° вопрос «Как это сдСлано?Β» ΠΈΠ»ΠΈ «БоотвСтсвуСт Π»ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ трСбованиям?Β», вСрификация – Β«Π§Ρ‚ΠΎ сдСлано?Β» ΠΈΠ»ΠΈ «БоотвСтствуСт Π»ΠΈ разработанная систСма трСбованиям?Β», Π° валидация – Β«Π‘Π΄Π΅Π»Π°Π½ΠΎ Π»ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ?Β» ΠΈΠ»ΠΈ «БоотвСтствуСт Π»ΠΈ разработанная систСма оТиданиям Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°?Β».

ВСрификация β€” это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ процСсс управлСния качСством, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ согласиС с ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ, стандартами ΠΈΠ»ΠΈ спСцификациСй. ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ способ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ валидация ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Β«Π²Ρ‹ создали ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Β», Π° вСрификация ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Β«Π²Ρ‹ создали ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Ρ‚Π°ΠΊΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠΌ ΠΈ Π½Π°ΠΌΠ΅Ρ€Π΅Π²Π°Π»ΠΈΡΡŒ Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒΒ».

Π•Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠΉ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ: ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ испытания оборудования. ИмСя ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ трСбования Π½Π° Ρ€ΡƒΠΊΠ°Ρ…, ΠΌΡ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠΌ испытаниС ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΈ фиксируСм, ΡΠΎΠ±Π»ΡŽΠ΄Π΅Π½Ρ‹ Π»ΠΈ трСбования. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ β€” это ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° вопрос «БоотвСтствуСт Π»ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ трСбованиям?Β».

Но Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ всСгда ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ установлСнным трСбованиям, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ситуации. НапримСр, лСкарство ΠΏΡ€ΠΎΡˆΠ»ΠΎ всС ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ испытания ΠΈ поступило Π² ΠΏΡ€ΠΎΠ΄Π°ΠΆΡƒ. Π—Π½Π°Ρ‡ΠΈΡ‚ Π»ΠΈ это Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ Π±ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ? НСт, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠ°Ρ†ΠΈΠ΅Π½Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ свои особСнности ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ для этого лСкарство ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π³ΡƒΠ±ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ (Π²Ρ€Π°Ρ‡) Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ: Π΄Π°, этому Π±ΠΎΠ»ΡŒΠ½ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ это лСкарство. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π²Ρ€Π°Ρ‡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ: ΠΏΡ€ΠΈΠ΄Π°Ρ‚ΡŒ Π·Π°ΠΊΠΎΠ½Π½ΡƒΡŽ силу ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ.

Или Π΅Ρ‰Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ выпускаСт Ρ‚Ρ€ΡƒΠ±Ρ‹, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для Π·Π°ΠΊΠ»Π°Π΄ΠΊΠΈ Π² зСмлю, Π² соотвСтствии с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π’Π£ (ВСхничСскими условиями). ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΡ этим Π’Π£ соотвСтствуСт, Π½ΠΎ поступил Π·Π°ΠΊΠ°Π·, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‰ΠΈΠΉ ΡƒΠΊΠ»Π°Π΄ΠΊΡƒ Ρ‚Ρ€ΡƒΠ± ΠΏΠΎ Π΄Π½Ρƒ моря. ΠœΠΎΠ³ΡƒΡ‚ Π»ΠΈ Ρ‚Ρ€ΡƒΠ±Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΡΡ Π’Π£, Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Ρ‹ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС? ИмСнно валидация ΠΈ Π΄Π°Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° этот вопрос.

НСтрудно Π²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ вСрификация производится всСгда, Π° Π²ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ. Она появляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ трСбования, связанныС с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ. Если фармацСвтичСский Π·Π°Π²ΠΎΠ΄ выпускаСт лСкарства, Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ лишь ΠΈΡ… соотвСтствиС трСбованиям, Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ примСнСния ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… лСкарств ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ†ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½ΡΡ‚Π°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

— вСрификация β€” проводится практичСски всСгда, выполняСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ (сличСния) характСристик ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ трСбованиями, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся Π²Ρ‹Π²ΠΎΠ΄ ΠΎ соотвСтствии (ΠΈΠ»ΠΈ нСсоотвСтствии) ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ,

— валидация β€” проводится ΠΏΡ€ΠΈ нСобходимости, выполняСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·Π° Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… условий примСнСния ΠΈ ΠΎΡ†Π΅Π½ΠΊΠΈ соотвСтствия характСристик ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ этим трСбованиям, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся Π²Ρ‹Π²ΠΎΠ΄ ΠΎ возмоТности примСнСния ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΠΈ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… условий.

Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ, валидация Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° ΠΊΠ°ΠΊ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π½Π° основС прСдставлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π² Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ трСбования, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ использования ΠΈΠ»ΠΈ примСнСния, Ρ‚ΠΎΡ‡Π½ΠΎ ΠΈ Π² ΠΏΠΎΠ»Π½ΠΎΠΌ ΠΎΠ±ΡŠΡ‘ΠΌΠ΅ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, Π° Ρ†Π΅Π»ΡŒ достигнута.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Автоматизация тСстирования ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π§Π°ΡΡ‚ΡŒ 2: прСдусловия, вСрификация элСмСнтов ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ шагов

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

МСня Π·ΠΎΠ²ΡƒΡ‚ Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ ΠœΠ°ΠΊΠ°Ρ€Π΅Π½ΠΊΠΎ, я Mobile QA Engineer Π² Badoo ΠΈ Bumble: занимаюсь тСстированиСм Π½ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π² Π½Π°ΡˆΠΈΡ… прилоТСниях Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΈ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ Π΅Ρ‘ автотСстами.

Π—Π° послСдниС Π΄Π²Π° Π³ΠΎΠ΄Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ тСстирования Π² нашСй ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ сильно измСнился. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ людСй, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Π²ΠΎΠ²Π»Π΅Ρ‡Ρ‘Π½Π½Ρ‹Ρ… Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ тСстов, ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»ΠΎΡΡŒ с дСсяти Π΄ΠΎ 40 Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ. А любая новая Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² прилоТСниях Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΊΡ€Ρ‹Ρ‚Π° тСстами Π΄ΠΎ Ρ€Π΅Π»ΠΈΠ·Π°.

Π’ Ρ‚Π°ΠΊΠΈΡ… условиях Π½Π°ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ тСсты Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ быстро, насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. И Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΡ€ΠΈ этом ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ ΠΎΡ‚Π½ΠΈΠΌΠ°Π»Π° Ρƒ нас ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠœΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ Π½Π°ΠΌ ΡƒΡΠΊΠΎΡ€ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ тСстов ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Ρ‚ΡŒ ΠΈΡ… ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π’ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ тСкста ΠΌΠ½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π» ΠΌΠΎΠΉ ΠΊΠΎΠ»Π»Π΅Π³Π° Π’ΠΈΠΊΡ‚ΠΎΡ€ ΠšΠΎΡ€ΠΎΠ½Π΅Π²ΠΈΡ‡: с этой Ρ‚Π΅ΠΌΠΎΠΉ ΠΌΡ‹ вмСстС выступали Π½Π° ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Heisenbug.

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ части ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΌΡ‹ рассказали ΠΎ Ρ€ΠΎΠ»ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² Π½Π°ΡˆΠΈΡ… процСссах, дСталях Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π»ΠΈ Ρ‚Ρ€ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ примСняСм ΠΏΡ€ΠΈ создании автотСстов. Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ измСнСния состояния элСмСнтов, настройкой прСдусловий тСстов, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ шагов для простых ΠΈ слоТных дСйствий, Π° Ρ‚Π°ΠΊΠΆΠ΅ с Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов (ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ :)).

Напомню, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΠ· ΠΎΠ±Π΅ΠΈΡ… частСй Π² Ρ€Π°Π²Π½ΠΎΠΉ стСпСни Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π²Π½Π΅Π΄Ρ€ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ тСстирования Π² своём ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, ΠΈ Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΡƒΠΆΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Сю занимаСтся.

Π’ ΠΊΠΎΠ½Ρ†Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ссылка Π½Π° тСстовый ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ со всСми ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°ΠΌΠΈ.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° 4. ВСрификация измСнСния состояния элСмСнтов

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, эта ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° ΠΎΠ΄Π½Π° ΠΈΠ· самых Π²Π°ΠΆΠ½Ρ‹Ρ… Π² мобильной Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² прилоТСниях ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ статичСскиС элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ сразу ΠΆΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° экранС ΠΈ всСгда Π½Π° Π½Ρ‘ΠΌ доступны. Π§Π°Ρ‰Π΅ ΠΌΡ‹ сталкиваСмся с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° элСмСнтов Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ врСмя.

НапримСр, Π² случаС ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° элСмСнты, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹Π΅ с сСрвСра, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ с сущСствСнной Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ. И Ссли ΠΌΡ‹ попытаСмся ΠΈΡ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ появятся, тСсты Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ°Π΄Π°Ρ‚ΡŒ.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ элСмСнты, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ ΠΈΡ… появлСния Π½Π° экранС. ЕстСствСнно, эта ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π½Π΅ Π½ΠΎΠ²Π° ΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ стандартныС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. НапримСр, Π² Selenium это Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² wait, Π° Π² Calabash β€” ΠΌΠ΅Ρ‚ΠΎΠ΄ wait_for.

Π—Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ свой вСлосипСд, ΠΈΠ»ΠΈ ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ ΠΎΡ‚ΠΊΠ°Π·Π°Π»ΠΈΡΡŒ ΠΎΡ‚ стандартного Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

Когда ΠΌΡ‹ Π½Π°Ρ‡ΠΈΠ½Π°Π»ΠΈ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ наш Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΌΡ‹ использовали стандартный ΠΌΠ΅Ρ‚ΠΎΠ΄ wait_for для оТидания появлСния ΠΈΠ»ΠΈ измСнСния состояния элСмСнтов. Но Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΠ»ΠΈΡΡŒ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. Иногда, Ρ€Π°Π· Π² Π΄Π²Π΅-Ρ‚Ρ€ΠΈ Π½Π΅Π΄Π΅Π»ΠΈ, Ρƒ нас зависали всС тСсты. ΠœΡ‹ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ это происходит ΠΈ Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ Π½Π΅ Ρ‚Π°ΠΊ.

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΈ ΠΈ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ ΠΈΡ…, оказалось, Ρ‡Ρ‚ΠΎ эти зависания Π±Ρ‹Π»ΠΈ связаны с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° wait_for, входящСго Π² состав Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Calabash. wait_for ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ timeout модуля Ruby Timeout, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π° глобальном ΠΏΠΎΡ‚ΠΎΠΊΠ΅. А тСсты зависали, ΠΊΠΎΠ³Π΄Π° этот ΠΌΠ΅Ρ‚ΠΎΠ΄ timeout использовался Π²Π»ΠΎΠΆΠ΅Π½ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Π°Ρ…: Π½Π°ΡˆΠΈΡ… ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Calabash.

НапримСр, рассмотрим ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΡƒ страницы профиля Π΄ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ wait_for. ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ° экрана Π²Π½ΠΈΠ·, ΠΏΠΎΡ‚ΠΎΠΌ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ окончания Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° отобраТСния ΠΊΠ½ΠΎΠΏΠΊΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ.

Рассмотрим Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° wait_until_no_animation.

ΠœΠ΅Ρ‚ΠΎΠ΄ wait_until_no_animation Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ‚Π°ΠΊ ΠΆΠ΅ с wait_for. Он ΠΆΠ΄Ρ‘Ρ‚, ΠΊΠΎΠ³Π΄Π° Π½Π° экранС закончится анимация. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ wait_for, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹ΠΉ Π²Π½ΡƒΡ‚Ρ€ΠΈ wait_for, Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ сСбС, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·ΠΎΠ²Ρ‹ wait_for Ρ‚Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Calabash. Π‘ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ wait_for Π²Π½ΡƒΡ‚Ρ€ΠΈ wait_for Π²Π½ΡƒΡ‚Ρ€ΠΈ wait_for риск зависания увСличиваСтся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ использования этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ своё Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅.

ВрСбования ΠΊ Π½Π΅ΠΌΡƒ совпадали с трСбованиями ΠΊ стандартным Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌ. Нам Π½ΡƒΠΆΠ΅Π½ Π±Ρ‹Π» ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ повторял ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ выполнится Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ условиС Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ истСчёт ΠΎΡ‚Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠ΅ врСмя. Если ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π·Π° ΠΎΡ‚Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠ΅ врСмя, наш ΠΌΠ΅Ρ‚ΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ создали ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Poll с ΠΎΠ΄Π½ΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ for, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ повторял стандартный ΠΌΠ΅Ρ‚ΠΎΠ΄ wait_for. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ собствСнная рСализация ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π½Π°ΠΌ Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ модуля ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρƒ нас появлялась такая Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ. ΠœΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ значСния Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… условий. НапримСр, Poll.for_true ΠΈ Poll.for_false явно ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ исполняСмый ΠΊΠΎΠ΄ Π²Π΅Ρ€Π½Ρ‘Ρ‚ true Π»ΠΈΠ±ΠΎ false. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π½ΠΈΠΆΠ΅ я ΠΏΠΎΠΊΠ°ΠΆΡƒ использованиС Ρ€Π°Π·Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ· модуля Poll.

Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². Рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ return_on_timeout. Π•Π³ΠΎ ΡΡƒΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ использовании этого ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° наш ΠΌΠ΅Ρ‚ΠΎΠ΄ Poll.for пСрСстаёт Π²Ρ‹Π±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π΄Π°ΠΆΠ΅ Ссли Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ условиС Π½Π΅ выполняСтся, Π° просто Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

ΠŸΡ€Π΅Π΄Π²ΠΈΠΆΡƒ вопросы «Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?Β» ΠΈ Β«Π—Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ?Β». Начнём с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ. Если Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ Poll.for ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° 2 станСт большС, Ρ‡Π΅ΠΌ 3, Ρ‚ΠΎ ΠΌΡ‹ всСгда Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΠΎ Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Ρƒ.

Но Ссли ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ наш ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ return_on_timeout ΠΈ всё Ρ‚Π°ΠΊ ΠΆΠ΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° 2 станСт большС, Ρ‡Π΅ΠΌ 3, Ρ‚ΠΎ послС окончания Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π°, 2 всё Π΅Ρ‰Ρ‘ Π½Π΅ станСт большС, Ρ‡Π΅ΠΌ 3, Π½ΠΎ наш тСст Π½Π΅ ΡƒΠΏΠ°Π΄Ρ‘Ρ‚, Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ Poll.for Π²Π΅Ρ€Π½Ρ‘Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ этой ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

Π—Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ? ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ return_on_timeout для Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ измСнСния состояния Π½Π°ΡˆΠΈΡ… элСмСнтов. Но ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ это Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ падСния тСстов. ΠŸΡ€ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌ использовании тСсты Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ условия Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ, Π² Ρ‚Π΅Ρ… мСстах, Π³Π΄Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ Π±Ρ‹ Π²Ρ‹Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ измСнСния состояния элСмСнтов

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Ρ‘ΠΌ ΠΊ самому интСрСсному β€” ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ измСнСния состояния ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ измСнСния состояния Π²ΠΎΠΎΠ±Ρ‰Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚. ΠŸΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с нашим ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ тСстирования β€” Ρ‡Ρ‘Ρ€Π½Ρ‹ΠΌ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΎΠΌ:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

Он ΡƒΠΌΠ΅Π΅Ρ‚ всСго Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ: ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π½Π° экранС ΠΈ ΠΏΡ€ΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ с экрана.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ измСнСния состояния называСтся Β«Π”ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡΒ». Он происходит Π² Ρ‚ΠΎΠΌ случаС, ΠΊΠΎΠ³Π΄Π° состояниС 1 – Π½Π° экранС Π½Π΅Ρ‚ нашСго ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° тСстирования, Π° состояниС 2 – ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиСДолТСн ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ

Если ΠΎΠ½ появляСтся, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ измСнСния состояния называСтся Β«Π”ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΏΠ°ΡΡ‚ΡŒΒ». ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ ΠΎΠ½ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π² состоянии 1 отобраТаСтся наш ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ тСстирования, Π° Π² состоянии 2 Π΅Π³ΠΎ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиСДолТСн ΠΏΡ€ΠΎΠΏΠ°ΡΡ‚ΡŒ

Π’Ρ€Π΅Ρ‚ΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ Π΄Π²Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² Π½Ρ‘ΠΌ, ΠΏΠΎ сути, ΠΌΡ‹ провСряСм Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ состояния. НазываСтся ΠΎΠ½ «НС Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡΒ». Π­Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° Π² состоянии 1 наш ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ тСстирования Π½Π΅ отобраТаСтся Π½Π° экранС ΠΈ спустя ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ врСмя Π² состоянии 2 ΠΎΠ½ всё Π΅Ρ‰Ρ‘ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиСНС Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ

Π’Ρ‹, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, догадались, ΠΊΠ°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚Ρ‹ΠΉ. Он называСтся «НС Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΏΠ°ΡΡ‚ΡŒΒ». ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ это, ΠΊΠΎΠ³Π΄Π° Π² состоянии 1 ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ отобраТаСтся Π½Π° экранС, ΠΈ спустя ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ врСмя Π² состоянии 2 ΠΎΠ½ всё Π΅Ρ‰Ρ‘ находится Ρ‚Π°ΠΌ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиСНС Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΏΠ°ΡΡ‚ΡŒ

РСализация ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Ρ€Π°Π·Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

ΠœΡ‹ зафиксировали всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ измСнСния состояния элСмСнтов. Как ΠΆΠ΅ ΠΈΡ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ? Π Π°Π·ΠΎΠ±ΡŒΡ‘ΠΌ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π΄Π²ΡƒΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ ΠΈ Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚ΠΎΠ³ΠΎ.

Π’ случаС с ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ двумя Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ всё довольно просто. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π°ΠΌ просто Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° элСмСнт появится, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ наш ΠΌΠ΅Ρ‚ΠΎΠ΄ Poll:

Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ β€” ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° элСмСнт ΠΏΡ€ΠΎΠΏΠ°Π΄Ρ‘Ρ‚:

Но Π² случаС с Ρ‚Ρ€Π΅Ρ‚ΡŒΠΈΠΌ ΠΈ Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ всё Π½Π΅ Ρ‚Π°ΠΊ просто.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС. Π€ΠΎΡ‚ΠΎ Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ вСрификация тСстированиС

Рассмотрим Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ «НС Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡΒ»:

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹, Π²ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, фиксируСм состояниС отсутствия элСмСнта Π½Π° экранС.

Π”Π°Π»Π΅Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Poll.for с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ return_on_timeout, ΠΌΡ‹ ΠΆΠ΄Ρ‘ΠΌ появлСния элСмСнта. ΠŸΡ€ΠΈ этом ΠΌΠ΅Ρ‚ΠΎΠ΄ Poll.for Π½Π΅ выбросит ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π° Π²Π΅Ρ€Π½Ρ‘Ρ‚ false, Ссли элСмСнт Π½Π΅ появится. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΈΠ· Poll.for, сохраняСтся Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ actual_state.

ПослС этого происходит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° нСизмСнности состояния элСмСнта с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄Π° assert.

Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° «НС Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΏΠ°ΡΡ‚ΡŒΒ» ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠΎΡ…ΠΎΠΆΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ, оТидая ΠΏΡ€ΠΎΠΏΠ°ΠΆΠΈ элСмСнта с экрана вмСсто Π΅Π³ΠΎ появлСния:

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ этих Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² измСнСния состояния Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ для ΠΌΠ½ΠΎΠ³ΠΈΡ… элСмСнтов ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. А ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ тСстов Ρƒ нас занимаСтся ΠΌΠ½ΠΎΠ³ΠΎ людСй, всСгда Π΅ΡΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π·Π°Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΏΡ€ΠΈ создании Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ вынСсли Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ всСх Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² измСнСния состояния Π² ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅Ρ‚ΠΎΠ΄:

yield – это ΠΊΠΎΠ΄ Π±Π»ΠΎΠΊΠ°, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π²Ρ‹ΡˆΠ΅ это Π±Ρ‹Π» ΠΌΠ΅Ρ‚ΠΎΠ΄ elements_displayed?. Но это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ состояниС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π½Π°ΠΌ элСмСнта. ДокумСнтация Ruby.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ измСнСния состояния Π»ΡŽΠ±Ρ‹Ρ… элСмСнтов Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ сущСствСнно ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Тизнь всСм ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ тСстирования.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹:

Π²Π°ΠΆΠ½ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ всС Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° измСнСния состояния ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°Ρ… UI-элСмСнтов;

ΠΏΠΎΠ»Π΅Π·Π½ΠΎ вынСсти эти ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄.

ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ систСму ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ всСх Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² измСнСния состояния. Π§Ρ‚ΠΎ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ Π² Π²ΠΈΠ΄Ρƒ? ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ³Π΄Π° элСмСнт Π΅ΡΡ‚ΡŒ β€” это состояниС true, Π° ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ Π½Π΅Ρ‚ β€” false.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *