Π’ соврСмСнной экосистСмС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ бизнСса Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ΠΈ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ стали Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½Ρ‹Ρ… процСссов. Однако, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π²Ρ‹ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ измСнСния Π² ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΡƒΡŽ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ, критичСски Π²Π°ΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² ΠΈΡ… работоспособности ΠΈ соотвСтствии бизнСс-трСбованиям. ИмСнно здСсь Π½Π° сцСну Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ концСпция User Acceptance Testing (UAT), ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ΅ΠΌΠΎΡ‡Π½ΠΎΠ΅ тСстированиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Π’ контСкстС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ этот Ρ‚Π΅Ρ€ΠΌΠΈΠ½ часто трансформируСтся Π² ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот процСсс ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ.

МногиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ администраторы ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ 1Π‘ УАВ β€” это просто какая-Ρ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ. На самом Π΄Π΅Π»Π΅, это комплСксная мСтодология ΠΈ Π½Π°Π±ΠΎΡ€ инструмСнтов, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ дСйствия Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСдС. ЦСль Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° β€” Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ошибки Π½Π° Ρ€Π°Π½Π½ΠΈΡ… стадиях, Π½Π΅ допуская ΠΈΡ… попадания Π² Β«Π±ΠΎΠ΅Π²ΡƒΡŽΒ» Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Π³Π΄Π΅ послСдствия ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ для ΡƒΡ‡Π΅Ρ‚Π°.

Данная ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ тСстирования Π² 1Π‘, инструмСнты Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Vanessa Automation ΠΈ vanessa-runner, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ процСсса ΠΏΡ€ΠΈΠ΅ΠΌΠΊΠΈ. ΠœΡ‹ рассмотрим, ΠΊΠ°ΠΊ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ€ΡƒΡ‚ΠΈΠ½Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π² Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ качСства.

ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ ΠΏΡ€ΠΈΠ΅ΠΌΠΎΡ‡Π½ΠΎΠ³ΠΎ тСстирования Π² экосистСмС 1Π‘

Π’Π΅Ρ€ΠΌΠΈΠ½ UAT (User Acceptance Testing) ΠΏΡ€ΠΈΡˆΠ΅Π» Π² ΠΌΠΈΡ€ 1Π‘ ΠΈΠ· глобальной ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π•Π³ΠΎ ΡΡƒΡ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ тСстированиС проводится Π½Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ ΠΊΠΎΠ΄Π°, Π° Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠΌ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚, Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Π»ΠΈ систСма поставлСнныС бизнСс-Π·Π°Π΄Π°Ρ‡ΠΈ. Π’ срСдС 1Π‘ этот этап часто становится Β«Π±ΡƒΡ‚Ρ‹Π»ΠΎΡ‡Π½Ρ‹ΠΌ Π³ΠΎΡ€Π»Ρ‹ΡˆΠΊΠΎΠΌΒ», Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ€ΡƒΡ‡Π½ΠΎΠ³ΠΎ участия Π±ΡƒΡ…Π³Π°Π»Ρ‚Π΅Ρ€Π° ΠΈΠ»ΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°, Ρ‡Ρ‚ΠΎ замСдляСт Ρ€Π΅Π»ΠΈΠ·Ρ‹.

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ сообщСство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² 1Π‘ создало инструмСнты, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сцСнарии UAT. ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π» Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΠΈ, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ скрипт ΠΈΠ»ΠΈ Ρ€ΠΎΠ±ΠΎΡ‚ эмулируСт эти дСйствия. Π­Ρ‚ΠΎ позволяСт Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ сотни ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π·Π° ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, гарантируя, Ρ‡Ρ‚ΠΎ новая Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π΅ сломала ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π». Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ называСтся рСгрСссионным тСстированиСм.

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Π΅ тСсты ΠΈΠ»ΠΈ тСсты с ΠΏΠΎΠ»Π½Ρ‹ΠΌ сбросом Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΠΊΠΎΠΏΠΈΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π±Π°Π·Ρ‹ Π² Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ врСмя. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ остановкС Ρ€Π°Π±ΠΎΡ‚Ρ‹ всСго прСдприятия.

πŸ“Š Как Π²Ρ‹ сСйчас тСстируСтС обновлСния Π² 1Π‘?
ΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ
АвтоматичСски Ρ‡Π΅Ρ€Π΅Π· Vanessa Automation
Волько Π½Π° ΠΊΠΎΠΏΠΈΠΈ Π±Π°Π·Ρ‹
НадСюсь Π½Π° авось ΠΈ бэкапы

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ сцСнариСв ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ стандартом Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ UAT Π² 1Π‘ сСгодня являСтся Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Vanessa Automation. Π­Ρ‚ΠΎΡ‚ инструмСнт позволяСт ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ сцСнарии тСстирования Π½Π° СстСствСнном языкС (Gherkin), Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΡ… понятными Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ программистам, Π½ΠΎ ΠΈ Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠ°ΠΌ, ΠΈ Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠ°ΠΌ. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ выглядят ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ прСдлоТСния: «Если я создал Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, Ρ‚ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ провСсти». Π­Ρ‚ΠΎ устраняСт Π±Π°Ρ€ΡŒΠ΅Ρ€ ΠΌΠ΅ΠΆΠ΄Ρƒ тСхничСским Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΊΠΎΠ΄ΠΎΠΌ тСста.

Π’Ρ‚ΠΎΡ€Ρ‹ΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ являСтся vanessa-runner. Π­Ρ‚ΠΎ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, которая позволяСт Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ сцСнарии Vanessa Automation Π² автоматичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π±Π΅Π· графичСского интСрфСйса. ИмСнно ΠΎΠ½Π° являСтся ΡΠ²ΡΠ·ΡƒΡŽΡ‰ΠΈΠΌ Π·Π²Π΅Π½ΠΎΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ систСмой контроля вСрсий (Git) ΠΈ сСрвСром 1Π‘. Π‘ Π΅Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСсты Π² процСсс Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ (CI/CD), запуская ΠΈΡ… ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅ ΠΊΠΎΠ΄Π°.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ инфраструктурныС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ 1Π‘:Π›ΠΈΠ½ΠΊ ΠΈΠ»ΠΈ собствСнныС скрипты Π½Π° Python/PowerShell, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ тСстовых Π±Π°Π·. Они ΡƒΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π±Π°Π·Ρ‹ ΠΈΠ· Π΄Π°ΠΌΠΏΠΎΠ², ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ, Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ тСсты ΠΈ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈ. ИспользованиС Ρ‚Π°ΠΊΠΈΡ… инструмСнтов Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ наличия ΠΏΡ€Π°Π² администратора сСрвСра 1Π‘ ΠΈ понимания Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ кластСра сСрвСров.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‚Π΅Π³ @Slow для ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… тСстов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΌΠ΅Π»ΠΊΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ускорит ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ.

Для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ хранСния ΠΈ вСрсионирования тСстов идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ систСма Git. Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ„ΠΈΡ‡-Ρ„Π°ΠΉΠ»ΠΎΠ² (сцСнариСв) Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ позволяСт ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ тСстов, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄-Ρ€Π΅Π²ΡŒΡŽ сцСнариСв ΠΈ ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΊΠΈ.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° инфраструктуры ΠΈ тСстового окруТСния

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ сцСнарии, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ «пСсочницу». ИдСальноС ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ для UAT Π΄ΠΎΠ»ΠΆΠ½ΠΎ максимально ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠ΅, Π½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ. Π­Ρ‚ΠΎ касаСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅, Π½ΠΎ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, установлСнных Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² оборудования (сканСров ΡˆΡ‚Ρ€ΠΈΡ…-ΠΊΠΎΠ΄Π°, вСсов) ΠΈ сСтСвых настроСк.

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

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

β˜‘οΈ ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° тСстового стСнда

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 5

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Если ваш сСрвСр тСстирования Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ слабСС ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π΅ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΌΠΈ запросами. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, слишком ΠΌΠΎΡ‰Π½ΠΎΠ΅ ΠΆΠ΅Π»Π΅Π·ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°. Π—Π΄Π΅ΡΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ баланс ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ характСристик Ρ†Π΅Π»Π΅Π²ΠΎΠΉ систСмы.

НаписаниС сцСнариСв Π½Π° языкС Gherkin

Π―Π·Ρ‹ΠΊ Gherkin являСтся Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚ΠΎΠΌ для описания тСстов Π² ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ΅ BDD (Behavior Driven Development). Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ состоит ΠΈΠ· шагов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ дСйствиС, условиС ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова: Feature (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ), Scenario (сцСнарий), Given (Π΄Π°Π½ΠΎ), When (ΠΊΠΎΠ³Π΄Π°), Then (Ρ‚ΠΎΠ³Π΄Π°).

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

ΠŸΡ€ΠΈ написании шагов ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ привязки ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ элСмСнтам интСрфСйса, Ссли это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ сСмантичСскиС ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ»Π΅ΠΉ. НапримСр, вмСсто Β«ΠΠ°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ с ΠΈΠΌΠ΅Π½Π΅ΠΌ Π€ΠΎΡ€ΠΌΠ°Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΒ», Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ шаг Β«Π― наТимаю ΠΊΠ½ΠΎΠΏΠΊΡƒ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒΒ». Π­Ρ‚ΠΎ сдСлаСт тСсты Π±ΠΎΠ»Π΅Π΅ устойчивыми ΠΊ измСнСниям Π² Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ Ρ„ΠΎΡ€ΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ структуры Ρ„Π°ΠΉΠ»Π°.feature

Feature: Π Π°Π±ΠΎΡ‚Π° со справочником ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹

Scenario: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Π°

Given я запустил 1Π‘ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ прСдприятия

When я ΠΎΡ‚ΠΊΡ€Ρ‹Π» справочник ΠšΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚Ρ‹

And я Π½Π°ΠΆΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΡƒ Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ

And Π² ΠΏΠΎΠ»Π΅ НаимСнованиС я Π²Π²Π΅Π» тСкст "ВСстовый ООО"

And я Π½Π°ΠΆΠ°Π» ΠΊΠ½ΠΎΠΏΠΊΡƒ Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ

Then Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля НаимСнованиС стало Ρ€Π°Π²Π½ΠΎ "ВСстовый ООО"

Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ шагов. Π§Π΅ΠΌ большС ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… шагов Ρƒ вас Π±ΡƒΠ΄Π΅Ρ‚, Ρ‚Π΅ΠΌ быстрСС ΠΈ дСшСвлС обойдСтся написаниС Π½ΠΎΠ²Ρ‹Ρ… тСстов. Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡ‚Π΅ собствСнныС шаги для спСцифичных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ вашСго прСдприятия, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Β«ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ²Β» ΠΈΠ»ΠΈ Β«Π‘Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚ ΠΏΠΎ ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ°ΠΌΒ».

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ Π² процСсс CI/CD ΠΈ автоматичСский запуск

Π ΡƒΡ‡Π½ΠΎΠΉ запуск тСстов defeats the purpose of automation. Настоящая Ρ†Π΅Π½Π½ΠΎΡΡ‚ΡŒ UAT раскрываСтся ΠΏΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠΉ доставки. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° vanessa-runner, которая вызываСтся ΠΈΠ· скриптов сборки (Jenkins, GitLab CI, TeamCity). Π‘ΠΊΡ€ΠΈΠΏΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π΅, ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„ΠΈΡ‡-Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ настройки Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΡ‚Ρ‡Π΅Ρ‚Π°.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ автоматичСского запуска ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ нСсколько этапов. Π‘Π½Π°Ρ‡Π°Π»Π° происходит очистка ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Π±Π°Π·Ρ‹ (reset). Π—Π°Ρ‚Π΅ΠΌ загруТаСтся конфигурация ΠΈ Π΄Π°Π½Π½Ρ‹Π΅. ПослС этого запускаСтся сам ΠΏΡ€ΠΎΠ³ΠΎΠ½ тСстов. Π’ случаС успСха сборка помСчаСтся ΠΊΠ°ΠΊ passed, ΠΈ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ дальшС. Π’ случаС падСния тСстов сборка останавливаСтся, Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ с Π»ΠΎΠ³Π°ΠΌΠΈ ошибки.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ слСдуСт ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². ΠžΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΎ ΠΏΡ€ΠΎΠ³ΠΎΠ½Π΅ тСстов Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ наглядными. Vanessa Automation Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Allure ΠΈΠ»ΠΈ Cucumber, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ ΠΈΠΌΠ΅Π½Π½ΠΎ шагС ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π» сбой, ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ экрана Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ошибки ΠΈ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ стСк Π²Ρ‹Π·ΠΎΠ²ΠΎΠ².

Π­Ρ‚Π°ΠΏ процСсса Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ ΠžΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚
ΠšΠΎΠΌΠΌΠΈΡ‚ ΠΊΠΎΠ΄Π° Git Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ИзмСнСния Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ
Π‘Π±ΠΎΡ€ΠΊΠ° ΠΈ Π΄Π΅ΠΏΠ»ΠΎΠΉ CI Server (Jenkins/GitLab) DevOps ОбновлСнная тСстовая Π±Π°Π·Π°
Запуск тСстов vanessa-runner АвтотСст ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» выполнСния (XML/HTML)
Анализ ΠΎΡ‚Ρ‡Π΅Ρ‚Π° Allure / Report Portal QA / Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Бтатус сборки (Pass/Fail)

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ vanessa-runner ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² Π½ΠΎΠ²Ρ‹Ρ… вСрсиях. ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Π½Π° GitHub ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ вСрсии Ρ€Π°Π½Π½Π΅Ρ€Π° Π² вашСм ΠΏΠ°ΠΉΠΏΠ»Π°ΠΉΠ½Π΅.

Анализ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки внСдрСния

Бамая частая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ UAT β€” это Β«Ρ…Ρ€ΡƒΠΏΠΊΠΎΡΡ‚ΡŒΒ» тСстов. Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈ Π»ΠΎΠΌΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ любом ΠΌΠ΅Π»ΠΊΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π² интСрфСйсС ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ устойчивости: ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ТСстких привязок ΠΊ Π΄Π°Ρ‚Π°ΠΌ (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Ρ‚Ρ‹) ΠΈ числам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ.

Другая распространСнная ошибка β€” ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всё сразу. НС стоит ΠΏΠΈΡΠ°Ρ‚ΡŒ тСсты для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‡ΠΈΡ…Π° систСмы. Π‘ΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΡŒΡ‚Π΅ΡΡŒ Π½Π° критичСском Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π΅ (Critical Path): ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ основных Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ отчСтности. Π­Ρ‚ΠΈ сцСнарии приносят ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΈ ΠΎΠΊΡƒΠΏΠ°ΡŽΡ‚ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ.

Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹. ПадСниС тСста Π½Π΅ всСгда ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π² ΠΊΠΎΠ΄Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ, зависаниС сСрвСра 1Π‘ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ тСстовыС Π΄Π°Π½Π½Ρ‹Π΅. НСобходимо Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒ истинныС Π΄Π΅Ρ„Π΅ΠΊΡ‚Ρ‹ ΠΎΡ‚ инфраструктурных ΡˆΡƒΠΌΠΎΠ².

πŸ’‘

Автоматизация UAT Π½Π΅ замСняСт Ρ€ΡƒΡ‡Π½ΠΎΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅ тСстированиС, Π° дополняСт Π΅Π³ΠΎ, освобо врСмя QA-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ слоТных ΠΈ нСстандартных сцСнариСв.

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° UAT Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… 1Π‘ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… инвСстиций Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ рСсурсов. Однако Π² долгосрочной пСрспСктивС это ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ сниТСнию количСства ошибок Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π΅, ΡƒΡΠΊΠΎΡ€Π΅Π½ΠΈΡŽ выпуска Ρ€Π΅Π»ΠΈΠ·ΠΎΠ² ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ ΠΎΠ±Ρ‰Π΅ΠΉ ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Gherkin ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½ Π² 1Π‘?

Gherkin β€” это ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык для описания повСдСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° СстСствСнном языкС. Π’ 1Π‘ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² связкС с Vanessa Automation для написания понятных тСст-кСйсов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ программисты, Π½ΠΎ ΠΈ бизнСс-Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΈ.

МоТно Π»ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ тСсты 1Π‘ Π½Π° сСрвСрС Π±Π΅Π· графичСского интСрфСйса?

Π”Π°, это основной Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ для CI/CD. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ vanessa-runner ΠΈ ΠΊΠ»ΡŽΡ‡Π° запуска /TestManager ΠΈΠ»ΠΈ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΠ½ΠΊΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π±Π΅Π· интСрфСйса ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ сцСнарии Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π½Π° сСрвСрС.

Как часто Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Ρ‚Π΅ΡΡ‚ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ?

РСкомСндуСтся ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Ρ‚Π΅ΡΡ‚ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ ΠΏΠ΅Ρ€Π΅Π΄ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ тСстирования ΠΈΠ»ΠΈ nightly build. Для локальной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΏΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ процСсс.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΌΠΈ тСстами ΠΈ UAT Π² 1Π‘?

ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Π΅ тСсты (xUnit) ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠΎΠ΄Π° Π½Π° Π½ΠΈΠ·ΠΊΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅. UAT (ΠΏΡ€ΠΈΠ΅ΠΌΠΎΡ‡Π½Ρ‹Π΅ тСсты) ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ систСму Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, эмулируя Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс ΠΈΠ»ΠΈ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ бизнСс-процСссы.