Дайте пару советов по процессу автоматизации тестирования

Всем доброго времени суток!

С недавнего времени начал простраивать и внедрять процесс автоматизации на новом проекте. Что представляет из себя проект? В проекте ведутся два направления разработки: 1. Это веб сервис завязанный на RESTful api. 2. Мобильное приложение под ОС Android.

И первое с чего я начал, это задался вопросом с чего начать? Так как никакого конкретного тз и документации нет.

В общем решил пойти по пути наименьшего сопротивления, покрыть 20% основного функционала UI тестами, используя Selenium WebDriver + Java + PageObject.

Далее остальные 80% мне бы хотелось уделить внимание API тестами. И вот тут первый совет который мне хотелось бы услышать, как автоматизировать API, какие инструменты, и тд.

После того как будет что-то готовое для веба, хотелось бы так же автоматизировать мобильное приложение, и опять же как это сделать?

Буду рад получить конструктивные советы и предложения, ссылки на документацию и тд.

В первую очередь автоматизируйте свою работу. Что вы чаще и больше всего делаете. Так же можете начать с регрессии. А дальше будет видно что автоматизировать.

2 лайка

Для веба на Java вам надо:

  1. HTTP client (Retrofit, okhttp, Apache http client, куча их)
  2. Вероятно, библиотека для работы с JSON/XML (тоже куча их)
    Ну и все, вкратце. Дальше писать тесты уже.

Для Андроида есть принципиально 2 разных подхода:

  1. Selenium для мобилок (Appium и наверное еще что)
    Стартовать писать тесты легко, но в последтсвии вероятно те же проблемы, что и selenium, т.к. работаем с приложением как с черным ящиком.
  2. “Нативные” фреймворки (Robotium, Espresso). Назвал в кавычках потому что не смог подобрать лучшего термина.
    Стартовать заметно сложнее. Требуется понимать как работают Android приложения. Зато теперь работаем с белым ящиком и жить заметно легче.
2 лайка

автоматизация на уровне API - очень интересно, также буду рад советам… Тоже юзаю тулы для UI: Selenium WebDriver + Java + PageObject и Appium для мобильного тестирования. А вот API пока на уровне - “думаю с какой бы стороны подойти, что заюзать”… Писать ли для проекта новый фреймворк, только, отдельно под API или тот что для веба дополнить еще API тестами…

1 лайк

Если вы реально внедряете автоматизацию в проект - замотивируйте, и помогайте разработчикам писать юнит тесты. это основа основ, они добавят уверенности и минимизируют регрессии.

По тестированю АПИ гляньте тему, и мои ответы тут: Тестирование API, что выбрать для тестирования на CI сервере + локально с UI - #19 от пользователя brbrr

Вопрос в том зачем вам фреймворк для тестирования апи? тестирования апи это запрос-ответ, там нет практически никакой логики, никаких хитрых случаев и тд и тп. Там кроме ассертов и любой реквест либы просто ничего не нужно.

2 лайка

API часть можете автоматизировать с помощью SOAP UI (https://www.soapui.org/)
Интуитивно понятный интерфейс + возможность интерграции тестов в CI (a-ля Jenkins)

2 лайка

Для тестирования АПИ могу порекомендовать RestAssured - очень удобный инструмент.
Для Андроида - Appium.

1 лайк

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

П.С. Не бомбите пожалуйста на меня. Может я и правда чего-то не понимаю.

1 лайк

А что конкретно не понятно?