Мой баг дня (записки тестировщика)
243 subscribers
169 photos
23 videos
11 files
126 links
Precondition:
Repro steps:
1. ...
2. ...
3. ...
Expected: good
Actual: bad

Связь: @MyachinDA
Download Telegram
Написал статью о том, что в RuStore лежит настоящий, но неправильный Signal. И что RuStore имеет прям детскую болезнь: он не понимает архитектуру процессора, на котором работает.

Лёгкая версия статьи (в килобайтах, в смысле): https://text.tchncs.de/umnik/rustore-i-podderzhka-raznykh-arkhitektur

Она же, но на блогспоте: https://myachinqa.blogspot.com/2024/03/rustore.html
👍6
Вакансию мечты нашёл.

Требования:
- Релевантные для задач проекта
- Опыт в тестировании от 5 лет
Бесячий баг в собственной прошивке. Несколько раз в неделю нужно выходить из дома с пакетом с, допустим, сменной одеждой.
Всё приходит нормально, пока не добавляется пакет с мусором. В этом случае выхожу с мусором без сменной одежды или с одеждой, но без мусора.
👍6
Вроде в Тинькофф должны понимать, что внешние данные нужно валидировать.
На прод гонят описание с 429 ошибкой.
👍10
В RuStore отломили открытие экрана нужного приложения через стандартный вызов схемой market

adb shell am start -a android.intent.action.VIEW -d 'market://details?id=ru.dublgis.dgismobile'

Если в системе более одного маркета, нужно выбрать РуСтор. Он должен открыть экран нужного приложения (2GIS), но не сделает этого.
👍7
https://developer.android.com/reference/android/app/admin/DevicePolicyManager потеряли закрывающий </i>. Так что до самого Summary всё написано курсивом
👍2
Не баг. Пока пишу тест, увидел, что есть приложение с таким вот именем пакета. Представлено и в Gplay, и в F-droid: https://github.com/Semper-Viventem/MetaRadar
👍5
Попросил cloud.ru (часть Сбера, как я понимаю) удалить мою учётку. ТП ответили, что удалили, всё в порядке. Это было месяца два назад или больше.
Сейчас проверяю. Регистрируюсь на телефон - говорят, что такой есть. Восстанавливаю пароль по телефону - на моё мыло (то есть оно тоже известно) падает ссылка для установки нового пароля. Прохожу по ссылке - 403: пользователь заблокирован.

Сбер не понимает разницы между удалить учётную запись и заблокировать её.
👍9
О тестировании.pdf
5.6 MB
В нашей внутренней wiki для нашей команды написал статью о тестировании, тестировщиках, о взаимодействии, терминологии, приоритизации багов . В общем, единый документ для создания одинаковых пониманий разработчиков, менеджеров и тестировщиков

Сегодня получил разрешение на его публикацию, так что вот, прикладываю. 6 страниц в PDF.

Мне будет интересно, с чем согласны, с чем не согласны, а где я вообще нафиг пошёл.

Разумеется, есть некоторая специфика, связанная с именно нашими проектами и нашим багтрекером, но прям таких вещей мало. Старался писать более-менее универсально
👍15
Рассказал HRше, что их в IT называют "хрюши". Она не знала. Расскажет ли она теперь остальным?
👍6
https://chromewebstore.google.com/detail/%D0%BE%D0%B1%D0%BE%D0%B9%D1%82%D0%B8-%D0%B7%D0%B0%D0%BC%D0%B5%D0%B4%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-youtube/khpkadmigccakicajloljbckokgnknkp надеюсь я ошибаюсь, но… Уверен, сейчас как грибы полезут мошеннические расширения. "Активация через Телегу" для меня выглядит как способ эту самую Телегу увести.

Проверять не буду и вам не советую.
👍4
Если вы пишите автотесты под Android и это не (или не только) Espresso, вам нужен инструмент для разбора разметки экрана и получения информации о вьюхах.

Когда-то давно Google предлагал утилиту на java uiautomatorviewer, но ей пришёл кирдык.

Возможно, вы уже нашли для себя замену. А если нет, то можно уже и не искать особо. Выложил в публичный доступ утилиту, которую написал для себя. Точнее, её исходники: https://gitea.myachin.xyz/umnik/android-ui-viewer
👍6
Сегодня, в 19:00 всей Францией запускаем бумажные самолётики из окон!
🤡3👍1
Почему я никогда не использую для написания автотестов не нативные фреймворки платформы.

Вот статья на Хабре от 2013 года: https://habr.com/ru/companies/intel/articles/205864/

Комментарии:
- чем это лучше роботиума?
- Работал и работаю с calabash. Из плюсов — Ruby и кросс-платформенность. Cucumber и BDD тоже можно отнести к плюсам. Тесная интеграция с Xamarin, в будущем calabash станет плагином к Frank. Ну и конечно же активное сообщество, частые коммиты и релизы.

Сейчас это смешно читать, а тогда кто-то всерьёз считал, что использовать левые фреймворки - это хорошо и правильно.
https://issuetracker.google.com/issues/127100532 с 2019 года Гугл просят добавить поддержку JUnit5. Если считаете, что +1 играет роль, то влепите. Ну невозможно же уже. Как минимум параметризация тестов в JUnit5 намного лучше. В 4 она прям совсем базовая.
Есть у меня читатели из ВК? У вас возраст на банере и возраст в описании отличаются. 18+ или 16+ в итоге?
Исправите, пока РКН не пришёл.
Когда-то давно, когда я только вкатывался в автоматизацию и в программирование в целом, у меня очень часто что-то не работало, хотя мне казалось, что код написан правильно. Нет, всякий раз это были мои ошибки, а не библиотек или чего-то ещё.

Прошло несколько лет. Каждый, сука, раз, это ошибки библиотек теперь, а не мои.

Я не могу запустить тест из командной строки правильным способом: adb shell am instrument -w -e class xyz.myachin.letsappsbeupdated.rustore.tests.RuStoreDescriptionTest#whatsNewTestRuStore xyz.myachin.letsappsbeupdated.test/androidx.test.runner.AndroidJUnitRunner

Получаю, что OK, 0 тестов выполнено. Хотя раньше всё работало.

А проблема в том, что в Google сломали такой способ запуска ПАРАМЕТРИЗИРОВАННЫХ тестов. Не параметризированные работают по-прежнему.

https://issuetracker.google.com/issues/321752267

Судя по приоритетам и важности, исправления будем ждать долго.
👍6
Последние 2 пункта
👍13
Если вы ловите исключение java.lang.IllegalAccessError: class com.google.protobuf.GeneratedMessageV3 tried to access method 'boolean com.google.protobuf.CodedInputStream.shouldDiscardUnknownFields()' (com.google.protobuf.GeneratedMessageV3 is in unnamed module of loader java.net.URLClassLoader @4cd1c1dc; com.google.protobuf.CodedInputStream is in unnamed module of loader 'app')

то это не вы дурак. Это опять всё сломали в Андирод 15. Причём ещё в дев превью.

https://github.com/protocolbuffers/protobuf/issues/19371
👍2