Опрос: Какие языки программирования и подходы Вы используете для автоматизации ваших тестов? 2018

StackOverflow до сих пор говорит что #python рулит. Так ли это касательно автоматизации? Давайте это проверим опросом

Мы проводили серию опросов по автоматизации тестирования. Хотелось бы обновить статистику по состоянию на 2018 год. Варианты для следующих опросов пишите в эту тему

Статистика за 2017
Статистика за 2016

Итак.

:one: Первый вопрос, на каких языках программирования Вы РЕАЛИЗУЕТЕ текущие проекты по автоматизации тестирования ПО? (можно выбирать несколько)

  • ruby
  • c#
  • java
  • kotlin
  • c \ c++
  • python
  • php
  • javascript
  • typescript
  • perl
  • objective-c
  • swift
  • groovy
  • visual basic
  • sql
  • go
  • xml \ xslt
  • другие, напишу с комментариях

0 участников

:two: Второй вопрос, на каких языках программирования Вы ХОТЕЛИ БЫ делать текущие проекты по автоматизации тестирования ПО? (можно выбирать несколько)

  • ruby
  • c#
  • java
  • kotlin
  • c \ c++
  • python
  • php
  • javascript
  • typescript
  • perl
  • objective-c
  • swift
  • groovy
  • visual basic
  • sql
  • go
  • xml \ xslt
  • другие, напишу с комментариях

0 участников

:three: Третий вопрос, какие подходы автоматизации тестирования Вы реализуете на текущих проектах? (можно выбирать несколько)

  • record & playback
  • functional decomposition
  • data driven
  • keyword driven
  • hybrid (data + keyword)
  • model based
  • image recognition
  • dsl
  • attd и bdd
  • AI-driven
  • machine learning
  • свой самописный подход
  • другой подход, напишу с комментариях

0 участников

:four: Четвертый вопрос, какие ключевые факторы повлияют на качественное развитие автоматизации тестирования в 2019?

  • знания и навыки автоматизаторов
  • развитие и обучение автоматизаторов
  • профильные сообщества
  • новые языки программирования
  • улучшения языков программирования
  • новые подходы в автоматизации
  • новые улучшенные интрументы
  • количество open-source решений
  • вовлечение всей команды в процессы автоматизации тестирования
  • тесная интеграция автоматизации тестирования в процессы разработки
  • автоматизация тестирования как обязательный процесс для любого проекта
  • разработки в сфере исскуственного интелекта
  • разработки в сфере машинного обучения
  • другой вариант, напишу с комментариях

0 участников

:five: Пятый и последний открый вопрос, какие самые главные проблемы автоматизации тестирования Вы решали в 2018 году? Пиши ответы ниже.

Ставим лайки, просим коллег по автоматизации проголосовать :white_check_mark: и делимся наблюдениями за 2018 год в комментариях!

12 лайков

Четвёртый год пишу на C#, немного на Java. Сменил два места работы за это время. Так же часто пишу скрипты на JS.

В общем и целом, меня всё устраивает, C# востребован, сам язык мне как нравился, так и нравится. На Java сейчас уже год ничего не писал.

Смотрел в сторону Golang, но руки не доходят.

На мой взгляд, качественные open-source решения очень положительно влияют на развитие автоматизации.
Взять тот же самый Selenoid, который просто великолепно проявляет себя.

6 лайков

TypeScript бы

Добавил

1 лайк

Главная проблема автоматизации тестирования в N-году - это найти понимание со стороны участников проекта о месте и назначении автоматизации тестирования. И умение правильно считать ROI и целесообразность тех или иных вещей.

7 лайков

Главная проблема - говнокод и суперуниверсальность этого говнокода.
Когда за сложностью кода в тесте сложно увидеть логику теста и проверок в нём.

На втором месте: «не хочу/ не буду» это проверять, буду только то, что мне надо. Какое ещё надо? Любое действие имеет последствия, не проверяешь их - не пиши тесты. Не трать время.

2 лайка

Перефразируя крылатое и вечное:

— Что, солдат, ссымся?
— Так точно, ссусь!
— Это, солдат, не беда. Такая сегодня экологическая обстановка. Все ссутся. Я ссусь. Даже главком пысается, бывает. Но по ситуации. Что же нам из-за этого, последний долг родине не отдавать? Твой позорный недуг мы в подвиг определим. Пошлем в десантники. Там ты ещё и сраться начнешь.

А кто нынче не говнокодит? Такая экологическая обстановка. :joy:
А если по делу, то штука субъективная, и сильно зависит от оценивающего, его уровня подготовки и его погруженность в проект. Если не знать целей и нюанса проекта, то будет очень сложно понять по коду насколько он соответствует термину “говнокод”, будь он хоть трижды самодокументирующимся.

По поводу “хочу/не хочу” проверять. Это вопрос к адекватности постановки задачи больше относится. Я могу привести в пример, когда меня просили делать e2e тест с мягко выражаясь не совсем правильными требованиями. Причем я то был со стороны одной из систем, которая была вообще в середине всей этой цепочки. А часть цепочки вообще выпадала и проводилась вручную. И по всем оценкам профита от этого теста было бы чуть менее чем нисколько и ничего кроме отвлечения от решения реальных проблем не давало.

3.5 года работаю в данной сфере, начал на Java, сейчас проект на C#. В проектах использую BDD подход (вначале был Cucumber, теперь SpecFlow). Думаю начать разбирать python, как еще один дополнительный язык. Основная проблема (по крайней мере сейчас), что приходится делать как мануальное тестирование, так и автоматическое.

Локаторами интерактивных элементов (UI Material), для действий с элементами.

Столкнулся с практически полным отсутствием русскоязычного коммюнити по jest/puppeter. Да и, если честно, англоязычное весьма скудное. Это к вопросу о том, над чем пришлось ломать голову в 2018 году.

Всем привет :slight_smile:

Смотрю на результаты опроса - почти 20% автоматизации на JS, и не исключено, что этот процент будет только расти.
Мне всегда для автоматизации UI или API хватало Java и Python, а сейчас все больше вакансий требуют JS и, кроме того, знание различных фреймворков - в зависимости от того, на чем написано фронт-энд (Protractor, WebDriver.io, Nightwatch, Mocha, и далее). С JS никогда дело не имела, и не знаю, есть ли смысл его изучать глубже)

Возникает вопрос - а в чем преимущества JS перед Java или Python?

Буду очень благодарна всем за ответ!

Преимущество видимо в том, что можно писать фронт-энд и тесты на него на одном языке. А ещё в армии «голодных» скриптизеров, готовых работать за еду и демпинговать цену тру жава кодеров. ИМХО.

2 лайка

При всем уважении к JS писать бы на нем автоматизацию я бы не стал, зная сколько полезных утилит и решений есть уже в Python. Зачем он действительно нужен в стеке автоматизации - ради написания скриптов для Selenium когда каких то методов не хватает.

1 лайк
  1. Как написали выше - не нужно тащить в компанию java/python/ruby/“что-то-еще” в качестве доп. ЯП только для тестирования, со всей инфраструктурой, если уже используется JS (а он в вебе уже точно используется).
  2. Низкий порог вхождения. Это и минус, и плюс. Запишу как плюс.
  3. Удобство развертывания. Все же npm/yarn, ИМХО, получше чем gradle/maven/pip и т.д. npm пакеты живут всегда локально, довольно быстро устанавливаются. Если не смотреть на ужасающий размер node_modules).
  4. Множество библиотек на все случаи жизни.
  5. Удобство самого языка. За один только jSON объект в JS - ставлю большой плюс. А если прикрутить TS - становится совсем приятно.
2 лайка

На д.м. пишу на Java. Горю сильным желанием пересесть на Kotlin.
Категорично не согласен с вот этим:
image

Зафиксируем результаты

Java лидирует в автоматизации, но Python и JavaScript уверено держатся за ней. Популярность и объем использования JavaScript в автоматизации определенно набирает обороты.

С другой стороны количество автоматизаторов, которые бы хотели автоматизировать в основном только на Python или JavaScript значительно увеличилось. Также стоит заметить набирающую желаемость использования Kotlin и TypeScript.

Довольно много людей до сих пор пишут свои велосипеды :slight_smile:

Автоматизаторы до сих по считают, что в основном “знаний и навыков” не хватает чтобы сделать автоматизацию правильно и более качественно.

1 лайк