en
Feedback
QAжется, работает!

QAжется, работает!

Open in Telegram

Канал про QA и тестирование от QA-инженеров из Dodo Engineering По вопросам пишите @evgenskt

Show more
525
Subscribers
No data24 hours
-17 days
+130 days

Data loading in progress...

Tags Cloud
No data
Any problems? Please refresh the page or contact our support manager.
Incoming and Outgoing Mentions
---
---
---
---
---
---
Attracting Subscribers
December '24
December '24
+16
in 0 channels
November '24
+33
in 0 channels
Get PRO
October '24
+9
in 0 channels
Get PRO
September '24
+5
in 1 channels
Get PRO
August '24
+11
in 0 channels
Get PRO
July '24
+24
in 0 channels
Get PRO
June '24
+13
in 0 channels
Get PRO
May '24
+8
in 0 channels
Get PRO
April '24
+34
in 0 channels
Get PRO
March '24
+52
in 1 channels
Get PRO
February '24
+22
in 0 channels
Get PRO
January '24
+31
in 0 channels
Get PRO
December '23
+26
in 1 channels
Get PRO
November '23
+373
in 1 channels
Date
Subscriber Growth
Mentions
Channels
21 December0
20 December0
19 December+1
18 December0
17 December+1
16 December+3
15 December+2
14 December0
13 December0
12 December+1
11 December0
10 December0
09 December0
08 December0
07 December0
06 December0
05 December0
04 December0
03 December0
02 December+1
01 December+7
Channel Posts
Сколько кнопок доступны для нажатия на скрине?
Anonymous voting

2
Вчера опять возил пиццу в пиццерии и тестировал приложение для курьеров. Нашел 14 багов и моментов которые можно улучшить. Вс
Вчера опять возил пиццу в пиццерии и тестировал приложение для курьеров. Нашел 14 багов и моментов которые можно улучшить. Все найденные бриллианты отнес команде разработки. Вот вам веселый скрин. Как думаете сколько кнопок на которые можно нажать изображены на картинке?
298
3
Уверен, в жизни каждого тестировщика рано или поздно случается встреча с автотестом, который ничего не тестирует или тестируе+1
Уверен, в жизни каждого тестировщика рано или поздно случается встреча с автотестом, который ничего не тестирует или тестирует не то что заявлено или вообще ничего не проверяет. Сегодняшняя история как раз об этом. Среди всех написанных у нас UI автотестов, есть автотесты и на интерфейс операторов Контактного Центра для приема и редактирования заказов. Один из тестов проверяет, что при постановке какого-либо ингредиента в стоп-лист - этот продукт в интерфейсе становится недоступен к заказу. Визуально это выглядит так, что в карточке продукта, который возможно заказать, вариации (размеры Маленькая, Средняя, Большая и т.д.) продукта имеет обычный вид и css класс product__label, а в карточке продукта, который невозможно заказать, в вариациях продукта меняется цвет текста и CSS класс становится label.stop. Есть Assert который проверяет что на странице должен быть хотя бы один элемент с классом label.stop. Если его нет на странице, то кидаем исключение. Разбирая этот тест, мы заметили, что в стоп-лист ставится ингредиент которого нет в составе продукта, который должен стать недоступным к заказу. А суть стоп-листа в том, что если вы ставите добавляете в него ингредиент, то невозможно заказать ни один продукт в составе которого есть этот ингредиент. Получается парадокс. В стоп-листе ингредиент которого нет в продукте и продукт доступен для заказа, но при этом тест который проверяет что продукт недоступен к заказу успешно проходит.🤣 Этот метод написан в 2018 году и в этой части не менялся😂 Если присмотреться повнимательней, то видно что Assert находится внутри foreach - который проходи по всей коллекции элементов label.stop и проверяет что вся коллекция больше 0. Это вообще странный цикл, но не в этом суть. А суть в том, что если коллекция пустая, а в нашем случае она очевидно пустая, потому что продукт не в стопе, то тест даже не заходит внутрь цикла и не выполняет проверка и завершается успехом. Как вам такое? 😏 Делитесь какие вы не работающие проверки находили в своих тестах, будем смеяться вместе.
444
4
Уверен, в жизни каждого тестировщика рано или поздно встречается автотест, который ничего не тестирует или тестирует не то чт
Уверен, в жизни каждого тестировщика рано или поздно встречается автотест, который ничего не тестирует или тестирует не то что заявлено или вообще ничего не проверяет. Сегодняшняя история как раз об этом. Среди всех написанных у нас UI автотестов, есть автотесты и на интерфейс операторов Контактного Центра для приема и редактирования заказов. Один из тестов проверяет, что при постановке какого-либо ингредиента в стоп-лист - этот продукт в интерфейсе становится невозможно заказать. Визуально это выглядит так, что в карточке продукта, который возможно заказать, вариации (размеры - Маленькая, Средняя, ТСредняя и т.д.) продукта имеют обычный вид и css класс product__label, а в карточке продукта, который невозможно заказать, в вариациях продукта меняется цвет текста и css класс становится label.stop. Есть Assert который проверяет что на странице должен быть хотя бы один элемент с классом label.stop. Если его нет на странице, то кидаем ошибку. Разбирая этот тест, мы заметили, что в стоп ставится ингредиент которого нет в составе продукта который должен стать недоступен к продаже. А суть стоп-листа в том, что если вы ставите ингредиент в стоп-лист, то невозможно заказать никакой продукт в составе которого есть этот ингредиент. Получается парадокс. В стоп-листе ингредиент которого нет в продукте и продукт доступен к заказу, но при этом тест который проверяет что продукт нельзя заказать успешно проходит.🤣 Этот метод написан и не изменялся с 2018 года.😂 Если присмотреться повнимательней, то видно что Assert находится внутри foreach - который проходи по всей коллекции элементов label.stop и в зависимости от размера коллекции проверяет что вся коллекция больше 0. Это вообще странный цикл, но не в этом суть. А суть в том, что если коллекция пустая, а в нашем случае она очевидно пустая, потому что продукт не в стопе, то тест даже не заходит внутрь цикла и не выполняет проверка и завершается успехом. Как вам такое? Делитесь какие вы не работающие проверки находили в своих тестах?
12
5
Вчера узнал о фиче в Хроме - command pallet. Через которую можно вызвать всякие команды. На самом деле много в каких инструме
Вчера узнал о фиче в Хроме - command pallet. Через которую можно вызвать всякие команды. На самом деле много в каких инструментах она есть, но что она есть в Хроме я не знал. Открываете консоль разработчика и на маке жмете cmd + shift + p (на винде скорее всего ctrl + shift + p) и вводите примерное или точное имя команды которая вам нужна - профит. Не нужно больше копаться в настройках, менюшках. Как я нашел ее - мне нужно было сделать скриншот всей страницы, когда вся страница на экран не помещается. В Андроиде есть такая фича - очень удобно. Я пошел искать как это сделать и нашел путь через командную панель. Сделать скриншот всей страницы - "Capture full size screenshot" если что. Запись в доках Chrome Dev Tools о командной панели опубликована в апреле 2019 года Давайте посмотрим кого больше, ставь 🤯 - если не знал про командную панель 🙄 - если знал про командную панель
470
6
Вопрос знатокам. Если летящему ребенку один год и 10 месяцев, какой счетчик увеличить? Тестировщикам Аэрофлота - привет👋 UPD
Вопрос знатокам. Если летящему ребенку один год и 10 месяцев, какой счетчик увеличить? Тестировщикам Аэрофлота - привет👋 UPD. В комментах рассказали, что если Младенцу нужно отдельное место, то увеличиваем счетчик Дети, а если не нужно - Младенцы 😬
479
7
Продолжение истории с Хабром В комментах под предыдущим постом, я написал что техподдержка ответила на отвали. Но был не прав, исправляюсь. Мы продолжили общение и возможно даже нашли проблему. Проблема связана с обложкой статьи. Я изначально прикрепил картинку не подходящего размера (и в пикселях и в МБ). Затем добавил картинку подходящую по требованиям, но она не перезаписалась на сервере и поэтому я не мог сохранить статью. Чтобы это выяснить - я отправлял им Google Doc в котором была статья из которого я копировал текст в их редактор. Лайк техподу Хабра за работу ❤️
446
8
Время очередной прохладной истории Публиковал на днях статью на Хабр (она выше) и столкнулся с проблемой. Для тех кто не знак+3
Время очередной прохладной истории Публиковал на днях статью на Хабр (она выше) и столкнулся с проблемой. Для тех кто не знаком с админкой Хабра, там два экрана. На первом WYSIWYG редактор в котором нужно оформить статью (скрин 1). Второй экран - набор обязательных и необязательных настроек (скрин 2). Закончил оформлять статью, заполнил все обязательные настройки и нажимаю "Сохранить в черновик" - получаю ошибку (скрин 3). Нажимаю "Опубликовать" - результат тот же самый, Publication form has error. Решил посмотреть что в консоли, там 422 ошибка Unprocessiable entity. Пошел проверять все поля - все в порядке (по моему мнению), на всякий случай убрал картинку-обложку - результат не изменился. Но я был бы не я, если бы не попробовал сломать систему. Заметил кнопку “Отложенная публикация”. Поставил отложенную публикацию на пару минут вперед и все, все данные сохраняются и через несколько минут статья опубликована. Получается не было у меня Unprocessiable entity в форме? Зарепортил баг, саппорт ответил "сам дурак", только в вежливой форме. Скорее всего, на отложенную публикацию срабатывает меньше проверок или какая-то из проверок игнорируется. Наши коллеги разрабатывают механику указания конкретных ошибок при проверке. Надеемся, что это поможет нам избавить пользователей от подобных проблем. Приносим извинения за доставленные неудобства. Мораль истории такова, ищите воркэраунды. Кто ищет воркэраунд, тот всегда найдет 🤔 Расскажите с какими вы сталкивались проблемами и какие воркэраунды находили?
460
9
На Хабре вышла моя статья совместно с ребятами из Kaiten, о том как мы организовываем доски в моей команде разработки, QA гильдии и как еще используем Kaiten для обеспечения качества. P.S. На одном из скринов есть пасхалка, кто найдет - пишите в комменты https://habr.com/en/companies/kaiten/articles/829010/
364
10
1000 и 1 способ изменить локализацию Одно из важных направлений тестирования - это тестирование локализаций. Если ваше прилож
1000 и 1 способ изменить локализацию Одно из важных направлений тестирования - это тестирование локализаций. Если ваше приложение поддерживает мультиязычность, необходимо поддерживать правильность отображения всех текстов. Вариантов для изменения языка в приложении может быть несколько: 1. Приложение использует основную локализацию из настроек устройства 2. В приложении реализован выбор языка, не зависящий от настроек устройства 3. Интеграция с Гугл-переводчиком 4. Может есть еще какие-то Как это работает у нас. Код мобильного приложения хранит в себе ключ-значения, к которым, в зависимости от выбранной локализации, присваиваются нужные строки. Эти строки хранятся непосредственно в коде приложения и обновляются с каждым новым релизом. Помимо статичных строк, приложения имеют данные получаемые с сервера, как быть с ними? В нашем приложении каждый запрос, отправляемый к серверу, содержит в параметрах список культур. Культуры - это те языки, которые пользователь указал в настройках своего устройства. Это может быть одна культура, а может быть несколько. Культуры отправляются в том приоритете, который указан в настройках устройства. Сервер, получая информацию о предпочитаемых языках устройства, проверяет, есть ли среди указанных поддерживаемые. Если есть, то ответ будет возвращен на нужном языке, если ни одна из указанных культур не поддерживается, то ответ возвращается на языке по умолчанию, для каждой страны он свой. Вот мы и подошли к нашему багу. Пользователь добавляет продукт в корзину, на его устройстве в качестве приоритетного выбран английский язык. Корзина ему отображается на английском, вроде бы все здорово. Но тут, пользователь решает удалить товар из корзины и вдруг часть интерфейса становится на русском языке. Что же случилось? Если внимательно посмотреть, то метод POST /api/v1/cart содержит в себе список культур, а вот метод DELETE /api/v1/cart уже его не отправляет, на что сервер добросовестно отвечает локализацией по умолчанию. Вот так можно непреднамернно добавить новый способ переключения языка в приложении 😏 А как вам больше нравится когда приложение тянет язык из настроек или когда вы сами можете менять язык в приложении?
392
11
Я когда-то писал статью о том, чем QA-инженер отличается от тестировщика. Сегодня на Хабре вышла статья "Перестань называть себя QA" на эту же тему, которая критикует одно из положений моей статьи (а именно то, что процессы QC является частью QA процессов). Мы спорили с одним из авторов этой статьи об этом на конференции, но ни к чему не пришли. Возможно продолжим на следующей конференции. В любом случае рекомендую статью к прочтению, мне кажется идентификация себя и своей работы достаточно важная тема.
438
12
Читал рассылку про которую писал ранее и в одном из последних писем, была новость о том, что Playwright впервые обогнал Cypre
Читал рассылку про которую писал ранее и в одном из последних писем, была новость о том, что Playwright впервые обогнал Cypress по npm-установкам. Занятная новость, на наших глазах происходит смена лидера в JS мире. Можно посмотреть статистику на сайте npmtrends.com Решил посмотреть как обстоят дела у этих инструментов в мире .NET. Нашел сайт nugettrends.com. Судя по данным с сайта, Selenium остается стандартом. Но видно, что использование Playwright тоже растет. Возможно в будущем мы увидим смену лидера, но определенно это не ближайшее будущее (если конечно не случится ничего экстраординарного)
431
13
Читал рассылку про которую писал ранее и в одном из последних писем, была новость о том, что Playwright впервые обогнал Cypress по npm-установкам. Но э
2
14
Найден самый милый баг 🐥 Спасибо Саше Романову за наводку💖
Найден самый милый баг 🐥 Спасибо Саше Романову за наводку💖
430
15
Найден самы милый баг 🐥 Спасибо Саше Романову за находку❤️
Найден самы милый баг 🐥 Спасибо Саше Романову за находку❤️
2
16
Сегодня началась конференция Saint TeamLead 2024, в рамках которой проходит наша конференция TechLead. Может получится через+9
Сегодня началась конференция Saint TeamLead 2024, в рамках которой проходит наша конференция TechLead. Может получится через фото хоть немного передать вайб конференции❤️
613
17
Настойчивость важное качество тестировщика Во многих статьях имеющих названия из разряда “5-7-12-26 качеств хорошего-успешного тестировщика” всегда встречается такое качество как Настойчивость. Но статьи статьями, а когда подмечаешь это в своей работе совсем другое дело. Я в очередной раз убедился в справедливости этого тезиса. Периодически случаются ситуации, когда система ведет себя не так как нужно. И разработчики говорят что это не баг или что у них не воспроизводится. Вероятно ты и сам не уверен в том что это баг. И вот тут кроется ловушка. Если не настоять на том, чтобы все таки посмотрели, воспроизвели, разобрались в проблеме, то можно пропустить баг. Не очень давно была ситуация. Во время тестирования Android приложения для печати этикеток поймал странное поведение (так и не смог достать конкретику из своей памяти), но больше воспроизвести не смог. Описал разработчику баг, он тоже не смог воспроизвести и предлагал забить. Но я проявил "качество хорошего тестировщика" и настоял на том, что стоит разобраться и поисследовать это поведение. В итоге на следующий день разработчик написал, что действительно нашел баг и починил его. Как вы считаете должен ли тестировщик быть настойчивым? Делитесь своими историями когда вы настояли и поймали баг или наоборот - не настояли на том что есть проблема и пропустили баг в прод.
540
18
Очередная история про баги в наших приложениях. Я уже рассказывал про наше мобильное Android приложение для печати этикеток в
Очередная история про баги в наших приложениях. Я уже рассказывал про наше мобильное Android приложение для печати этикеток в пиццерии. Приложение подключается к принтеру (принтер по bluetooth подключен к планшету, на котором установлено приложение) и кроме этого, мы еще подключаемся к Додо ИС, чтобы получать оттуда данные и задания на печать. На фронте приложения мы отображаем текущий статус подключения и к принтеру и к Додо ИС. Вчера я обнаружил, что при изменении ориентации экрана планшета, подключение к Додо ИС отваливается. Через несколько секунд оно восстанавливается, но сам факт такого поведения это конечно кек. А какие баги вы находили при смене ориентации? Делитесь в комментариях.
391
19
Всем привет. Я тут, я жив. Был в отпуске 3 недели, заканчивал ремонт и переезжал в новую квартиру. Теперь вспоминаю как работать и пытаюсь понять, что вообще происходит. Пока я вспоминаю, хочу поделить новостью, моя статья про то как прикрутить Allure, попала в шорт-лист конкурса Технотекст на Хабре. Я считаю это отличным поводом посмотреть на статьи которые вошли в шорт-лист, уверен вы сможете найти там много полезных и интересных статей. Я уже нашел полезное для себя - статью про тестирование безопасности десктопных приложений. Буду тестить наше новое десктопное приложение по этой статье.
472
20
Нам сегодня 13 лет! 🥳 22 апреля 2011 года в доме 85 по улице Первомайской города Сыктывкар открылась первая пиццерия «Додо пицца». В этот же день заработал модуль для приёма заказов по телефону. Позже он масштабировался до большой технологической платформы Dodo IS. Мы запустили сайт и приложение «Додо пиццы», разработали приложения «Дринкит» и «Кебстер!», начали использовать Kubernetes и перешли к SRE в инфраструктуре, развивали Dodo IS сами и дали возможность дополнять её всем, запустив собственный магазин приложений! 🤩 Сейчас наша система работает в 1095 точках в 22 странах, а каждый день Dodo IS обрабатывает 350 заказов в минуту. Мы уже прошли большой путь, но самое интересное, как обычно, впереди! Доедаем праздничный торт, принимаем поздравления и поздравляем коллег, и двигаемся дальше! А вот вам клевое видео о том, как прошли эти 13 лет! С днём рождения, Dodo Brands! ❤️ 🏠
531