пятница, 4 октября 2019 г.

Когда мнение миллионов нытиков — не баг


В чате нашей школы для новичков разворачивается обсуждение «что такое баг?». Ребята высказывают мнение:

— Если у миллионов возникает одна и та же ошибка, это баг!

Вроде правильно мыслят, но не на того напали ))) Моя коллега Ольга Алифанова много лет проработала в игровой индустрии. Она и гайды игрокам писала, и админом была, и ГМ, и тестировщиком. В том числе и в Варгейминге, где делают многомиллионные игры по количеству пользователей.

Оля рассказала такой пример, и разрешила опубликовать его в блоге и использовать в книге:

************************************************************************

— Нет, не обязательно баг.

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

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

Это не баг, и исправлено это не будет. Китайское законодательство запрещает использование нацсимволики в играх, и уж тем более японской.

понедельник, 30 сентября 2019 г.

Как грамотно вложить скриншот в задачу

В 90% случаев приложить скриншот в баг-репорт будет полезно.

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

Так что не ленитесь. Вам его сделать раз плюнуть (просто найдите удобный скриншотер для себя), а разработчики скажут спасибо. Да и вы сами, читая задачу, быстрее вспомните, о чем речь, если есть скриншот проблемы.

Ведь картинка — это первое, что притягивает взгляд. Сначала смотрим на нее, а потом уже читаем описание. Так мы читаем книги, так же мы читаем и баги. Хороший, «говорящий» скриншот — это плюсик вам в карму.

Чтобы сделать хороший скриншот, нужно:
  • Отметить место, «куда смотреть».
  • Обрезать все лишнее.



Любой нормальный скриншотер позволяет сделать стрелочку и добавить надпись. И, конечно же, обрезать изображение (функция «crop»). Не стесняйтесь пользоваться этим!

Qtranslate — подстрочный перевод для винды

Мне тут в чатике выпускников полезное подкинули:

Сердечно благодарю ещё раз того человека, который открыл для меня прогу подстрочного перевода!  
Мегаудобная вещь (требует интернета, но сейчас это не проблема). И сайтик перевести, и книжку почитать. Удобно выключается, когда не требуется. 
Прога называется Qtranslate.

Так навскидку гуглится как «free translator for Windows». Так что будет ли работать на маке и есть ли аналоги — не знаю.

Хотела сохранить себе название и ссылочку. Мало ли, пригодится еще! Думала оставить во втором блоге, но... Эту прогу советуют в чатике тестировщиков и многие говорят за нее «спасибо». И ведь тестировщику нужно знать английский, хотя бы на уровне «читаю со словарем».

Эта программа поможет в гуглении непонятных вопросов! Так что сохраню тут, вдруг она и вам поможет ¯\_(ツ)_/¯

воскресенье, 29 сентября 2019 г.

Моментальный оффер после курса по REST API



Обычно в чатике моих выпускников пишут о том, как получили работу после школы для новичков. Что логично. Но в этот раз у нас еще более интересная история — про новую работу для неновичка!

Анна рассказала о том, как ей помог курс по тестированию REST API:

**********************************************************************

Добавлю свои хеппи стори)

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

Но история на этом не заканчивается.  В компании меня поставили на проект,  где фронтенд опаздывал за бекендом и надо было тестировать API в чистом виде.  Все пошло удачно!  А для визаулиции мы сделали коллекции и показывали их заказчику.

На коллекциях мы не остановились и я дошла до рана интеграционных тестов в CI)

Спасибо, Оля!

**********************************************************************

Вот это я понимаю — курс пригодился! laugh :D

Заходите на огонек, у нас классно :)

Поздравляем Александра и Дарью с работой тестировщика!

Я уже тестировщик! А ты?


У нас пополнение success-story от выпускников моей школы! Сразу два недавних студента поделились радостными новостями:

Александр



Всем добрый день! Вчера получил оффер на свою первую работу тестировщиком. По рекомендации нашего тренера Ольги Алифановой меня пригласили на собеседование, которое я успешно прошёл и вчера мне прислали оффер) Хочу сказать большое спасибо ШНАТ и Ольге Назиной, а также отдельная благодарность нашему тренеру Ольге Алифановой. Её советы и пояснения по многим вопросам очень помогли как на курсе так и при прохождении собеседования. Комментарии в СДО я ещё надолго запомню)) В понедельник у меня первый рабочий день в новой для меня профессии и на новой работе — немного страшно, но в тоже время очень интересно.

понедельник, 23 сентября 2019 г.

Метод бисекционного деления в тестировании

Ссылка на Хабр

Иногда баги сами нас находят. Вот мы впихали большую строку данных — и система подвисла. Это она из-за 1 млн символов упала? Или ей какой-то конкретный не понравился?

Или файл загрузили в систему и он упал. Отчего? Из-за названия, расширения, данных внутри или размеров? Можно спихнуть локализацию на разработчика, пусть сам думает, что плохого в файле. Но часто можно найти причину и самому, а потом более точно описать проблему.

Если найти минимальные данные для воспроизведения, то:
  • Вы сэкономите время разработчику — ему не придется подключаться к тестовому стенду, самому грузить файл и дебажить
  • Менеджер сможет легко оценить приоритет задачи — это нужно срочно исправлять, или баг может подождать? Пока название «некоторые файлы падают, хз почему» — это сделать сложно...
  • Описание бага от понимания причины падения тоже только выиграет.
Как найти минимальные данные для воспроизведения бага? Если есть какие-то подсказки в логах, применяем их. Если подсказок нет, то самый оптимальный метод — метод бисекционного деления (также известный как метод «деления пополам» или «дихотомия»).


Описание метода



Метод применяется для поиска точного места падения:
  1. Взять падающую пачку данных.
  2. Разбить пополам.
  3. Проверить половину 1
    1. Если упало — значит, проблема там. Работаем дальше с ней.
    2. Если не упало → проверяем половину 2.
  4. Повторяем шаги 1-3 до тех пор, пока не останется одно падающее значение.


Метод позволяет довольно быстро локализовать проблему, особенно если это делается программно. Разработчики встраивают такие механизмы в обработку данных. А если не встраивают, то сами и страдают потом, когда к ним приходит тестировщик и говорит «Вот на этом файле падает, а точную причину я не смог найти».


Применение тестировщиками