Тестирование мобильных приложений. - страница 2

200 OK по протоколу, но не OK для клиента: автоматизация контроля совместимости API и приложения

Выпустить релиз — часы работы команды. Упасть на старте — 1 секунда. Узнать об этом не из отзывов пользователей — бесценно. Серверные тесты проходят, эндпоинт отвечает 200 OK, но мобильный клиент падает на первом же ответе API.Типичный сценарий: в user.id приходит null, у status появляется новое значение или меняется вложенная структура — и ответ API расходится с клиентскими моделями.

продолжить чтение

200 OK иногда = кома: почему API «работает», а приложение — нет (и как нам помог ИИ)

Статус 200 OK коварен своей тривиальностью.Бэкенд-тесты «зеленые», API честно отдает данные, а веб-клиент мгновенно подхватывает изменения. Кажется, что всё в порядке, но в это же время мобильные клиенты теряют работоспособность. Приложение не выдает сетевых ошибок, оно просто не может корректно обработать обновленный DTO: клиент ожидает одну структуру данных, а получает другую.Это не баг логики сервера, а технический разрыв между живым API и замороженным артефактом — версией приложения, которая ничего не знает о правках в схеме данных, сделанных через полгода после его релиза.

продолжить чтение

Google объяснила увеличение объёма занятой памяти на Android после обновлений системы

Google объяснила, почему объём памяти Android AICore иногда резко возрастает. Система позволяет запускать функции генеративного ИИ непосредственно на аппаратном обеспечении Android-смартфона или планшета. 

продолжить чтение

ISTQB обновил сертификацию AI Testing до v2.0. Что изменилось и чего там всё ещё не хватает

Привет, меня зовут Евгений Семенюк.Я в тестировании больше 12 лет: прошёл путь от Manual QA и автоматизации до Test Manager / Quality Architect. Сейчас много занимаюсь AI в тестировании, тестированием AI-систем, обучением команд и внедрением AI-подходов в QA-процессы.Так получилось, что у меня 9 ISTQB-сертификаций, включая полный Expert Level Test Management и много лет я на волонтерских началах помогаю инженерам готовиться к экзаменам и развиваю продукты для тестировщиков.Один из таких продуктов - ProSTQB.com.Это платформа для подготовки к ISTQB-сертификациям, включая ISTQB CT-AI / AI Testing

продолжить чтение

Full-stack верификация: как Playwright-агент тестирует UI, затем проверяет базу данных без единой строки SQL

Ваш тест на оформление заказа нажимает «Оформить заказ» и видит зелёный тост. Хорошо. Но вот чего он не проверяет: реально ли записалась строка? Правильно ли записались позиции заказа? Уменьшился ли инвентарь? UI написал «подтверждено», но UI иногда врёт — проглоченная ошибка, откаченная транзакция, очередь, которая молча дропнула сообщение.

продолжить чтение

Что такое качественный инжиниринг? Ключ к созданию более качественных, быстрых и надёжных продуктов

продолжить чтение

Сам свой код и тестируй: кто [на самом деле] должен искать баги

Не так давно с коллегами обсуждали самостоятельное тестирование свеженаписанного кода. Один тимлид из нашей команды рассказал про разработчика, который отдавал код на тест, не проверяя за собой. Аргумент у него был «железный»: проверка не его забота, для этого есть тестировщики. Если честно, меня удивляет, что такая позиция в мире современного ИТ всё ещё существует. Так что я решил собрать аргументы и объяснить, почему самотестирование – важная часть рутины разработчика. Будет интересно послушать в комментариях аргументы тех, кто с этим не согласен. 

продолжить чтение

Flutter-дайджест: март 2026

Март выдался… немного тише, чем февраль.Без громких релизов уровня Flutter 3.x — но это не значит, что было скучно 😉Наоборот — месяц получился про практику, реальные кейсы и прокачку навыков 💪А ещё… несмотря ни на что — мы продолжаем работать.Да, даже несмотря на блокировки Telegram —❌ мы никуда не уходим❌ в MAX не переезжаем✅ и продолжаем делать лучший Flutter-контент для вас👉 Подписка на канал сейчас — это реальная поддержка проекта ❤️https://t.me/flutterpulse✍️ Лучшие статьи с ХабраМарт = много сильного продакшен-контента:

продолжить чтение

Ой, всё упало: 4+ способа достать креш-отчет с iOS-приложения

Привет, Хабр! На связи снова Максим. В прошлой статье мы научились собирать логи на iOS устройствах самыми разными способами и теперь для нас не вопрос разобраться, почему кнопка не нажимается, а данные не грузятся.Но бывают ситуации куда страшнее. Вы запускаете приложение, а оно... тут же исчезает. Или вы работали в приложении, раз... и вы видите домашний экран. А еще приложение может так зависнуть, что помогает только полная перезагрузка самого устройства. Все это — его величество креш (a.k.a. краш, крэш, crash, вылет, сбой, падение).

продолжить чтение

Your AI Should Be Writing Tests. The Unfair Advantage Every Vibe Coder Ignores

A test is a note you leave for the computer. It says: "this thing works like this, and if it ever stops working like this, let me know."That's it. Imagine you built a calculator. You write a note that says "2 + 3 must equal 5." The computer checks this note every time something changes. If your calculator suddenly returns 6, the note fires. You don't need to understand how the calculator works internally. You just know it's broken because 2 + 3 is not 6.This is the entire concept.What a test looks like in practiceBefore any code, here's the plain-English version:I have a function called calculatePrice. I give it an item that costs $10 and a quantity of 3. I expect $30 back. If I get anything else, something is wrong.In Go, that becomes:func TestCalculatePrice(t *testing.T) { got := calculatePrice(10, 3) if got != 30 { t.Errorf("expected 30, got %d", got) } }

продолжить чтение