Π‘Π½ΠΎΠ²Π° Π² ΡˆΠΊΠΎΠ»Ρƒ: ΠΊΠ°ΠΊ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… тСстировщиков Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с автотСстами

Π§Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΈΠ· пяти соискатСлСй-QA хотят Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с автотСстами. НС всС ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ТСлания Ρ€ΡƒΡ‡Π½Ρ‹Ρ… тСстировщиков Π² Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ врСмя. Wrike ΠΏΡ€ΠΎΠ²Ρ‘Π» ΡˆΠΊΠΎΠ»Ρƒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ для сотрудников ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π» это ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ для ΠΌΠ½ΠΎΠ³ΠΈΡ…. Π― Π² этой школС участвовал ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ ΡƒΡ‡Π΅Π½ΠΈΠΊ-QA.

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

ΠžΠΏΡ‹Ρ‚ Wrike Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡˆΠΊΠΎΠ»Ρ‹

Когда Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² школС Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ стала ясна, Π΅Ρ‘ организация Π»Π΅Π³Π»Π° Π½Π° Бтаса Π”Π°Π²Ρ‹Π΄ΠΎΠ²Π°, тСхничСского Π»ΠΈΠ΄Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠšΡ‚ΠΎ ΠΊΠ°ΠΊ Π½Π΅ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, Π·Π°Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ эту ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΈΠ²Ρƒ, достигли Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈ Π½Π΅ ΠΆΠ°Π»Π΅ΡŽΡ‚ Π»ΠΈ ΠΎ ΠΏΠΎΡ‚Ρ€Π°Ρ‡Π΅Π½Π½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ? Π”Π°Π΄ΠΈΠΌ Π΅ΠΌΡƒ слово:

β€” Π’ 2016 Π³ΠΎΠ΄Ρƒ ΠΌΡ‹ написали Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ для автотСстов ΠΈ сдСлали Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΈΠΌ, Ρ‡Ρ‚ΠΎ тСсты стало ΠΏΠΈΡΠ°Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ: появились Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ стСпы, структура стала Π² Ρ€Π°Π·Ρ‹ Π±ΠΎΠ»Π΅Π΅ понятной. Π£ нас появилась идСя: Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡ΡŒ ΠΊ написанию Π½ΠΎΠ²Ρ‹Ρ… тСстов всСх, ΠΊΡ‚ΠΎ ΠΏΠΎΠΆΠ΅Π»Π°Π΅Ρ‚, Π° Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‰Π΅ Π±Ρ‹Π»ΠΎ Π²Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ, создали ΡΠ΅Ρ€ΠΈΡŽ Π»Π΅ΠΊΡ†ΠΈΠΉ. ΠœΡ‹ ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ ΠΏΠ»Π°Π½ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… Π»Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² взял сСбС ΠΎΠ΄Π½Ρƒ ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» ΠΏΠΎ Π½Π΅ΠΉ Π΄ΠΎΠΊΠ»Π°Π΄.

β€” ΠšΠ°ΠΊΠΎΠ²Ρ‹ Π±Ρ‹Π»ΠΈ слоТности Ρƒ ΡƒΡ‡Π΅Π½ΠΈΠΊΠΎΠ²?

β€” Π’ основном, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°. Π‘Ρ‹Π»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ вопросов ΠΏΠΎ структурС Π½Π°ΡˆΠΈΡ… тСстов. Π’ Ρ„ΠΈΠ΄Π±Π΅ΠΊΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ писали Π½Π° эту Ρ‚Π΅ΠΌΡƒ ΠΈ Π½Π°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π»Π΅ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

β€” ΠžΠΊΡƒΠΏΠΈΠ»Π°ΡΡŒ Π»ΠΈ школа?

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

ΠžΡ‚ сСбя ΠΆΠ΅ добавлю, Ρ‡Ρ‚ΠΎ коммуникация ΠΌΠ΅ΠΆΠ΄Ρƒ нашими ΠΎΡ‚Π΄Π΅Π»Π°ΠΌΠΈ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΠ»Π°ΡΡŒ Π΄ΠΎ прямо-Ρ‚Π°ΠΊΠΈ смСхотворно Π»Ρ‘Π³ΠΊΠΎΠ³ΠΎ уровня. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΌΠ½Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ практичСски Π½Π΅ трСбуСтся Ρ€Π°Π·Π΄ΡƒΠΌΡ‹Π²Π°Ρ‚ΡŒ Π½Π°Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ кСйсы ΠΈ с ΠΊΠ°ΠΊΠΈΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΌ атомарности ΠΎΡ‚Π΄Π°Ρ‚ΡŒ Π½Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ. Как ΠΈΡ‚ΠΎΠ³, Π·Π°Π±ΠΎΡ‚Π° ΠΎ тСстовом ΠΏΠΎΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ, нСустанно растущСм, ΠΈΠ΄Ρ‘Ρ‚ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ со всСх заинтСрСсованных сторон. Никто Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ.

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, влияниС Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄ β€” ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅. Π‘Ρ‹Ρ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚, ΠΊΠΎΠ»Π»Π΅Π³ΠΈ Ρ‡ΠΈΡ‚Π°ΡŽΡ‰ΠΈΡ… эту ΡΡ‚Π°Ρ‚ΡŒΡŽ Ρ‚ΠΎΠΆΠ΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ? Π’ΠΎΠ³Π΄Π° совСт Π±ΡƒΠ΄Π΅Ρ‚ простой: ΠΎΠ½ΠΎ Ρ‚ΠΎΠ³ΠΎ стоит, Ссли автотСсты для вас Π² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π΅. Π”Π°Π»Π΅Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ Π±ΠΎΠ»Π΅Π΅ слоТный вопрос: ΠΊΠ°ΠΊ это всё ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ максимально ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ всСх сторон Π±Ρ‹Π»ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹, Π° Π²Ρ‹Ρ…Π»ΠΎΠΏ β€” максималСн.

Π‘ΠΎΠ²Π΅Ρ‚Ρ‹ ΠΏΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ

Π¨ΠΊΠΎΠ»Π° Π±Ρ‹Π»Π° ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, Π½ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ·Π½Π°Π» Бтас, Π±Ρ‹Π»ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ слоТности, ΠΈΠ·-Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΡƒΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π»Π΅ΠΊΡ†ΠΈΠΈ. И ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠ°ΠΊ ΠΎΠ±ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠΉΡΡ Π½Π΅Π΄Π°Π²Π½ΠΈΠΉ студСнт, ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ сСбя-Π²-Π½Π΅Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΈ сСбя-сСйчас, я сформулировал ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ шаги ΠΏΠΎ созданию идСального, ΠΏΠΎ ΠΌΠΎΠ΅ΠΌΡƒ мнСнию, способа Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒ тСстировщиков Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с автотСстами.

Π¨Π°Π³ 0. Π‘ΠΎΠ·Π΄Π°Ρ‘ΠΌ ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, этот шаг Π½ΡƒΠΆΠ΅Π½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для QA. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, я Ρ…ΠΎΡ‡Ρƒ Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Π² явном Π²ΠΈΠ΄Π΅: кодовая Π±Π°Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠΌ Π²ΠΈΠ΄Π΅. Π―Π·Ρ‹ΠΊΠΈ программирования β€” Π½Π΅ Π² послСднюю ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ языки, ΠΈ с этого ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒ ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅.

Π‘Π½ΠΎΠ²Π° Π² ΡˆΠΊΠΎΠ»Ρƒ: ΠΊΠ°ΠΊ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… тСстировщиков Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с автотСстами

ΠŸΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ Ρ‚Π°ΡΠΊΠ²ΡŒΡŽ с названиями элСмСнтов. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚Π΅ΡΡŒ тСстированиСм Ρ‚Π°ΡΠΊΠ²ΡŒΡŽ ΠΊΠ°ΠΊ Ρ‡Ρ‘Ρ€Π½ΠΎΠ³ΠΎ ящика ΠΈ Π² ΠΆΠΈΠ·Π½ΠΈ Π½Π΅ Π²ΠΈΠ΄Π΅Π»ΠΈ Selenium. Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ этот ΠΊΠΎΠ΄?

Π‘Π½ΠΎΠ²Π° Π² ΡˆΠΊΠΎΠ»Ρƒ: ΠΊΠ°ΠΊ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… тСстировщиков Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с автотСстами

(Π‘ΠΏΠΎΠΉΠ»Π΅Ρ€ β€” Ρ‡Π΅Ρ€Π΅Π· рСст удаляСтся таск ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ Π°Π΄ΠΌΠΈΠ½Π°, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΌΡ‹ смотрим, Ρ‡Ρ‚ΠΎ Π² стримС ΠΎΡΡ‚Π°Π»Π°ΡΡŒ ΠΎΠ± этом запись.)

Π£ΠΆΠ΅ ΠΎΠ΄ΠΈΠ½ этот шаг позволяСт ΡΠ±Π»ΠΈΠ·ΠΈΡ‚ΡŒ языки QAA ΠΈ QA. Автоматизаторам ΠΏΡ€ΠΎΡ‰Π΅ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ ΠΈΡ‚ΠΎΠ³ ΠΏΡ€ΠΎΠ³ΠΎΠ½Π°, Ρ€ΡƒΡ‡Π½Ρ‹ΠΌ тСстировщикам приходится Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ мСньшС сил Π½Π° составлСниС кСйсов: ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠ΅Π½Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌΠΈ. ВсС ΠΆΠ΅ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚. ΠœΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ Π΅Ρ‰Ρ‘ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Π»ΠΎΡΡŒ нСпосрСдствСнно ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅.

Π¨Π°Π³ 1. ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡΠ΅ΠΌ Ρ„Ρ€Π°Π·Ρ‹

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

На ΠΏΠ΅Ρ€Π²ΠΎΠΌ занятии стоит Π΄Π°Ρ‚ΡŒ базис ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ ΠΏΠΈΡΠ°Ρ‚ΡŒ нСпосрСдствСнно автотСсты. ПомогаСм Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (Π² ΠΌΠΎΡ‘ΠΌ случаС β€” Intellij IDEA), объясняСм Ρ‚ΠΎΡ‚ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΏΡ€Π°Π²ΠΈΠ» языка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для написания Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ классС с использованиСм ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ шагов. ПишСм с Π½ΠΈΠΌΠΈ ΠΎΠ΄ΠΈΠ½-Π΄Π²Π° тСста ΠΈ Π΄Π°Ρ‘ΠΌ домашнСС Π·Π°Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ я Π±Ρ‹ ΠΎΡ„ΠΎΡ€ΠΌΠΈΠ» Ρ‚Π°ΠΊ: Π²Π΅Ρ‚ΠΊΠ°, отвСдённая ΠΎΡ‚ мастСра, Π½ΠΎ Π² Π½Π΅ΠΉ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ нСсколько тСстов. ΠžΡΡ‚Π°Π»ΠΈΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΡ… описания. ΠŸΡ€ΠΎΡΠΈΠΌ тСстировщиков Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ эти тСсты (Π½Π΅ Ρ‡Π΅Ρ€Π΅Π· show diff, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅).

По ΠΈΡ‚ΠΎΠ³Π°ΠΌ Ρ‚ΠΎΡ‚, ΠΊΡ‚ΠΎ всё ΠΏΠΎΡΠ»ΡƒΡˆΠ°Π» ΠΈ сдСлал, смоТСт:

  1. Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с интСрфСйсом срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: созданиС Π²Π΅Ρ‚ΠΎΠΊ, Ρ…ΠΎΡ‚ΠΊΠ΅ΠΈ, ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΈ ΠΏΡƒΡˆΠΈ;
  2. ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Π°Π·Ρ‹ структуры языка ΠΈ классов: ΠΊΡƒΠ΄Π° Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ½ΠΆΠ΅ΠΊΡ‚Ρ‹, Π° ΠΊΡƒΠ΄Π° ΠΈΠΌΠΏΠΎΡ€Ρ‚Ρ‹, Π·Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ ΠΈ Ρ‡Ρ‚ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ‚Π°ΠΌ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π·Π° символы, ΠΊΡ€ΠΎΠΌΠ΅ шагов;
  3. ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ дСйствиСм, ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ, Π³Π΄Π΅ Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ;
  4. Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ автотСстов ΠΈ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ: Π² автотСстах ΠΌΠΎΠΆΠ½ΠΎ Π΄Ρ‘Ρ€Π½ΡƒΡ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Ρ…Π΅Π½Π΄Π»Π΅Ρ€ вмСсто выполнСния дСйствий Ρ‡Π΅Ρ€Π΅Π· интСрфСйс. НапримСр, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄ вмСсто открытия Ρ‚Π°ΡΠΊΠ²ΡŒΡŽ, выдСлСния ΠΈΠ½ΠΏΡƒΡ‚Π°, Π½Π°Π±ΠΎΡ€Π° тСкста ΠΈ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ Send;
  5. ΡΡ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вопросы, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π°Π½Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ шагС.

ПослСдний ΠΏΡƒΠ½ΠΊΡ‚ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ΅Π½. Π­Ρ‚ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Ρ‚ΡŒ загодя, Π½ΠΎ это Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ прСподавания: ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ Π±Π΅Π· сформулированных вопросов Π½Π΅ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ, ΠΊΠΎΠ³Π΄Π°, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ.

ИдСально Π±ΡƒΠ΄Π΅Ρ‚, Ссли Π² это врСмя Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ‚ΠΎΡ€ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ QA повСсит Π½Π° Π½Π΅Π³ΠΎ Π·Π°Π΄Π°Ρ‡Ρƒ с написаниСм ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΠΈ тСстов Π½Π° бою ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ ΠΏΠΎΠ΄ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒΡΡ Π² свою Π²Π΅Ρ‚ΠΊΡƒ.

Π§Π΅Π³ΠΎ Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π΅ стоит:

  1. Π±ΠΎΠ»Π΅Π΅ ΡƒΠ³Π»ΡƒΠ±Π»Ρ‘Π½Π½Ρ‹Π΅ знания Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ самого языка программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π½ΡƒΠΆΠ½Ρ‹ лишь ΠΏΡ€ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ. НС запомнится, придётся ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ Π΄Π²Π°ΠΆΠ΄Ρ‹-Ρ‚Ρ€ΠΈΠΆΠ΄Ρ‹, Π° ΠΌΡ‹ Π΄ΠΎΡ€ΠΎΠΆΠΈΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ², Ρ‚Π°ΠΊ? ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ², Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π³ΠΈΡ‚, созданиС классов с нуля, Ρ€Π°Π±ΠΎΡ‚Π° с зависимостями;
  2. всё, Ρ‡Ρ‚ΠΎ связано с xpath. Π‘Π΅Ρ€ΡŒΡ‘Π·Π½ΠΎ. ΠŸΡ€ΠΎ Π½Π΅Π³ΠΎ Π½Π°Π΄ΠΎ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΠΊΠΎΠ½Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ.

Π¨Π°Π³ 2. ΠŸΡ€ΠΈΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π΅ΠΌΡΡ ΠΊ Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠ΅

Π”Π°Π²Π°ΠΉΡ‚Π΅ вспомним ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ с Ρ‚Π°ΡΠΊΠ²ΡŒΡŽ ΠΈΠ· шага β„–0. Π£ нас Π΅ΡΡ‚ΡŒ стСп с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ checkCommentWithTextExists. Наш тСстировщик ΡƒΠΆΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ этот стСп Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΡŒ шага ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΅Π³ΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

А Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρƒ нас ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

onCommentBlock(userName).comment(expectedText).should(displayed());

Π“Π΄Π΅ onCommentBlock β€” это

onCommonStreamPanel().commentBlock(userName);

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΡ‡ΠΈΠΌ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Π½Π΅ Β«ΠΊΡƒΠΏΠΈ ΠΈΠ³Ρ€ΡƒΡˆΠΊΡƒΒ», Π° Β«ΠΊΡƒΠΏΠΈ ΠΈΠ³Ρ€ΡƒΡˆΠΊΡƒ ΠΈΠ· ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° ДСтский ΠΌΠΈΡ€, ΡΡ‚ΠΎΡΡ‰ΡƒΡŽ Π² синСм ΡˆΠΊΠ°Ρ„Ρƒ Π½Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ ΠΏΠΎΠ»ΠΊΠ΅ свСрху». НуТно ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ Π½Π° элСмСнт ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΎΡ‚ Π±ΠΎΠ»Π΅Π΅ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… элСмСнтов (стрим -> Π±Π»ΠΎΠΊ с коммСнтариями ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° -> Ρ‚Π° Ρ‡Π°ΡΡ‚ΡŒ этого Π±Π»ΠΎΠΊΠ°, Π³Π΄Π΅ сидит Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ тСкст).

НСт, всё Π΅Ρ‰Ρ‘ Π½Π΅ врСмя Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ xpath. Волько ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅, Ρ‡Ρ‚ΠΎ всС эти указания ΠΈΠΌΠΈ ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈ наслСдованиС ΠΈΠ΄Ρ‘Ρ‚ Ρ‡Π΅Ρ€Π΅Π· Π½ΠΈΡ…. Π—Π°Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ всС эти ΠΌΠ΅Ρ‚Ρ‡Π΅Ρ€Ρ‹ ΠΈ Π²Π΅ΠΉΡ‚Π΅Ρ€Ρ‹, ΠΎΠ½ΠΈ относятся ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ этому ΡˆΠ°Π³Ρƒ ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для понимания происходящСго. Но Π½Π΅ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ°ΠΉΡ‚Π΅: Π±ΠΎΠ»Π΅Π΅ слоТныС ассёрты ваш студСнт смоТСт ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ сам ΠΈ ΠΏΠΎΠ·Π΄Π½Π΅Π΅. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ should, waitUntil, displayed();, exist();, not();.

Π”ΠΎΠΌΠ°ΡˆΠ½Π΅Π΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ: Π²Π΅Ρ‚ΠΊΠ°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΠ΄Π°Π»Π΅Π½ΠΎ содСрТимоС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… стСпов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ количСства тСстов. ΠŸΡƒΡΡ‚ΡŒ тСстировщики ΠΈΡ… восстановят ΠΈ заставят ΠΏΡ€ΠΎΠ³ΠΎΠ½ Π±Ρ‹Ρ‚ΡŒ вновь Π·Π΅Π»Ρ‘Π½Ρ‹ΠΌ.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ссли Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ тСстировщика Π² Ρ€Π°Π±ΠΎΡ‚Π΅ Π΅ΡΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ, Π½ΠΎ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ багфиксы, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ сразу ΠΆΠ΅ тСсты Π½Π° эти Π±Π°Π³ΠΈ ΠΈ Π·Π°Ρ€Π΅Π»ΠΈΠ·ΠΈΡ‚ΡŒ. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго, всС элСмСнты ΡƒΠΆΠ΅ описаны, ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Ρ‚ΡŒ лишь ΠΏΠ°Ρ€Ρ‹-Ρ‚Ρ€ΠΎΠΉΠΊΠΈ стСпов. Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ идСальной Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ.

Π¨Π°Π³ 3. ПолноС ΠΏΠΎΠ³Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅

ΠΠ°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅, насколько это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ для тСстировщика, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ собираСтся ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ свои прямыС обязанности. НаконСц-Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ xpath.

Π‘Π½Π°Ρ‡Π°Π»Π° Π΄Π°Ρ‘ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ всС эти onCommentBlock ΠΈ comment ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠΌΠΈ.

Π‘Π½ΠΎΠ²Π° Π² ΡˆΠΊΠΎΠ»Ρƒ: ΠΊΠ°ΠΊ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… тСстировщиков Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с автотСстами

Π˜Ρ‚ΠΎΠ³ΠΎ:

"//div[contains(@class, β€˜stream-panel’)]//a[contains(@class,'author') and text()='{{ userName }}’]//div[contains(@class,'change-wrapper') and contains(.,'{{ text }}’)]"

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ рассказа ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ΅Π½. Π‘Π½Π°Ρ‡Π°Π»Π° Π±Π΅Ρ€Ρ‘ΠΌ любой ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ xpath ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ, ΠΊΠ°ΠΊ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ elements находится ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ элСмСнт. Π”Π°Π»Π΅Π΅, рассказываСм ΠΏΡ€ΠΎ структуру: ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ WebElement, Π° ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» для Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта. Π­Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ наслСдованиС.

НуТно явно ΠΏΡ€ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ элСмСнт β€” это всё Ρ‚Π°ΡΠΊΠ²ΡŒΡŽ, ΠΎΠ½ содСрТит Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт β€” вСсь стрим, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ элСмСнт β€” ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, ΠΈ Ρ‚.Π΄. Π”ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ элСмСнты β€” Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΊΠ°ΠΊ Π½Π° страницС, Ρ‚Π°ΠΊ ΠΈ Π² структурС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° автотСстов.

На этом ΠΌΠΎΠΌΠ΅Π½Ρ‚Π΅ аудитория Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Π»Π° ΡƒΠΆΠ΅ Ρ‚Π²Ρ‘Ρ€Π΄ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ΡΡ ΠΈ Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ввСсти послС Ρ‚ΠΎΡ‡ΠΊΠΈ Ρƒ onCommentBlock. Π’ этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ объясняСм всС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹: /, //, ., [] ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Π΅. Π’ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π΄ΠΎΠΊΠΈΠ΄Ρ‹Π²Π°Π΅ΠΌ знания ΠΏΡ€ΠΎ использованиС @class ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ.

Π‘Π½ΠΎΠ²Π° Π² ΡˆΠΊΠΎΠ»Ρƒ: ΠΊΠ°ΠΊ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… тСстировщиков Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ с автотСстами

Π‘Π»ΡƒΡˆΠ°Ρ‚Π΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ xpath ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ β€” ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, домашка. УдаляСм описания элСмСнтов, ΠΏΡƒΡΡ‚ΡŒ восстановят Ρ€Π°Π±ΠΎΡ‚Ρƒ тСстов.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡƒΡ‚ΡŒ?

ΠœΡ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° слоТными знаниями, Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ всё ΠΈ сразу, Π° это нСпростая Π΄ΠΈΠ»Π΅ΠΌΠΌΠ°. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Π½Π°ΠΌ сначала Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡΠ»ΡƒΡˆΠ°Ρ‚Π΅Π»Π΅ΠΉ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒΡΡ вопросами ΠΈ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ Π½Π° Π½ΠΈΡ… ΡƒΠΆΠ΅ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Если Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ всю Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ, Ρ‚ΠΎ ΠΊ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ Ρ€Π°Π·Π±ΠΎΡ€Π° Ρ‚Π΅ΠΌΡ‹ стСпов ΠΈΠ»ΠΈ xpath ваТнСйшиС части ΠΎΠ½ΠΎΠΉ ΡƒΠΆΠ΅ забудутся ΠΈΠ·-Π·Π° своСй нСпонятности.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ· вас навСрняка смоТСт ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ процСсс Π΅Ρ‰Ρ‘ сильнСС. Π‘ ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΡ‡Ρ‚Ρƒ Π² коммСнтариях ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ прСдлоТСния!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

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