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

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

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

Статистика за 2019
Статистика за 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: Четвертый вопрос, какие ключевые факторы повлияют на качественное развитие автоматизации тестирования в 2021?

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

0 участников

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

:six: Шестой и последний вопрос, какой стек технологий Вы использовали для автоматизации тестирования в 2020 году? Пишите ответы ниже. (Например, Java + Selenide + TestNG + Selenoid + Allure + Grafana + Docker)

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

3 лайка

Не всегда выбор языка/технологии стоит за автоматизатором.
С другой стороны, язык не так важен. Я почти 10 лет работал на Ruby, но пришлось срочно пересесть на JavaScript. Не скажу, что это была прямо проблема. Раньше был Selenium, сейчас Cypress. Чуть поудобнее яйца, но немного в профиль.

2 лайка

Java + Selenide + Gradle + JUnit5 + Selenoid + Allure + Allure TestOps

2 лайка

Kotlin + Daima + Sikuli

5 какие самые главные проблемы автоматизации тестирования Вы решали в 2020 году?
Было 2 основных проблемы:

  1. Как удержать рвотные массы от плохого BBD фреймворка =(
  2. как запускать системные тесты без стейджинга =)

6 какой стек технологий Вы использовали для автоматизации тестирования в 2020 году?
их тоже было 2:

  1. Kotlin, junit5, gradle, самописные клиент gRPC, Kafka, Cassandra, Postgress, Dockers - для Бекенд тестирования.
  2. Kotlin, retrofit2, selenide, junit5, maven, docker (selenoid пока не удалоь протащить, девопсы то не хотят давать машину, то пермишены для Moon в кубернетисе) - для бекенд и web, но приходилсь и с BBD - Cucumber/Java/TestNG/RestAssured/BrowserStack.
1 лайк

Kotlin+ TestNG + Serenity + Docker

1 лайк
  1. Решал проблемы нагрузочного тестирования. Попробовал такие инструменты, как gatling и artillery. Потом написал небольшую программку для тестирования сервера.

Также начал тестирование desktop клиента. Для этого разделил проект на 3 части:

  • Общая, в которой описан код обработки
  • Для desktop клиента
  • Для Web клиента
  1. Для автоматизации тестирования использую стек java + selenide + gradle + junit 5 + allure + selenoid + docker + ansible + jenkins + groovy
1 лайк

Интересно, почему Python так популярен в тестах и вообще?
Я и сам его иногда использую (но не в тестах), и не могу понять что в нём такого особенного. Да, он лёгкий, и на глаз приятный.
Может кто-нибудь знает? Неужели это из-за того что он интерпретируемый? Тогда почему PHP не популярен?

Ну а лично я пишу на golang сейчас в 90% случаях. Но это не про тесты - это другая история :slight_smile:
Если бы я сейчас занимался тестами и у меня была бы возможность писать с нуля - я даже не знаю какой язык я бы выбрал. Наверное это был бы Python, т.к. он мне понравился, когда я им немного плотно позанимался.

2 лайка
  1. Настройка автоматизации в GitLab CI (Moon, Allure)
  2. Groovy + Selenide + Gradle + TestNG + Moon + Allure
3 лайка

Python не только в тестах популярен, но и вообще своей простотой и думаю основное его достоинство, как и недостаток, это то что он не типизирован, как java.

5.а. Настройка и запуск тестов в Докере (так и не заборол до конца)
5.б. рефакторинг существующего проекта с целью исправить то, что наворотил год назад, когда был молод, неопытен,горяч и активен. Полагаю, что это же жду впереди с той же формулировкой, но только про 2020 (хотелось бы).
5.в. Работа с canvas, через ведбрайвер (ещё не поборол как надо)

6.a Java + testng + Sikuli + Selenide + Allure + Jenkins
6.b Java + testng + RestAssured + Allure + Jenkins + Grafana

Какие самые главные проблемы автоматизации тестирования Вы решали в 2020 году?

  • Мобильное тестирование, native approach: отладка и запуск тестов требуют полной сборки всего приложения (огромного энтерпрайз-монолит приложения). Каждая сборка занимала от 5 до 20 минут (!!!). И горячий привет Android Gradle Plugin, постоянные обновления которого вызывали несовместимость версий чего-то с чем-то.
  • Веб-тестирование: минимизировать количество UI-тестов. Тестировать на разных уровнях, не только все через UI и E2E. Работать над чистотой кода авто-тестов, проводить регулярный рефакторинг.

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

  • Mobile: Java + Android SDK + JUnit 4 + Espresso + Allure + Gradle + Jenkins + Bitbucket
  • Web: Java + JUnit 5 + Selenium (Selenide) + Maven + Allure + Selenoid + Jenkins + Gitlab;
    Python + pytest + Selenium

Typescript+Protractor+Jasmine+Allure
Java+Restassured+TestNG+Allure

Интересно узнать, как решили проблему интеграции Allure с Gitlab CI?

вы можете скриптами генерировать отчёт и хостить его где угодно любым веб сервером, а в gitlab ci просто в тестах получать allure-results, передавать их в виде артефактов на стадию генерации отчёта и там уже выполнять выше указанные скрипты

Kotlin+AssertJ+RestAssured+Allure+Azure…

использование докер контейнеров

typescript+cypress+jest+jenkins+docker

Можна реалізувати простіше, ніж артефакти:

  1. Підняти GitHub - kochetkov-ma/allure-server: Allure Server. Save/ generate / provide allure2 reports in one place на довільній машині
  2. Після тест рану на СІ, надсилати результати на сервер(як .zip)
  3. Генерувати репорти на сервері
  4. Публічна лінка до репортів для всієї команди(можна як сповіщення в слак після генерації репорту в пункті 3, https://api.slack.com)
  5. Профіт
2 лайка

Docker - python - qapreload - appium

Главные проблемы автоматизации тестирования, которые предстояло решить
1 Построение архитектуры тестового фреймворка для автоматизации e2e тестов и api тестов(отдельно). Задача стояла сделать настолько просто насколько это возможно, чтобы новички сразу могли писать простые тесты по шаблону.
2 Обучение написанию e2e и api автотестов команды тестирования из 5 человек и решение возникающих тех. проблем
Cтек технологий
1 e2e: node.js + WDIO(mocha-fraemwork, allure) + selenoid
2 api: node.js + jest + supertest + mocha + chai

3 лайка