Search
Write a publication
Pull to refresh
12
0
Лысиков Борис @Boris_Lys

AQA Lead & SDET

Send message

Ускоряем прохождение iOS UI-тестов. Часть 3. Старт приложения с определенного экрана

Level of difficultyMedium
Reading time4 min
Views2.1K

Хабр привет!

Меня зовут Борис. Я руководитель группы автоматизации тестирования в Звук.

В этой статье я хочу рассказать про старт приложения с определенного экрана и какие способы реализации данного подхода существуют

Данная статья будет полезна iOS‑автоматизаторам с опытом, либо разработчикам.

В рамках этой статьи мы разберем:

Зачем стартовать приложение с определенного экрана?

Какие способы реализации существуют?

Реализация с помощью диплинков

Реализация с помощью ArgumentHandler для подмены стартового View

Плюсы и минусы обоих подходов

Читать далее

Ускоряем прохождение iOS UI-тестов. Часть 2. Распараллеливание тестов

Reading time4 min
Views4.6K

Хабр, привет!

Меня зовут Борис. Я Mobile AQA lead в Vivid Money.

Это вторая статья в цикле статей по iOS-автоматизации, в которых я расскажу о том, как ускорить прохождение UI-тестов.

Данная статья будет полезна iOS-автоматизаторам с опытом, либо разработчикам.

В рамках этой статьи мы разберем такие этапы:

- зачем распараллеливать тесты?;

- распараллеливаем тесты, используя Xcode;

- распараллеливаем тесты, используя Fastlane.

Читать далее

Ускоряем прохождение iOS UI-тестов. Часть 1. Запуск тестов без сборки проекта

Reading time6 min
Views6.3K

Хабр, привет!

Меня зовут Борис. Я Mobile AQA lead в Vivid Money.

Это вступительная статья в цикле статей по iOS-автоматизации, в которых я расскажу о том, как ускорить прохождение UI-тестов.

Данная статья будет полезна iOS-автоматизаторам с опытом, либо разработчикам.

В рамках этой статьи мы разберем такие этапы:

- зачем ускорять время прохождения UI-тестов;

- что такое Test runner, и какие они бывают;

- что нужно для прогона тестов без компиляции проекта;

- делимся опытом, как это помогает нам.

Читать далее

Внедряем Snapshot testing в UI-тесты iOS

Reading time7 min
Views15K

Хабр, привет!

Меня зовут Борис. Я AQA iOS-engineer в Vivid Money.

В этой статье я хочу рассказать про snapshot тесты и показать, как их можно эффективно применять в своём проекте.

Данная статья будет полезна начинающим iOS-автоматизаторам, либо разработчикам, которые решили изучить XCUITest и покрыть свой проект ui-тестами.

В рамках статьи мы разберем:

• Что такое snapshot тесты и когда их применять;

• Какие есть библиотеки;

• Поэтапно расскажу и покажу как внедрить их у себя в проекте.

Читать далее

Проверка эффективности автотестов

Reading time2 min
Views5.4K

Важно выстроить процесс работы с автотестами, требующими поддержки и особенно с нестабильными(flacky) тестами. Если сразу не уделять должного внимание к автотестам доверие к ним упадет и в конечном итоге упавшие тесты будут полностью игнорироваться

Обычно мы делаем это так:

Читать далее

Нестабильные тесты — одна из основных проблем автоматизированного тестирования(Часть 2)

Reading time4 min
Views5.1K

Это продолжение серии статей о нестабильных тестах.

В первой статье(оригинал/перевод на хабре) говорилось о 4 компонентах, в которых могут возникать нестабильные тесты.

В этой статье дадим советы как избежать нестабильных тестов в каждом из 4 компонентов.

Читать далее

Нестабильные(Flaky) тесты — одна из основных проблем автоматизированного тестирования

Reading time3 min
Views18K

Умение разбираться с нестабильными тестами критически важно в тестировании, потому что автотесты с плавающими результатами замедляют скорость всей разработки.

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

Данная статья призвана рассказать как бороться с каждой из причин.

Читать далее

Погружение в автотестирование на iOS. Часть 4. Ожидания в XCUITest

Reading time4 min
Views9K

Привет, Хабр!

В UI тестах не все события происходят синхронно друг за другом. Сетевые запросы, анимации, чтение файлов – все это требует времени. Встает вопрос – как заставить тест ждать наступления определенного события?

В этой статье мы разберем:

- Что такое ожидание и для чего они используются в тестах;

- Рассмотрим какие бывают ожидания;

- Разберем из чего состоят ожидания;

- Рассмотрим пример эффективных ожиданий в тестах.

Читать далее

Погружение в автотестирование на iOS. Часть 3. Жизненный цикл iOS приложения во время прогона тестов

Reading time5 min
Views6.7K

Привет, хабр!

В этой статье я расскажу про жизненый цикл iOS приложения во время прогона тестов, а в частности про:

- Предусловия и постусловия в ui-тестах;

- Запуск/завершение работы приложения;

- Запуск стороних приложений;

- Сброс permissions;

- Определение состояния приложения.

Читать далее

Погружение в автотестирование на iOS. Часть 2. Как взаимодействовать с ui-элементами iOS приложения в тестах

Reading time6 min
Views10K

Привет, Хабр!

В прошлой статье мы разобрались:

- Что такое ui-тесты и для чего они нужны;

- Как настроить окружение для тестов;

- Как находить ui-элементы в проекте и проставлять им accessibilityidentifier.

В этой статье мы разберем:

- Как обращаться и инициализировать ui-элементы в ваших тестах;

- Как взаимодействовать с ui-элементами приложения;

- Как писать ассерты для проверки в автотесте ожидаемого результата.

Читать далее

Погружение в автотестирование на iOS. Часть 1. Как работать с accessibilityidentifier объектов

Reading time6 min
Views25K

Всем привет!

Меня зовут Борис. Я AQA iOS-engineer в Vivid Money.

Это вступительная статья, в цикле статей по iOS-автоматизации, в которых хочется рассказать о пользе ui-тестов на проекте, их эффективном использовании и написании.

Данная статья будет полезна начинающим iOS-автоматизаторам, либо разработчикам, которые решили изучить XCUITest и покрыть свой проект ui-тестами.

Читать далее

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Registered
Activity

Specialization

Test Automation Engineer, Quality Assurance Director
Lead