пятница, 13 декабря 2019 г.

Мнемоники: ЛОЗА, ТНТ, НДС, ТМИН и БАГОЛОВ

На моем курсе «Школа для начинающих тестировщиков» есть творческое задание — придумать свою мнемонику по тестированию! Разумеется, оно необязательное ツ

Посмотрите, что придумали ребята на этот раз!

Ксения: Лоза 


Нашел баг? Не торопись вносить в баг-трекер, будь мудр, как Юрий ЛОЗА:


Л — Локализуй (где, при каких условиях появляется баг?)
О — Обоснуй (почему ты считаешь, что это баг, а не фича?)
З — Зафиксируй шаги (последовательность действий пользователя, приводящая к багу)
А — Аттач приветствуется (приложи дополнительную информацию - скрины с ошибкой, ссылки на спецификацию с ожидаемым результатом и т.д.)

вторник, 10 декабря 2019 г.

Мои 12 недель в году. Часть 11


Первый опытвторойтретийчетвертыйпятыйшестойседьмойвосьмойдевятый, десятый


Что это за техника


Вы собираетесь с друзьями в группу и ставите себе цели на 12 недель (3 месяца). Это могут быть как рабочие, так и личные задачи. Такие, которые вы вроде как хотите сделать, но вечно откладываете, так как «некогда, потом, щас, вот только мелочевку разгребу и тот пожарчик потушу».

Настало время заняться тем, чем действительно хочется!  Отталкиваясь от глобальных целей, составляете план на неделю. И раз в неделю встречаетесь с группой и обсуждаете, сколько успели, сколько нет. Какой план на следующую неделю. В общем, обычный митинг, только раз в неделю.

Я комбинирую с магией утра.



Результаты кратко


У меня был ДР, юбилей — 30 лет исполнилось ♡\( ̄▽ ̄)/♡

Это было на 8-ой неделе цикла, потом мы еще отмечали — отличный повод для встречи с друзьями! Как в комиксе одной художницы: «Я родила до 30!», челендж выполнен )))

Владик умнеет на глазах! Он помогает папе пылесосить, а маме протирать стол. Сам относит мусор в урну, раскладывает вещи на свои места (это заслуга папы), читает книжки... А еще он дорос до дверного замка и запер дверь, когда я выкидывала мусор. А дальше скорая, МЧС и всё такое... В общем, весело живется!

При этом я очень много успела за цикл. Мои основные цели были:

— книга: дописать главу 12
— книга: начать главу 13
— курсы: хотя бы 5 кусочков из лекции 4
— статья на ХАБР!

И я все это сделала. Выполнила и даже перевыполнила план! Но об этом в подробных результатах, а пока пройдемся кратенько. Итак, что я успела за 11-ый цикл:
  1. Дописала главу 12 книги!
  2. Написала главу 13 книги! 
  3. Написала главу 14 книги! ♡\( ̄▽ ̄)/♡
  4. И даже начала писать главу 15!!
  5. Заходы к книге — почти каждый день, очень стабильно, я довольна! 
  6. Посты из книги, пополняя бесплатный онлайн-вариант —  11 штук \(〇_o)/
  7. Новая книга — методичка по оформлению багов. В процессе))
  8. Закончила обрабатывать урок «как написать тесты на ответ» для курса по автоматизации в Postman. А это 9 из 14 кусочков и 4,5ч итогового видео! \(〇_o)/
  9. Записала новый урок, шестой.
  10. Начала его обрабатывать!
  11. Улучшалки по текущим курсам — они небольшие, но набирается прилично! 
    1. Улучшалки по ШНАТ — 15 штук
    2. Рест — 4 штуки
    3. Локализация — 1 штука
  12. Пополняю раздел «работы студентов» — 9 штук
  13. Инструменты 12 недель — продолжаю вести файлик DONE, это все еще очень круто
  14. Выложила полезные видосики на свой youtube-канал — 4 штуки
  15. Testbase — 1 улучшалка ¯\_(ツ)_/¯
  16. Прочитала 5 книг  
  17. Находила время на всякие "найс ту ду" 
  18. Съездила пару раз в 4ДХ
  19. Сходила и в местный кинотеатр
  20. Встречались с друзьями, ко мне в гости заезжали в основном
  21. Ездили в VR — на 3 квеста!
  22. Ездили в другой VR — на 4 квеста!
  23. Заезжала на работу, играли в настолки в кои то веки)))
  24. Ездила в налоговую, получила доступ в личный кабинет (наконец-то, год спустя)
  25. Нашла адвоката, подала в суд на «Зебру» спортзал
  26. Расширила кольцо свадебное
  27. Ездили на ледовое шоу «Навка на льду»
  28. Сходили на SPA ♡\( ̄▽ ̄)/♡
  29. Купила себе новый аэрогриль))
  30. Новогодняя фотосессия !

Результаты подробнее

среда, 4 декабря 2019 г.

Тест-кейсы для приложения Fatsecret

Я периодически публикую в конфлюенсе в разделе «Работы студентов» примеры домашних заданий студентов своей школы для тестировщиков.

Сегодня у меня очень неплохая подборка тест-кейсов от одной из групп. Тесты по приложению Fatsecret.

Ссылка на тесты (там их 5 штук). В блог вынесу только парочку:

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

Меняем привычки. М.Дж. Райан


Ссылка на OZON

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

В первую очередь восхитило оформление. В книге всего 81 совет. Слева цитата, которую надо говорить себе, справа небольшое описание: откуда цитата взялась, как она поменяла чью-то жизнь...


Плюс куча разделов, а это еще 2 практически пустые страницы. Классное оформление! Кто-то может сказать, что проще было написать 1-2 статьи, чем книгу. Но книгу можно продать, она повышает авторитет (а автор занимается консультированием, ей это на руку!). В общем, книга небольшая. Но мне понравилось оформление, и читается быстро.

Фишка в чем? Читаешь книгу, выбираешь фразу, которая может помочь тебе в жизни. Например, улучшить отношения в семье, смириться с неудачами на выбранном пути, подавлять вспышки агрессии... И начинаешь эту фразу повторять. Потому что многократное повторение позволяет ей закрепиться в мозгу и исправить поведение.

вторник, 19 ноября 2019 г.

Привычка достигать. Бернард Рос


Ссылка на OZON

Честно говоря, меня книга не впечатлила. Может, потому что есть в чем сравнивать. И есть куча более вдохновляющих книг. Хотя, казалось бы, один из первоисточников дизайн-мышления, вот это всё.

На самом деле, дизайн-мышление в принципе не моё. Я не настолько творческий человек. Читаю, как они в своем институте дают задания, чтобы вырабатывался творческий потенциал. Ну типа «вот тебе 2 коробка спичек, ты должен что-то из них смастерить и продать за 5 баксов», или «найди 33 способа использовать эту фигню», или что-то такое....

Кого-то такое прям вдохновляет, я в фб иногда читаю восторженные отзывы на подобные методы. Но люди же все разные. Я не творческий человек, это вообще не моё. Может, потому и книга не сильно вдохновила.

Ну вот, например, упражнение. Сказать «это для меня не важно» о том, что реально важно. Легко? А теперь попробуйте сказать «моя дочь для меня не важна». А ведь Рос уговорил свою коллегу на такое упражнение, и у той даже отношения с дочкой потом лучше стали!

Вы уж простите, но я не собираюсь говорить самой себе, что близкие люди мне не важны. Как минимум потому, что в глубине души я знаю, что это ложь и вообще бред. Язык не повернется так сказать! Нафиг такие упражнения...

Хотя пара интересных мыслей тоже есть.

суббота, 16 ноября 2019 г.

Как описывать навыки в резюме

Итак, вы составляете резюме на должность тестировщика. Дайте угадаю, что там можно увидеть:

  • базовые знания sql
  • базовые знания тест-дизайна
  • ...
А что значит «базовые знания»? Для вас это «прочитал 2 статьи», а я буду ожидать join трех таблиц... Будет печально, если это выяснится уже на собеседовании. Поэтому не пишите непонятных фраз. При описании навыков используйте правило:




НЕ НАДО ПИСАТЬ «БАЗОВЫЕ ЗНАНИЯ»!

Это говорит о реальных навыках «ничего». Пишите самое сложное, что умеете делать.





Пишите о том, что реально умеете делать. Если вы прочитали 1 статью о том, как в JIRA можно создать проект и настроить его под себя — это не значит, что у вас есть навык администрирования джиры!

Посмотрел бесплатное видео про создание первого автотеста и просто повторил за тренером? Это не значит, что вы умеете писать автотесты. Подключился к линукс-машине через WinSCP? Это не значит, что есть базовые знания Linux.


Конечно, написать в резюме можно все, что угодно. И вы даже можете пройти отсев по резюме — работодатель увидит список того, что вы умеете, впечатлится и позовет на собеседование! Но достаточно будет 5 минут, чтобы понять реальный уровень ваших знаний.

Собеседую синьор-тестировщика. У него в резюме 3+ года нагрузочного тестирования. Ух ты! А мы на тот момент нагрузкой еще не занимались. Круто же, интересно. Начинаю уточнять: 
— А тут написано, что 3 года нагрузочное проводите...
— Ну да.
— Расскажите, пожалуйста, как это происходит?
— Ну... (замялся). Там уже все написано было до меня. Так что я просто нажимал «Запустить» и смотрел на графики.



Вот сразу и виден реальный уровень. А как гордо звучит резюме! Несколько лет нагрузочного тестирования, это ж мега-спец! А на деле такое тестирование может и джун проводить... 
При этом, если бы был реальный интерес у человека, он мог бы хотя бы разобраться, как работает тот скрипт, который он запускает. Как его можно написать, что именно он делает. Ведь если скрипт написан давно, его наверняка можно улучшить! Было бы желание...

Теперь главный вопрос — а как написать то? Вот если книгу по sql прочитал, это уже «базовые знания sql»? Или еще нет? А если 3 упражнения на sql-ex  выполнил? А если первый join смастрячил?

четверг, 7 ноября 2019 г.

Опиши и приложи (правила оформления бага)

На что обращаться внимание, когда вы пишете шаги бага? Есть несколько разных правил, одно из которых — «опиши и приложи». Не забывайте про скриншоты и примеры!

Скриншоты


Почему в моей книге столько картинок? Потому что они привлекают внимание! Это первое, за что цепляется взгляд.

Хорошо оформленный баг — это когда разработчик прочитал название, посмотрел на скриншот и все. Ему больше ничего не нужно, он понял, где ошибка. А шаги... Шаги остаются тестировщику для перепроверки задачи.




Примеры


Пример — это не только какое-то значение, которые мы вводим в строку: «Например, 6,9»

среда, 30 октября 2019 г.

Классы эквивалентности для населенных пунктов в адресах

У студентов в моей школе для начинающих тестировщиков есть задание — написать чек-лист на функционал своего проекта.

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

Моя коллега Ольга Алифанова привела такой пример:

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


Какие можно выделить классы эквивалентности для адресов? Как разделить населенные пункты:

  • по типу: столица, город, ПГТ, деревня...
  • по названию: в одно слово, в два через пробел, в два через дефис, в три и более слов (Комсомольск-на-Амуре), с цифрами (все закрытые города, скажем, имеют цифру в названии), ...
  • по населению: Москва, Петербург, миллионник/не миллионник, больше 12к жителей, исключение (Иннополис - десять жителей, но город)
  • по административному положению: федерального значения (Мск и Спб уже были, значит, Севастополь остался), областной центр (Екат), не областной центр (Выборг)
  • по степени закрытости: обычный (Псков), приграничная зона (Ивангород), совсем закрытый (Красноярск-26)
  • по истории названия: переименовывались, не переименовывались, переименовывались неоднократно (Петроград-Ленинград-Петербург)

Дальше у меня идеи кончились, ну, кроме длины, поэтому я схожу в гугл. Но обратите внимание: в первую очередь мы думаем о строке не как о строке (символы русские, английские, смешал, длину проверил), а как о конкретном поле. И выделяем классы именно для этого поля. Не для абстрактного string.

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

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

Как ни странно, студенты очень хвалят этот пример и говорят за него огромное спасибо. И идут переделывать свои чек-листы... То есть примера с именами явно недостаточно. Тогда вынесу этот пример в блог и книгу! Публикуется с согласия автора :)

См также:

Классы эквивалентности для имен — тоже идеи, но про имена

Классы эквивалентности: будни Золушки — подробнее о классах эквивалентности
Ивану кредит не давать! — история о баге, который пропускается, когда тесты абстрактные

PS — это выдержка из моей книги для начинающих тестировщиков, написана в помощь студентам моей школы для тестировщиков

суббота, 26 октября 2019 г.

Бизнес-процессы: как их описать, отладить и внедрить. Михаил Рыбаков


Ссылка на OZON

Прекрасная иллюстрация на тему того, что «если у тебя есть книжка — ты крут». У Рыбакова есть компания, которая занимает отладкой бизнес-процессов. Они консультанты. И вот на протяжении всей книги есть отсылки на то, что «пригласите нас — и сделаем все быстрее!».

И при этом реклама работает! Потому что в целом книга написана довольно интересно, поэтому когда встречаешь ненавязчивую рекламу, то к середине книги уже думаешь «А было бы неплохо его пригласить, посмотреть что как...».

Хотя вот дочитала и осадочек остался. В начале книги было краткое содержание и вроде как в книге целая глава в конце посвящена тому, как работает компания автора. Ожидаешь, что реклама будет именно там, кто хочет, почитает, а остальные дойдут до этой главы и все. Но нет, в процессе книги тоже скользит то там, то тут. С другой стороны, я читала книги, где реклама была ппц навязчивой, тут негатива не осталось.

***

А теперь по самой книге. Когда компания маленькая, она работает на энтузиазме основателя, иногда на энтузиазме нескольких «первых» людей. Но когда компания растет, часто начинается хаос. Как же так? Раньше ведь все так здорово работало, наняли еще людей, чтобы успевать больше, но что-то пошло не так...

Вообще очень знакомо это все, конечно. Когда у тебя 3 проекте, и когда 6 — разница несильная. А когда их становится 15, 20... Старые процессы перестают работать, а вот как внедрить новые, и какие? Непонятно!

Автор рассказывает, как это обычно делается:
  1. Описываем бизнес-процессы «как есть сейчас» — это важно сделать, хотя некоторые и считают бюрократией. Но не менее важно в эту самую бюрократию не скатиться!
  2. Выделяем самые важные бизнесс-процессы. 
  3. Назначаем РП — руководителя процесса
  4. Расписываем процессы чуть подробнее, обсуждаем в командой «чо-как». Рисуя «как есть сейчас», сразу накидываем идеи на улучшение.
  5. Потихоньку внедряем.
Важно именно в терминах процессах говорить, когда процесс законченный. То есть от потребности клиента до ее удовлетворения. И этот процесс сквозной, он идет через разные департаменты — большинство проблем находится на стыках, и их некому решать, когда каждый руководитель улучшает только свой отдел. Он лучше спихнет вину на соседа. 

Поэтому назначается не руководитель одного отдела, а руководитель всего процесса, сквозного. Только так можно с кого-то спросить за качество и это самое качество получить. 

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

Как именно нужно описывать процессы, выбирать роли и прочее? Это уже подробнее в книге) Плюсы книги — это книга-тренинг, то есть читаешь и сразу выполняешь «домашнее задание» на закрепление материала. Иначе читать бесполезно, хотя я попробовала, мне любопытно было))

Думаю, что книга полезная для собственников бизнеса. И автор смог продать идею бизнес-лагеря. Мне теперь кажется, что туда было бы полезно съездить )))


PS - Добавила книгу в общий список прочитанных мною книг.

четверг, 24 октября 2019 г.

Панбагон. Бесплатный донат в игрушке

Есть такая модель в игрушках на телефоне и не только — сама игра бесплатная, но есть дополнительный плюшки за реальные деньги. Хочешь быстрее прокачаться или быть чем-то круче? Плати. Это называется «донат» — оплата реальными деньгами плюшки в игре.

В одной из игрушек в чатике увидела такой кейс:


Прикольно. Тестировщики, берите на заметку: если есть донат, проверить перевыпуск карточки, когда:

  • Номер тот же
  • Владелец тот же
  • Срок действия другой
Если разработчик проверяет только номер и владельца, будет ой.

А если вы не тестировщик и надумали обмануть игру, не советую. Разработчики вас все равно обнаружат и забанят потом. Если обманули случайно, рекомендую написать им и сообщить о баге.

PS — добавила пост в общую копилку багов. 

среда, 23 октября 2019 г.

Что такое HTTP за 5 минут (видео)


Ольга Ермолаева записала прикольное коротенькое видео о том, что же такое HTTP. Рекомендую к просмотру Smile :) 

Оля записала видео в рамках домашнего задания яндекс-практикума для тренеров. Вот еще одно объяснение от другой студентки, всего за 1 минуту!

PS — добавила Олино объяснение на Testbase, в навык тестирования Web-приложений

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

Классы эквивалентности для имен


Какие могут быть имена:
  • свое, короткое, длинное, составное, на английском, транслитерация, регистр
  • полное, краткое, уменьшительное: Ольга, Оля, Оленька
  • буквы, которые одинаково выглядят на русском и на английском: Oльга и Ольга
  • имя, с которого может начинаться фамилия и/или отчество: Александр(ов)
  • или не может: Михаил никак не может начинать отчество, потому что в русском языке И в Й перейдет
  • имена, у которых возможны разные варианты написания: Наталья/Наталия, Алена/Алёна
  • имя, которое бывает и полной формой, и краткой одновременно (Лана, Ася). Может быть и Лана, и Ася по паспорту, а могут быть Светлана и Анастасия
  • имя, которое в мужском и женском варианте отличается только окончанием, особенно интересно в подсказках — оба варианта система покажет или только один? (Александр/Александра, Владлен/Владлена)
Нужно ли каждый раз проводить все эти тесты? Конечно, нет! Все зависит от проекта, доступа к коду, времени, отведенного на тестирование...

вторник, 15 октября 2019 г.

Ивану кредит не давать!

Пару лет назад мой коллега Иван зашел на сайт банка Х и попробовал оставить заявку на кредит. Ввел ФИО и получил отлуп — «Имя «Иван» вводить нельзя».


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

Конечно, даже Иванов Иван Иванович может встретиться, но таких очень мало и с ними проще работать в ручном режиме. А от вымышленных данных защититься.

Проблема в том, что нужно было запретить связку: имя Иван и фамилия Иванов и отчество Иванович. То есть условие в коде записать через AND.

А разработчики сделали через OR: если фамилия Иванов ИЛИ имя Иван ИЛИ отчество Иванович — получай ошибку!

Так что увы, все Ивановы, и даже просто Иваны. Таких имен нет, выберите другое!

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

Это реальная история, не вымышленная. Я писала о ней в статье «Классы эквивалентности: будни Золушки» — как пример того, что вроде выделил классы эквивалентности, а баг пропустил!

среда, 9 октября 2019 г.

Примеры S&T и карты процессов и шагов

В нашей школе для начинающих есть задание на то, чтобы нарисовать state transition diagramm по своему проекту. А если есть желание, то сделать что-то свое.

См также:
Карты и диаграммы, которые используются в тестировании — подробнее о том, что такое S&T и какие еще есть варианты

Я пополнила коллекцию хороших работ от студентов парой примеров:


1. State Transition для учебного модуля



Автор — Юлия.
Ссылка в вики


пятница, 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 до тех пор, пока не останется одно падающее значение.


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


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


среда, 18 сентября 2019 г.

Поздравляем Ольгу с новой работой!

Давненько у нас не было таких хороших новостей — одна из выпускниц школы, Оля, устроилась на работу:


Попросили рассказать подробнее:

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

Я попала в самую сложную для меня лично сферу — мобильное тестирование. Сложную, т.к. именно это направление изучено мною минимально, ну и я в принципе не из "мобильного поколения", пользуюсь телефоном, чтобы звонить, что называется )))

Город - Санкт-Петербург, компания ХХХ (крупный телеком)

Мне повезло, т.к. в вакансии у них стоял требуемый опыт 1-3 года, но меня порекомендовали )) Сработала сила нашего чатика выпускников: сокурсница по ШНАТу (Марина, привет :)!) увидела, что я всем миром обновляю резюме, и отправила его члену команды.

пятница, 13 сентября 2019 г.

Мнемоники про постановку улучшений — СОПРАНО, ВРИ ВСЕМ и ЛУБОФФ

На моем курсе «Школа для начинающих тестировщиков» есть творческое задание — придумать свою мнемонику по тестированию! Разумеется, оно необязательное ツ

Посмотрите, что придумала Галина про составление улучшения:




Шаблон улучшения (сначала зачем, потом как) — СОПРАНО

Сначала
Обоснуй,
Почему
Реальность недостаточно хороша, потом
Альтернативу
Наглядно
Опиши.

четверг, 12 сентября 2019 г.

Мои 12 недель в году. Часть 10


Первый опытвторойтретийчетвертыйпятыйшестойседьмойвосьмой, девятый



Что это за техника


Вы собираетесь с друзьями в группу и ставите себе цели на 12 недель (3 месяца). Это могут быть как рабочие, так и личные задачи. Такие, которые вы вроде как хотите сделать, но вечно откладываете, так как «некогда, потом, щас, вот только мелочевку разгребу и тот пожарчик потушу».

Настало время заняться тем, чем действительно хочется!  Отталкиваясь от глобальных целей, составляете план на неделю. И раз в неделю встречаетесь с группой и обсуждаете, сколько успели, сколько нет. Какой план на следующую неделю. В общем, обычный митинг, только раз в неделю.

Я комбинирую с магией утра.



Результаты кратко



Оооо, нашему сыну исполнился годик! И за последние 1,5 месяца изменилось столько всего! Он научился ходить, стал спать дома вместо улицы, засыпает теперь самостоятельно, знает кучу всего! Еще от груди отказались, воть.

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

А сейчас подрасслабилась. Пока была в больнице, сына стал папа укладывать. Раньше это делала я и освобождалась около 22.30 — 23.00. Работать к этому времени сил уже не оставалось. А сейчас папа укладывает, а я вот стала с бабушкой смотреть кино в 21.00 по каналу «Россия», в телефончик играться параллельно... 

И ведь понимаю, что раньше свобода в 10 вечера была бы счастьем и возможностью сделать кучу дел! Но... Не хочется... Не хочется и все тут! Хочется в телефончик позалипать, могу я поиграть вообще хоть немножко??? 

В общем, то болезни, то лень, то игрушки... Успела не так уж и много. Но к следующему циклу соберусь. Буду проводить вечера то продуктивно, то играючись. Чтобы и работать, и отдыхать. Главное, что сын позволяет поработать. И папа тоже, конечно же)) 

Ну что, давайте посмотрим, что я успела:
  1. Написала главу 10 книги! 
  2. Написала главу 11 книги! ♡\( ̄▽ ̄)/♡
  3. И даже начала писать главу 12!!
  4. Заходы к книге — почти каждый день, очень стабильно, я довольна! 
  5. Посты из книги, пополняя бесплатный онлайн-вариант — 6 штук
  6. От меня ушло 2 тренера :( 
  7. Нашли и обучили еще 2 тренеров
  8. Обработала 3 урок для курса по автоматизации в Postman — как достать информацию из ответа (дерево JSON, XML)
  9. Обработала 5 из 14 кусочков урока «как написать тесты на ответ». И это ого-го прогресс!!
  10. Улучшалки по текущим курсам — они небольшие, но набирается прилично! 
  11. Улучшалки по ШНАТ — 10 штук
  12. Рест — 2 штуки
  13. Логи — 2 штуки
  14. Пополняю раздел «работы студентов» — 11 штук
  15. Инструменты 12 недель — продолжаю вести файлик DONE, это все еще очень круто
  16. Выложила полезные видосики на свой youtube-канал — 4 штуки
  17. Testbase — 7 улучшалок!
  18. Фолкс — 3 улучшалки
  19. Хабр — 2 поста!
  20. Прочитала 6 книг  
  21. А вот гуляю мало в последние месяца 1,5, потому что болезни (╯︵╰,)
  22. Находила время на всякие "найс ту ду" 
  23. Удалила «лишние» родинки
  24. Удалила 2 молочных зуба (((( Все таки пришлось...
  25. Съездила пару раз в 4ДХ
  26. Сходила и в местный кинотеатр
  27. Встречались с друзьями, ко мне в гости заезжали в основном
  28. Устроили шашлыки! Вместе с детьми, так что Влада с собой брали ))
  29. Ездила с Владом к друзьям на дачу на несколько дней, тоже отдых!
  30. Купила себе зеленые туфли ))))
  31. Фотосессия !

Результаты подробнее


пятница, 6 сентября 2019 г.

Мнемоника «Be active, don`t CS»

На моем курсе «Школа для начинающих тестировщиков» есть творческое задание — придумать свою мнемонику по тестированию! Разумеется, оно необязательное ツ

Сегодня у нас мнемоника от Ольги для клубного человека:


PS — добавила пост в копилку мнемоник моих студентов, где их еще больше! Читайте и вдохновляйтесь!

среда, 4 сентября 2019 г.

Панбагон. Поехала вертска в письме

Пришло письмо из Декатлона. Раньше я их просто удаляла, а тут решила таки отписаться, зачем мне эта реклама. Прокрутила вниз, и вижу это:

HTML-разметка вместо текста
Упс, что-то пошло не так! Где-то в HTML-разметке налажали и, вместо вывода слова мы видим всю разметку.

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

Нужна авторизация? Дай данные

Нашли ошибку, заводим задачу. Вроде все делаем по фен-шую... Ссылка на забагованное место есть, описание есть, но... Разработчик переходит по ссылке и видит окно авторизации. Что ему делать? Какие данные вводить? Это важно вообще, что будет за пользователь? И где взять тестовые данные?

Иногда тестировщики не пишут данные потому что «их и так все знают». Потому что есть пачка тестовых пользователей, на которых они гоняют все тесты. И они даже где-то описаны.

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



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

Что такое framework? Объяснение для новичков


Мне тут ютуб интересный видосик подсунул. Посмотрела, оценила, рекомендую! Автор — Сергей Немчинский. Разработчик, спикер конференций, владелец тренингового центра по разработке.

А вот объяснение «что такое framework» нужно не только разработчикам, но и  тестировщикам! Буквально пару дней назад в чатике моей школы для начинающих тестировщиков спрашивали, что это значит.


Так что же такое framework


Дальше идет мое объяснение, а не пересказ видео, ибо «зачем??»

Можно писать весь код программы самому с нуля. Да, конечно. А еще можно вырастить дерево, самому его спилить, обработать и смастерить табуретку. Или пойти в магазин и купить готовую. Что проще, лучше и быстрее?

А если вам нужен молоток? Это еще и металл обрабатывать надо! Можно самому, но получится намного хуже, чем если взять готовое. Ведь первый блин всегда комом. Что-то не учел и все, продукт не работает!

Также и в разработке. Если есть спрос на функционал — его проще написать один раз. Тщательно протестировать ОДИН РАЗ, а потом переиспользовать. Так появились библиотечки и фреймворки. Граница между ними бывает размытой, ведь и то, и другое — уже написанный вместо тебя код. А разница в чем:

  • Библиотека (Library) — Вызывается внутри кода. Бизнес-логика твоя, но какой-то функционал подключаешь из библиотечки (забор данных из файла, drag&drop...)
  • Фреймворк (Framework) — Сам вызывает твой код. То есть это уже готовый код, который ты лишь слегка расширяешь под свои нужды. 
Фреймворк вызывает твои кусочки кода, но они оформлены согласно спеццификации фреймворка. 



Чем фреймворк отличается от программы


  • Программа — конечный продукт
  • Фреймворк — можно и нужно расширять

А как расширяется тестовый фреймворк? Вот, например, в folks есть готовый тестовый фреймворк, который умеет читать эксельки, заполнять по ним БД и проводить по этой базе поиск.

Фреймворку нужно, чтобы в тесте была экселька, какие-то конкретные колонки в ней, xml-файл, где указано «что искать и что должно вернуться». Но сами эксельки пишет тестировщик. Вот вам и функция расширения.

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


PS — статья написана в помощь студентам моей школы для начинающих тестировщиков. В ней в том числе есть задание пощупать folks с готовым тестовым фреймворком, так что заходите, у нас весело!

пятница, 30 августа 2019 г.

Как я вижу себя через 5 лет

Миссия выполнима!

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

Но это не про меня. Я не хочу, чтобы жизнь останавливалась с рождением ребенка. Да, она меняется. И все же, если есть возможность, то нужно и работать, и отдыхать. Мне лично — нужно.

Так что я хочу записать, что я успею сделать за 5 лет. Как я вижу свое будущее. Ну а потом посмотрим и сравним! В конце концов, моему блогу уже 8 лет, так что есть шанс, что еще пяток продержится )))


Хотелки


Я напишу несколько книг. Даже не так — я выпущу несколько книг. Вообще я планирую написать книги на все свои курсы. Мне кажется, получится очень неплохо и будет выбор «книга / курсы». Это задача на несколько лет, потому что я еще первую книгу не дописала =))

среда, 28 августа 2019 г.

Тут можно потыкать TMS Test IT!

Test IT — TMS, Test Management Software. Система хранения тестов, проще говоря. Платная, но с кучей возможностей.

Если вы хотите с ней познакомиться, пощупать инструмент, не заморачиваясь с установкой — welcome на тестовую площадку!

Тестовая площадка


https://demo.testit.software/autologin

Логин и пароль не нужны!
Видео-обзор «как работать с инструментом» (вводная лекция).

вторник, 27 августа 2019 г.

Генератор текста нужной длины



https://generator-online.com/text/

Коллега прислала ссылочку, сказав так:

Я нашла отличный сайт для генерации текста нужной длины, именно текста, а не просто строки) Даже кнопка есть — скопировать в буфер обмена, ваще красавчики)

Посмотрела, и правда, классно! Есть несколько языков, но главное, что есть русский! Можно делать абзацы разной величины, надо просто указать min и max символов. Конечно, в русском ответе встречаются слова undefined, но все равно приятная штука!

См также:
Как сгенерить большую строку, инструменты — если неважно, будет текст или просто «аааааа» на миллион символов

PS — статья написана в помощь моим студентам, уже и на Testbase, в навыке подбора инструментов. Теперь не потеряется!

Как закрывать задачи

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

Эту статью я написала в рабочем конфлюенсе в 2013 году. И на момент написания этой статьи (2019 год) она все еще была актуальна.

Исходно чек-лист записала как напоминание, в том числе и себе. Потому что к задачам приходится возвращаться, в том числе людям, которые их НЕ проверяли. Например, во время регрессии надо хотя бы базово проверить функционал.

И вот ты открываешь задачу, листаешь до последнего комментария посмотреть, какая документация, что как работает, а там... Пусто. Или скромное «Все проверено, все ок». А документация где? Я же не в теме задачи, я хочу прочитать побольше!

Или если заказчик пишет, что у него что-то не работает, а ты хочешь проверить, покрыта ли ситуация автотестами. Идешь в задачу, а там нет ссылки на автотесты. Их вообще не писали? Или просто ссылку не дали? Приходится выяснять...



Так и появился чек-лист закрытия задачи:

суббота, 24 августа 2019 г.

Первое правило аттачей в багах — говорящее название!

Редкий баг обходится без дополнительных вложений. Обычно у нас есть название, описание + некий аттач. Аттач — от английского слова attachment, вложенный файл. Это может быть:

  • Скриншот (картинка экрана);
  • Видео;
  • Файл для воспроизведения;
  • Файл с доп информацией;
  • Файл с примером вызова SOAP-сообщения;
  • SQL-запросы;
  • Используемая утилита (+ комментарий с инструкцией).
  • ...

Люди обычно не заморачиваются, «на чем воспроизвел, то и приложу». Если это скриншот экрана, то как его система сохранила, с названием «Скриншот» или «20000809», так и аттачим.

Дайте файлу говорящее название, чтобы его проще было найти. Ведь обычно в задаче не один вложенный файл, а несколько. И тогда вы просто запутаетесь среди десятка одинаковых вложений «Рисунок», «Тест» или «111.jpg».



Протестируй треугольник! Онлайн-тренажер



Ссылка на тренажер

Хотите попрактиковаться в тест-дизайне? Заходите к Арсению Батырову на огонек! Он создал онлайн-тренажер для популярной на собеседованиях задачке про треугольник. И даже закопал туда парочку багов Wink ;)

Тут вы можете попрактиковаться самостоятельно, а потом получить готовый подробный ответ «как надо было тестировать».

Очень хорошая штука, особенно для новичков. Буквально несколько дней назад в чате моей школы для начинающих тестировщиков был такой вопрос:

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

Вообще не советую искать готовые ответы. Иначе вы блеснете на собеседовании на этой задаче, но с треском провалитесь на другой. Так что сначала попробуйте сами. И только потом читайте готовый ответ!!!

Но в любом случае штука классная, используйте на здоровье!

PS: Тренажер сохранен на Testbase в разделе «Test it — бесплатные тестовые площадки». Теперь не потеряется!

пятница, 23 августа 2019 г.

Панбагон. Простите, произошла хз какая ошибка в Камтазии!

Работаю в Camtasia для записи видео-уроков. Сижу себе сегодня, обрабатываю урок. И что-то камтазия начала тупить.

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


Текст — «Простите, произошла ошибка. Мы не можем выполнить эту операцию». Шта? В чем ошибка заключается то, а??

Исследование Evroopt по туру путеводителя



Ссылка на тур

Очень хороший пример применения тура по путеводителю от Анны. Самый типичный кейс в любом магазине — сделать заказ!

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

Вот именно такую инструкцию Анна и протестировала. На каждый шаг писала комментарий и делала скриншот в виде таблицы. Таблицу я в блог не перетащу, поэтому пройдемся текстом. Будем сравнивать точную формулировку из ТЗ с результатом.

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

1. ТЗ

Зарегистрируйтесь на сайте, либо войдите в «Мой кабинет», если раньше уже регистрировались

Результат

Панбагон. Опечатка в рекламе «Великого Султана»

Играюсь на телефоне в игру «Слово». Там можно получить всякие ништяки за просмотр рекламы. Смотрю)) Часто показывают «Великий Султан». И вроде все хорошо, но в конце мелькает такой кадр:


Вроде экран как экран. Мелькает довольно быстро. Но так как мелькает часто, я заметила в нем опечатку. А вы? Wink ;)

Пока вы приглядываетесь внимательно, оформим баг по шаблону:

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

четверг, 22 августа 2019 г.

Панбагон. Опечатки в книге «Управление разработкой ПО»

Пока я читала книгу «Управление разработкой ПО», я постоянно натыкалась на опечатки. Сначала пропускала мимо глаз, потому что бывает. Потом стала фоткать. Я, в конце концов, тестировщик! А опечатки в книге — это баги в документации Smile :)

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

  • на случай, если оно потеряется, чтобы воспроизвести;
  • потому что это подходит под рубрику «панбагон»!

Обратите внимание на описание багов. Недостаточно сказать «у вас куча опечаток!» — а где они? Автору самому искать? Не все это будут делать. Надо указать страницу, место, куда смотреть и саму опечатку.

Я фоткала обычно страницу целиком, чтобы сразу понимать, где находится проблемное слово и быстро его найти + чтобы на фото был виден номер страницы. Ведь я читала часто на улице и записать возможности не было. Так что я просто фоткала, а потом уже подготовила этот отчет.

Также всегда стоит указать версию продукта. В данном случае — когда книга подписана в печать. Ну или номер ее издания, если он есть.

Ну а дальше само письмо:


среда, 21 августа 2019 г.

Управление разработкой ПО. Дэн Пилон, Расс Майлз


Ссылка на OZON

Это книга из горячо любимой мною серии Head First O`Really. За это и купила! Хотя, честно говоря, технические книги (изучаем java, sql, js) мне понравились больше. Там прямо ВАУ-эффект был! Даже в sql, который я уже знала перед чтением.

Сначала я вообще подумала, что книжка так себе. Прям капитан очевидность идет, да еще и куча опечаток в книге — сначала я на них просто натыкалась, потом стала фоткать, чтобы отправить в издательство.

Но, продолжив чтение, я пересмотрела свои взгляды. Вы знаете, а для новичка книга очень даже неплоха! Да, примеры очень упрощены, из серии «добавить функцию загрузки фоточки — 15 дней». Это как-то ну прямо очень странно в наши дни читать Smile :)  Но зато сам принцип понятен! Понятно, почему задачи продалбываются, почему реальная оценка ≠ запланированной, почему требования вечно меняются...

Что такое API



Ссылка на Хабр 
(исходно опубликовано там, зато тут с видео! А там с содержанием)

Слово «API» мелькает в вакансиях даже для начинающих тестировщиков. То REST API, то SOAP API, то просто API. Что же это за зверь такой? Давайте разбираться!

— А зачем это мне? Я вообще-то web тестирую! Вот если пойду в автоматизацию, тогда да… Ну, еще это в enterprise тестируют, я слышал…

А вот и нет! Про API полезно знать любому тестировщику. Потому что по нему системы взаимодействуют между собой. И это взаимодействие вы видите каждый день даже на самых простых и захудалых сайтах.

Любая оплата идет через API платежной системы. Купил билет в кино? Маечку в онлайн-магазине? Книжку? Как только жмешь «оплатить», сайт соединяет тебя с платежной системой.

Но даже если у вас нет интеграции с другими системами, у вас всё равно есть API! Потому что система внутри себя тоже общается по api. И пока фронт-разработчик усиленно пилит GUI (графический интерфейс), вы можете:
  • скучать в ожидании;
  • проверять логику работы по API
Конечно, я за второй вариант! Так что давайте разбираться, что же такое API.


Что такое API



API (Application programming interface) — это контракт, который предоставляет программа. «Ко мне можно обращаться так и так, я обязуюсь делать то и это».

Если переводить на русский, это было бы слово «договор». Договор между двумя сторонами, как договор на покупку машины:
  • мои обязанности — внести такую то сумму, 
  • обязанность продавца — дать машину.
Перевести можно, да. Но никто так не делает ¯\_(ツ)_/¯