Всем привет! Сегодня хочу поделиться историей, которая приключилась с моей семьей. Статья не о том, как заработать денег. Это просто рассказ об интересном случае и некоторых тревожных мыслях, связанных с ним.
Тестирование мобильных приложений *
Методы, советы, опыт
Новости
Как мне захотелось систематизировать виды тестирования
В этой статье я попытался придать систематический вид основным видам тестирования, которые я нашел в различных источниках. Идея для этой статьи зародилась у меня, когда я обнаружил, что в интернете существует множество разнообразных классификаций, и многие отличаются друг от друга. Вначале я начал это исследование для себя, но затем решил поделиться результатами со всеми, надеясь, что оно пригодится другим, как и мне.
Дебаггинг приложения без Xcode. Зачем?
Например, потому что Apple часто не дают API к своим хардам. Вот у нас нет доступа к сетевому порту устройства и мы не можем посмотреть запросы, которые через него проходят. А был бы дебаг инструмент, у нас бы было меньше обращений от тестировщиков за счет того, что они сами могут что-то посмотреть. А когда они посмотрят, то фидбэк будет четче. К тому же, дебаг инструменты — это возможность автоматизировать рутинные процессы. И вообще — разбавить рутину.
Привет, меня зовут Владимир Петров, я iOS разработчик в Альфа-Банке. Я вам расскажу как мы сделали свой дебаг-инструмент и научились дебажить наше приложение без Xcode. Обратите внимание на статью, если думали над тем, чтобы делать свое решение или готовое — расскажу, какая там может быть функциональность.
О чём молчат тестировщики?
Говорят, молчание — золото, но чтобы стать хорошим тестировщиком, нужно уметь договариваться (с разработчиками, дизайнерами, продукт-менеджерами), убеждать, лавировать между оппонентами и примирять конфликтующие стороны. Словно я описываю посредника в переговорах, но сегодня не о нем речь.
Из каждого утюга сегодня звучит призыв двигаться в сторону IT. Информационные технологии — это уже не только про математику, но и про дизайн, менеджмент, аналитику и тестирование. Причём о тестировании говорят как о чём-то очень лёгком для начала карьеры. Мол, стать тестировщиком может каждый. Но стать — это одно, а стать профессионалом — совсем другое.
Эту статью я хочу посвятить непростой работе QA-инженера, которую так легко обесценивает реклама курсов по «входу в IT». При этом все хотят работать только с профессионалами, но хорошего тестировщика днём с огнём не найдёшь. Потому что тестировщик — это командный игрок, который создаёт синергию для выпуска хорошего продукта. В слаженной команде QA-инженер становится T-shaped специалистом: умеет погружаться в код, может дать дизайнеру идеи по UX и т. д. То есть социальные навыки у QA должны быть развиты не хуже технических.
QA-инженер — это не волк-одиночка, который только ищет баги. Задача тестирования — проверка работы продукта в соответствии с требованиями заказчика. Есть даже поговорка, что разработчики радуются, когда работает, а тестировщики радуются, когда не работает. Потому что тестировщики проверяют работу программы согласно требованиям к ПО и удостоверяются, что нет багов. Но поиск багов — не цель тестировщика, а следствие его кропотливой работы.
Истории
Неочевидные возможности короля картографического ПО на гаджетах
Дисклеймер:
Все нижеизложенное является лишь наблюдением и субъективной оценкой на основе личного опыта автора, а не утверждением.
🔥 Примечание — эта статья автора расположилась на первом месте по рейтингу/просмотрам в хабе OSM за последний 23г..
Быть тупым тестировщиком
Думаю, всех раздражают неумные тестировщики, которые больше задают вопросы о том, как это должно работать и отнимают время разработчика, чем собственно тестируют.
Так вот, здравствуйте, на этой неделе это — я. Пять лет опыта тестирования, перескакивание с одной области (мобилки) в другую (веб/энтерпрайз). Даже хорошие отзывы о моей работе были, мамой клянусь!
Но сегодня третий день, как я мучаю разработчика тупыми вопросами и не могу пройти позитивный сценарий хоть в какой‑то вариации. Предлагаю немного разобраться в ситуации и выяснить, почему тестировщик с квалификацией как минимум миддл при работе над задачей кажется тупым, как пробка.
Как тестировать Android-приложения без использования эмуляторов? Знакомство с фермами мобильных устройств
Разработка мобильных приложений — это комплексная задача, особенно когда работаешь в среде с ограниченными ресурсами. На это накладываются и внешние условия рынка с огромным разнообразием устройств и вендоров, которые ведут постоянную борьбу: создают новые тренды и драйверы. Без кривых прошивок здесь не обходится.
Многие энтузиасты пытаются найти «серебряную пулю», чтобы после проверки приложения можно было заявить, что оно работает на любом устройстве — вне зависимости от характеристик и производительности. И хоть написать приложение под все телефоны в мире невозможно, мы в Selectel нашли способ, как к этому приблизиться.
Обновляю ссылку один месяц, или Лёгких задач не бывает
История о том, почему «обновить ссылку» — задача для техлида: тут и про тесты, и про вёрстку, и про архитектуры процессоров.
Как мы играли в тесты на Groovy и проиграли
В начале у меня будет один вопрос к тебе дорогой читатель. Писал ли ты когда-нибудь unit-тесты на Groovy ? Если ты андроид-разработчик, то вероятность этого крайне мала. И я с таким не сталкивался пока не пришел на проект Альфы. Небольшой дисклеймер: если ты до этого никогда не писал unit-тесты, то этот материал может показаться тебе непонятным.
Давай представим, ты приходишь на проект и видишь тест, как на картинке. Что ты будешь делать дальше?
Как развивается российский рынок тестирования ПО
За последние несколько лет разработчики ПО и мобильных приложений очень четко осознали важность тестирования. Его популярность непрерывно растет. Только в США этот рынок услуг должен вырасти на 55,76 миллиарда долларов в течение 2022-2026 годов.
В этом материале мы приведем основные тезисы из обзора рынка тестирования программного обеспечения в крупном российском бизнесе, который подготовлен редакцией портала TAdviser. Исследование подробно описывает подходы российских заказчиков к выбору технологий и инструментов тестирования, а также модели их использования, дает представление о трендах рынка и потребности его игроков в кадрах.
BDD-фреймворк для автоматизации API без кода
Меня зовут Виктор Мясников, я отвечаю за качество продукта в «Юле». Я закончил Бауманку и хотел строить ракеты, но с ними не вышло, поэтому теперь профессионально строю «велосипеды» для QA, а ещё люблю уничтожать рутину. Я расскажу, как мы проектировали BDD-фреймворк и зачем он вообще нам понадобился.
Что такое Black Box Testing?
Тестирование — фундаментальная часть жизненного цикла разработки любого ПО, будь то веб-приложение или программа для мобильных.
Тестирование не только подтверждает качество программного продукта, но и позволяет разработчику совершенствовать его.
Почти каждое программное приложение требует хотя бы одной строки кода или последовательности сложных процедур. Поэтому разработчик должен провести множество тестов, чтобы гарантировать правильную работу кода и выполнение его предназначения.
Тестирование по стратегии чёрного и белого ящика — два вида тестирования, часто выполняемых разработчиками на этом этапе.
В статье мы расскажем о тестировании по стратегии чёрного ящика (black box testing), а также о фундаментальных сходствах и отличиях чёрного и белого ящика.
Что мы используем для анализа Android-приложений
В этой статье расскажем про инструментарий для анализа мобильных приложений, который мы используем каждый день. Для начала поговорим про то, как запускать мобильные приложения, чем смотреть трафик, и рассмотрим инструменты для статического и динамического анализа мобильного приложения.
Ближайшие события
«Вам повезло!» или как Яндекс устранял баг
Предисловие
Hello, team! Возможно, столь завуалированное название статьи Вас заинтересовало, и вы решили прочитать ее во что бы то ни стало, дабы понять суть. Но на деле все куда проще, а остроты данной ситуации подбавляют лишь комические реплики службы поддержки Яндекс (далее - ЯД), которая красиво "отшила" мой баг-репорт.
Повышаем качество сервисов и делаем пользователей счастливыми: как работают в команде QA ВКонтакте
Привет, Хабр! Сегодня годовщина создания команды QA одного из самых нагруженных проектов VK — социальной сети ВКонтакте. Для нас это стало хорошим поводом поговорить о буднях тестировщиков.
Сегодня о главных задачах команды, ее традициях и жизни вне работы расскажут три сотрудника ВКонтакте, которые ежедневно работают над сервисами компании и постоянно улучшают их качество для пользователей. Материал поможет лучше разобраться в том, как устроена команда внутри, и что сделать для того чтобы преуспеть в тестировании.
Колхоз. Большая история фермы устройств Яндекса
Меня зовут Кирилл Коргов, я отвечаю за то, чтобы ферма устройств работала и развивалась. Кстати, называть её просто фермой было бы скучно, поэтому где-то на заре проекта мы по-доброму назвали её близким по смыслу словом «Колхоз». Если интересно, с чего Колхоз начинался, как пандемия привела к неожиданному росту его популярности и что общего у макбуков с лотками для офисной бумаги, прошу под кат.
Код доступа Termux
Лонгрид посвящается любителям CLI в знак солидарности лучшего эмулятора терминала на OS Android, который испытывает «кошмарную» монополию Google.
В данной работе вербализация пойдет о нижеизложенном со всеми остановками:
[+] глубоко настраивать средý (флэшка, виджет, стиль, зеркала и конфиги);
[+] управлять серверами через ssh;
[+] скачивать ролики/отрывки с YouTube;
[+] нарезать видео, создавать gif;
[+] воспроизводить текст/музыку/радио прямо в CLI;
[+] нарезать mp3-бигфайлы (аналогов приложений на Android попросту нет), и склеивать аудиофайлы;
[+] редактировать документы;
[+] проверять орфографию: как текстовых файлов, так и различных статей по url, например, проверка орфографии статей на Habr-e;
[+] генерировать словари различной сложности со скоростью Си;
[+] создавать блок-схемы; графики; облако слов и даже 3D-визуализацию;
[+] заниматься Data Science на Android-мощностях;
[+] тестировать интернет соединение/интерфейс (требуется частично Root);
[+] сниффить/сканировать сети (требуется частично Root);
[+] запускать и управлять TOR-сетью (deleted);
[+] управлять приложениями и процессами в ОС Android (требуется Root);
[+] анализировать память;
[+] защищать любые данные от случайного редактирования/уничтожения (требуется Root);
[+] автоматически шифровать и бэкапить по ночам любые данные в своё облако;
[+] чекать username(s) и e-mail(s);
[+] проводить аудит безопасности (об опасности сердить скрипт-кидди с их любимыми: «сниффить, парсить, брутить, дампить, сканить, фишить»);
[+] работать с электропочтой;
[+] изучать UNIX/shell;
[+] программировать на Android (на выбор пользователя. В Termux портированы несколько интерпретируемых и компилируемых языков программирования);
[+] запускать python/php/npm скрипты в т.ч. в одно касание с рабочего стола;
[+] работать с криптографией, стеганографией и цифровыми подписями;
[+] парсить данные;
[*] и даже запускать GNU-GUI-софт из CLI.
Импакт-анализ на примере Android-проекта
Одной из самых дорогих по времени операций на CI-сервере является прогон автотестов. Есть множество способов их ускорения, например, распараллеливание выполнения по нескольким CI-агентам и/или эмуляторам, полная эмуляция внешнего окружения(backend/сервисы Google/вебсокеты), тонкая настройка эмуляторов(Отключение анимации/ Headless-сборки / отключение снепшотов) и так далее. Сегодня поговорим про импакт-анализ или запуск только тех тестов, которые связаны с последними изменениями в коде. Расскажу какие шаги нужны для импакт-анализа и как мы реализовали это в нашем проекте.
Как ускорить автотесты
Подбираем эффективную конфигурацию под ваши нужды
Всем привет! Меня зовут Иван Левиков, я старший инженер по тестированию.
ВКонтакте развиваю и ускоряю автотесты, анализирую и улучшаю инфраструктуру, создаю новые решения.
При проектировании инфраструктуры для автотестов на Android приходится искать ответы на вопросы о том, где можно их запускать и где лучше это делать.
Рассмотрим самые популярные места для запуска автотестов:
• облачные решения;
• решения на физических девайсах.
Disclaimer. В статье рассмотрим конфигурацию, которую вы можете внедрить в свои проекты. При этом помните про несколько факторов:
• Результат может варьироваться, если используются разные серверные машины.
• Избыток ресурсов — это не всегда хорошо.
• Оптимизация железа должна идти бок о бок с оптимизацией тестов.