iOS Broadcast
3.38K subscribers
1.72K photos
85 videos
985 links
Подборка новостей и статей для iOS разработчиков.

Новости Kotlin и мультиплатформы @kotlin_broadcast
Новости Android @android_broadcast
Реклама и прочее @ab_manager
加入频道
#swift #testing #images

How to test iOS app features that produce complex outputs like images | Live Dev Mentoring (33 минуты)

🗣 Знаете ли вы как тестировать фичи, которые создают такие данные, как например, картинки?

Caio и Mike регулярно проводят менторинг-сессии, в рамках которых разбирают интересные проблемы. Их можно смотреть и перенять предложенное решение. А возможно, иногда и увидеть, какой путь тебе не подходит, не расходуя время на его реализацию.
👎3👍1
Внедрение Allure (отчётность) в UI-тесты (swift, XCTest)

Преимущества связки xcresults с Allure (фреймворк для отчётности) при автоматизации UI тестов:
👉 процентное соотношение пройденных, проваленных, скипнутых и др. тестов
👉 таймлайн
👉 графики с количественной статистикой по статусам, длительности, ретраям и др.
👉 подробная информация по каждому тесту (название теста, ссылка на кейс, шаги, скриншот, длительность теста и каждого шага, ретраи, уровень критичности и др.)
👉 Allure используется при автоматизации других направлений (web, API)

#testing
🔥2👎1
Как провести эффективное тестирование мобильных приложений? Стратегия пятиуровневой пирамиды тестов

Взяв за основу тестовую пирамиду Мартина Фаулера, авторы создали свой вариант пирамиды, состоящий из 5 уровней. Двигаясь от нижнего к верхнему уровню, все меньше зависимостей должно быть заменено моками и все сильнее растет стоимость реализации теста (вторая картинка).

#testing
👍6👎1
unit-тестирование здорового человека ч.1

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

Плюсы юнит-тестов:
👉 Выгода на долгой дистанции
👉 Рефакторинг проще
👉 Скорость поддержки
👉 Переиспользование кода
👉 Документация кода
👉 Дополнительные гарантии. Особенно, когда возвращаешься через пол года к коду и сомневаешься была ли выполнена проверка должным образом

#testing
🔥6👎5👍1🤔1
A Better Way To Test Reference Cycles in iOS

Как реализовать тестирование на цикл сильных ссылок:
1️⃣ В тестовом классе добавляем weak var weakSUT на тестируемый объект
2️⃣ Определяем вспомогательный метод, который инициализирует тестируемый объект и присваивает weakSUT его значение
3️⃣ В методе tearDown добавляем проверку, что weakSUT имеет значение nil
4️⃣ В методах с тестами инициализируем тестируемый объект с помощью метода из 2 шага
Если обнаруживается цикл сильных ссылок, то в методе tearDown будет ошибка

#testing #memory
👍5👎1
Test Plans — теперь по умолчанию для новых проектов с Xcode 14.3 (2 мин)

В Xcode 14.3 для новых проектов по умолчанию используется Test Plan. Данный план тестирования по умолчанию в редакторе Test Plan помечен как Autocreated (создан автоматически), он может быть просмотрен и изменен, как и обычный. Для нового проекта, если вы откроете схему по умолчанию, план тестирования будет указан в разделе Test, а кнопка преобразования не появится

#testing
👎1🤩1
[iOS] Make your app suitable for UI auto-testing (10 мин)

Можно добавить в свое приложение бекдоры, скрытые от пользователя, такие как изменения API URL, работу с фича тогглами, пропуски онбордингов и т.д. Это поможет сделать тестирование более атомарным, уменьшить время прогона, улучшить стабильность и поработать с тестовым покрытием.
В статье приведены инструменты и примеры их работы для контроля и работы с UI тестами:
👉 launchArguments and launchEnvironment
👉 SBTUITestTunnel
👉 mac host — test app tunnel

#testing
👍2👎1
Forwarded from Android Broadcast (Кирилл Розов)
Инженеры AvitoTech разработали инструмент для ускорения автотестов мобильных приложений  — Emcee

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

Можно попробовать бесплатно или сразу разогнать тестирование на полную мощность. 

Больше подробностей — в официальном канале Emcee @runner_emcee, а обсудить можно в чате

#testing #tooling
👍3👎3
Forwarded from Android Broadcast (Кирилл Broadcast)
Вышел новый релиз Emcee - решения для ускорения прогонов тестов для Android и iOS. Что нового (иконкой помечена категория)
🤖 Реализовали новый способ запуска тестов - через командную строку с помощью JAR
🤖 Поддержали запись видео прогонов тестов.
🍎 Поддержали новый механизм дискаверинга тестов — runtimeXCTest.
🍎 Теперь можно запускать тесты таких альтернативных фреймворков, как Quick, Kiwi и других.
🍎 Улучшили управление ресурсами и процессами очистки и поменяли уровень подробностей логов с trace на debug. Без лишней детализации проще находить и анализировать проблемы в коде. А чем больше свободных ресурсов, тем быстрее скорость следующих запусков
☁️ Поддержали запуск Appium-тестов
☁️ Выкатили Emcee.cloud Actions - интеграция Emcee Cloud в GitHub Actions

Emcee для iOS можно скачать из GitHub , а для Android - образ на Docker Hub. Как вариант попробовать все через Emcee Cloud.

#tooling #testing
Please open Telegram to view this post
VIEW IN TELEGRAM