Порадьте яку мову програмування обрати для переходу в automation testing?

Усі статті, обговорення, новини про тестування — в одному місці. Підписуйтеся на DOU | QA!

Працюю майже 2 роки Manual QA. Хочу перейти в автоматизацію, трохи знаю Java і писала автотести на ній (навчальний проєкт). Хотіла б автоматизувати не тільки UI, а й API. Чи є сенс продовжувати вчити Java та автоматизувати на ній, або краще обрати якусь іншу мову? Дякую за пораду.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Хотілося б ще почути думку що перспективніше на сьогоднішній день й чому: Python/Playwright чи JS/TS/Playwright?

На ДОУ, схоже, зараз приблизно рівна кількість вакансій автоматизатора на Java, Python, Swift, JavaScript/TypeScript, але на JavaScript/TypeScript їх трохи більше.
Якщо на поточній роботі вже на чомусь автоматизують, то краще ту мову і вчити. А якщо планувати міняти роботу, то можливо, JavaScript/TypeScript у трохи привабливіша перспектива.
В плані скадності вивчення все приблизно однаково, особливо якщо йдеться лише про тести.

в 2023 році найкращим вибором для автоматизації є JS/TS + Playwright.
інше не раджу розглядати. (хіба Java + Selenide ще тримає добру частину ринку, але найбільші можливості є у звʼязці вище)

так, існує, але питання в тому, яку частину ринку автоматизації займає мобайл чи десктоп?

Ну... як на мене не так й складно написати щось на Python: virtualbox, easyocr, opencv. Відкриваємо віртуалку, встановлюємо наш софт (якщо необхідно), встановлюємо необхідний софт (якщо необхідно), далі запускаємо нашу програму, робимо скріни з екрану, роспізнаємо там текст (easyocr) або іконки/зображення (тут OpenCV або нейромережа), кидаємо дії користувача у вигляді тексту або кліків, чекаємо появи тексту/зображення на екрані, ...

Як на мене це може легко масштабовано ну будь які типи застосунків.

автоматизація за допомогою порівняння скрінів — дуже нішева річ, яка не використовується на більшості проектів, тому навряд це підійде новачкам

Ну... це було колись у минулому, але зараз великий прогрес у галузі нейромереж, багато коду, щоб навіть новачки могли їх використовувати. Тому я думаю, что скоро мають з’явитися і такі фреймворки. То того ж якщо є мотивація, то чому б й не спробувати написати свій?

Якщо мене спитати, що простіше, лізти у нутрощі HTML, CSS та JS або AI, то, як на мене, AI виглядає набагато простіше.

таким самим питанням можна задатись і щодо дотнету.
хоча пайтон і значно більшу частку ринку займає, але все ж найпопулярнішим є опція, яку я вказав спочатку, що автоматично дорівнює більшій ксті вакансій, що в свою чергу автоматично дорівнює більшому комʼюніті, яке в свою чергу автоматично дорівнює більшій ксті фреймворків, ліб та й просто взагалі відповідей на питання, як вирішити ту чи іншу задачу

Тоді мені не зовсім зрозуміло чому найпопулярнішою опцією є JS/TS/Playwright а на Джинні вакансій на Python автоматизацію в три рази більше. То може краще вчити Python + Playwright??? Чи з годом TS/Playwright витіснить Python?

Тут є дуже багато факторів, які можуть повпливати на вибір:
1) Ви плануєте переходити в межах поточної компанії/проекту
Тоді це залежатиме від того, на чому саме пишуть автотести у на Вашому проекті або на проекті куди ви можете свічнутись в якості автоматизатора. Якщо компанія невелика, то варіантів там теж не буде багато, зазвичай обирається 1 основний стек, з яким всі і працюють

2) Ви орієнтуєтесь на стан ринку
Тоді, звісно, переходити на JS + Playwright, Cypress або ін. js-фрейморк — зараз це найтрендовіша річ і вакансій наче як найбільше, точно більше за джаву

3) Вам цікавий певний конкретний домен\продукт\область
Тоді відштовхуватись від нього, напр. стандартний web/mobile — знову ж таки JS, хочеться чось складнішого/іншого типу апок для смарт ТВ, медіаплеєрів, мережевних пристроїв і т.п. — тоді раджу python, в нас є як мінімум 2 великих аккаунти в наших топ-5 аутсорсерах де він використовується для автотестів

Ви можете вивчати Java через тестування, писати unit-тести які покривають JDK

юнит тесты и автоматизация это несколько разные вещи... не?

Я вивчав PHP через написання unit-тестів, таку ж пораду зустрічав у книжках для вивчення нових мов програмування, тому unit-тести це просто моя рекомендація з вивчення Java.

Unit-тести та автотести це різні речі.

Підписатись на коментарі