среда, 23 сентября 2020 г.

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

Первый опытвторойтретий456789101112, 13


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

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

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

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


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


Я вижу. Я ВИЖУ! Я решилась на операцию по коррекции зрения)) Совершенно внезапно, под конец цикла. Поэтому цикл у меня немного поплыл, захватив еще пару недель — я не могла подвести итоги, потому что мало что делала. Первую неделю вообще минимум компьютера, а сейчас хвосты наверстываю... 

Ну да фигня! Будем считать, что это просто перерыв между циклами в этот раз побольше был)) Итак, а что у нас с главными планами? Основные цели были:

— книга: написать 4 статьи в последней главе.

— курсы: запустить курс об автоматизации в постмане!

— статья на ХАБР!

Всё сделала! По книге я не просто написала 4 статьи, я вообще закончила эту главу! Так что теперь осталось только заключение написать. Сначала я хотела быстро-быстро всё доделать и впихать в эти 12 недель огромный результат. А потом решила растянуть удовольствие)) В этом цикле я закончила одну книгу, а в следующем закончу другую!

Курс об автоматизации в постмане я запустила. Первый потом прошел больше половины, уже и второй начался, хотя разницу я поставила 2 месяца. В общем, запустилась в самом начале цикла! 

Ну и статью на хабр написала, даже две =))) А теперь пройдемся по всем успехам, что было сделано за цикл:

  1. Заходы к книге — почти каждый день большую часть цикла.
  2. Написала 87 страниц книги — было 252 стр последней главы, стало 339!
  3. Ну и вообще, закончила 15-ю главу книги!
  4. Закончила книгу «Сложные ИТ-термины на простом языке»
  5. Посты из книги, пополняя бесплатный онлайн-вариант —  8 штук ٩(◕‿◕。)۶
  6. Курс — целиком сделала 13 урок!
  7. Курс — написала лендинг
  8. Курс — запустилась! Уже второй поток пошел))
  9. Улучшалки по текущим курсам — они небольшие, но набирается прилично! 
    1. Улучшалки по ШНАТ — 21 штука 
    2. Постман (новый курс) — 36 штук \(〇_o)/
    3. Рест — 7 штук
    4. Логи — 3 штуки
    5. Локализация — 1 штука
  10. Пополняю раздел «работы студентов» — 4 штуки
  11. Пополнила свой youtube-канал — 10 штук! \(〇_o)/
  12. Создала плейлисты на ютубе, под REST, API и Postman
  13. Статьи на Хабр — 2 штуки!
  14. Выложила наконец в общий доступ свой магазинчик!
  15. Testbase —  22 улучшалки! \(〇_o)/
  16. Folks — 2  улучшалки
  17. Написала кучу полезных постов, в том числе всяких how to
  18. Прошла курс по Docker
  19. Прочитала 2 книги (。•́︿•̀。)
  20. Инструменты 12 недель — продолжаю вести файлик DONE, это все еще очень круто
  21. Ездила с Владом в гости к подруге в дом
  22. Ездили всей семьей в гости к друзьями — пару раз ))
  23. Написала отзыв на дизайнера
  24. Ездили на страусиную ферму!
  25. Устраивали шашлыки 2 раза!
  26. Поменяла ручки на дверях межкомнатных, а то им 4 года и вид непотребный уже был
  27. Я сделала операцию, восстановив зрение ٩(◕‿◕。)۶


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

четверг, 10 сентября 2020 г.

Зачем в чек-листе нужны примеры

Тут все очень просто. Примеры нужны для того, чтобы выполнить чек-лист, не включая мозг. Да, конечно, «работать надо не 12 часов, а головой», но увы, иногда приходится пробежаться по чек-листу ASAP  после длинного рабочего дня, когда мозг уже не варит.


И вот открываешь ты такой чек-лист, а там надо вводить реальные номера, чтобы проверить,что по ним город распознался. И вот такой клевый чек-лист:

  • Москва
  • Питер
  • Омск
  • Новосибирск
  • Нижний Новгород

Слабо навскидку реальный номер в каждом городе вспомнить?

четверг, 27 августа 2020 г.

Панбагон. В корзине отображаются не кавычки, а их код

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

Решила попробовать заказать. Добавляю в корзину, смотрю — а там вместо кавычек их код прописан, "

Код вместо кавычек

Типичный баг отображения спецсимволов Smile :)  
Давайте оформим его по шаблону:

суббота, 22 августа 2020 г.

Slothman — генератор текста, картинок и кучи всего еще


Ссылка — https://slothman.dev/

Slothman — это онлайн-генератор тестовых данных. Причем не так, как обычно бывает — один сайт данные отдельные генерит, другой картинки, третий текст... Тут все в одном месте!

Что тут можно сгенерировать:

  • Данные — имя, адрес, телефон. Но иностранные. Для русских данных используйте Mellarius
  • Pairwise — онлайн-инструмент, это удобно, нет привязки к вашей операционной системе.
  • GUID
  • Рандомный текст — аналог perlclip
  • Регистр — смена регистра вашего текста
  • Файлы — вот аналоги
  • Картинки

Удобненько!

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

PPS — добавила на Testbase в навык выбора инструментов, теперь не потеряется!

вторник, 18 августа 2020 г.

Отдаю книги-7 (Москва)

Люблю бумажные издания, но не хочу захламлять квартиру, так что периодами отдаю свои книжки.

Приехать забрать книги надо будет в офис ХФЛабс, это около метро на кольце. Парк Культуры, с 10 до 19 в будние дни.

Чтобы забрать книжку:
  1. Напишите мне на почту — ok.molechka@gmail.com. Укажите имя, какие хотите книги и когда приедете (в указанный выше интервал времени)
  2. Я дам вам номер моей коллеги Кати (я в декрете, меня в офисе нет). 
  3. Приезжаете в указанное время, звоните, забираете книжки — профит!

Книги


1. Живое обучение. Что такое e-learning. Елена Тихомирова (забрали)



2. Софт за 30 дней. Кен Швабер, Джефф Сазерленд (забрали)

понедельник, 17 августа 2020 г.

Я закончила книгу «Сложные ИТ-термины на простом языке»!


Ссылка на книгу на Testbase

Тут вы можете сказать:

— Ээээээ, минуточку! Ты вроде другую книгу писала. Вот же, для новичков!

Ага, подловили =))) Писала, писала я книгу для новичков. Уже практически дописала, как пришла в голову светлая мысль сделать еще одну главу: «Всё обо всём». Что такое api, git, maven... Ну спрашивают же, а новичкам откуда это знать??

Стала писать статьи для новичков, объясняя сложные термины. А потом эта глава вылезла за 200 страниц. Эээээ. Камон! У меня уже есть такие объемные главы, более важные и полезные!

Вот тогда я и решила книжки разделить на две:
  1. Книга для начинающих тестировщиков
  2. Сложные ИТ-термины на простом языке
В «сложные термины» я перенесла всю главу в исходном, неурезанном виде. А это 325 страниц, так, на минуточку! А в книге для новичков я ее сильно сокращу ))) Но скоро и ее закончу!

воскресенье, 16 августа 2020 г.

Docker: инструменты тестировщика (мой отзыв)

Заметки одного из студентов на гитхабе — кратенький конспект с основными командами!

Ну вот я и прошла курс по докеру! Пошла я туда с двумя основными целями:

1. Узнать, что вообще такое докер — была идея в своем курсе его заиспользовать (дженкинс в докере поднимается, но это ж надо самой проверить, чтобы студентам давать), а я с ним никогда не сталкивалась. Гуглить лень))) Мини-курс в этом плане отличная тема! Всего пара недель, и ты уже в теме! Я не хочу сортировать инфу из интернета, хочу, чтобы ее отсортировали за меня и дали на блюдечке!

2. Посмотреть на структуру курса. Я и сама тренер, и сейчас тоже хочу сделать мини-курс из такой же серии, так что было интересно посмотреть на оформление от Арсения.



Что в курсе понравилось


1. Подача материала. Просто, понятно, а еще «красивенько», я Арсения потом потерзала, что за функции он в Camtasia использует, раньше не умела выделять белым текст

Живое обучение. Что такое e-learning. Елена Тихомирова


Ссылка на OZON

Это книга для тренеров, о том, как построить процесс обучения online. Мне, разумеется, эта тема близка и интересна Smile :) 

Хотя, конечно, книга не совсем для меня. Потому что она рассказывает про построение e-learning внутри компании. Впрочем, не такая большая разница, курсы внутри компании или внешние платные. И те, и другие должны быть нескучными и полезными.

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

Еще одно важное уточнение — чтобы перейти в онлайн, недостаточно просто взять записки по очному обучению и переложить их в виде ворда / презентации. Онлайн обучение нужно проектировать с нуля. И подстраиваться под формат. Иначе получится никому не нужная скукотища.

четверг, 13 августа 2020 г.

Поздравляем Людмилу с первой работой

У нас сегодня есть история успеха выпускницы школы-57 Людмилы:



В общем, либо проснулся рынок, либо пришло время. Но спустя 1,5 месяца активных поисков, 7-8 выполненных тестовых заданий и 3 собеседований у меня имеется второй оффер за неделю (stareyes) хочу сказать огромное спасибо Ольге Назиной и Олегу! И всем тренерам потока ШНАТ-57 за подготовку, которая помогала выполнять тестовые и проходить интервью. Всё, что мне присылали или спрашивали — мы так или иначе проходили на курсе . И всему своему потоку тоже хочу сказать спасибо, т к они в том числе поддерживали меня очень активно :) я надеюсь, что справлюсь с новой ролью и пойду по карьерной лестнице с гордо поднятой головой!

Да, я теперь точно могу сказать, что ни возраст, ни образование, ни дети, ничто не помеха. И даже ни пандемия :D

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

От души поздравляю Людмилу с первой работой)))
Если вы сейчас в поиске работы, ничего не бойтесь, и в наше время ищут людей!

PS — сохранила в истории успеха выпускников школы. Если тоже хотите много полезной практики, заходите на огонек!

среда, 12 августа 2020 г.

Панбагон. При попытке редактирования поста открывается админка

Блоггер обновил свой интерфейс, только что об этом писала. Пост с панбагоном я добавляю в общую копилку багов. Но в этот раз что-то пошло не так...

Итак, я опубликовала пост со ссылкой на копилку багов. Перехожу туда по ссылке:


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


А мне открывается... Список всех постов! Хотя в URL и написано "editor":

вторник, 11 августа 2020 г.

Панбагон. Имя автора блогпоста вылезает за экран

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


Забавненько :)

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

понедельник, 10 августа 2020 г.

Топ-5 ошибок в резюме junior тестировщика (видео)


Мой коллега Арсений Батыров запилил видео про 5 главных ошибок в резюме junior тестировщика. Тут и сами ошибки, и как их исправить, сделав резюме чуть лучше!

Итак, 5 главных ошибок резюме:

  1. нет конкретики
  2. супер-подробное резюме
  3. отсутствие портфолио
  4. нет сопроводительного письма
  5. плохое сопроводительное письмо

Ну а дальше уже смотри видео =))

Мнению Арсения стоит доверять, так как он уже несколько лет работает лидом тестировщиков. В том числе набирает людей. В том числе он набирал людей в Яндекс, где довольно большой поток. Так что слушайте, учитесь, и улучшайте свои резюме!

См также:
Примеры хороших резюме от моих выпускников
Пример хорошего резюме от Арсения

Как описывать навыки в резюме
Советы по резюме от Павла Абдюшева

PS: ссылку на видео сохранила на Testbase в навыке составления резюме, теперь не потеряется!

воскресенье, 9 августа 2020 г.

Пример хорошего резюме Junior тестировщика

Мой коллега Арсений Батыров сделал пример хорошего резюме Junior тестировщика:



Ссылка на резюме

Что в нем хорошо:
  1. Оно короткое, на одну страничку
  2. Навыки описаны кратко, но понятно — с конкретикой.
  3. Есть ссылки на портфолио — для джуниора это всегда большой плюс!
См также:
Примеры крутых резюме для junior тестировщика — еще пара шаблонов, от моих выпускников

среда, 5 августа 2020 г.

Генератор русских ФИО, ИНН, ОГРН, ОМС

В чатике выпускников мелькнула классная ссылка на справочник тестировщика:

http://mellarius.ru/random-inn


Там забавные фио генерятся (ノ◕ヮ◕)ノ*:・゚✧

И не только. Можно сгенерить кучу официальных данных — ИНН ФЛ, ИНН ЮЛ, ОГРН, ОГРНИП, КПП, СНИЛС ОМС. Еще очень классно, что они ссылки на описание форматов приложили.

Можно сгенерить 1 значение, а можно несколько сразу — это называется «чёртова прорва».
Данные есть не только по России, но и по Украине, Казахстану...

Очень полезная штука для тестировщика!

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

PPS — добавила на Testbase в навык выбора инструментов, теперь не потеряется!

среда, 29 июля 2020 г.

Для локализации бага строим догадки и... Опровергаем их!

Здорово, когда вы не просто сообщаете о проблеме в программе, а сначала копаете рядом. Это помогает вывести догадку — не просто «А» вводится в поле, а вообще любой символ.

Но второй этап локализации намного сложнее. Когда мы уже построили какую-то теорию, нужно попробовать... Опровергнуть ее! Слишком поспешный вывод не всегда будет правильным, а ставить задачу «НИЧЕГО НЕ РАБОТАЕТ АААААА» просто потому, что у нас два разных файлика не загрузилось — это прерогатива Кевина =)

Посмотрим на примерах, когда локализация не совсем такая, как кажется на первый взгляд.


Форма ввода чисел

Один вариант бага мы рассмотрели чуть выше. Если вводишь «А», проверь и «Б», и латинскую букву. Скорее всего, на поле просто нет никакого ограничения. Но и эту догадку стоит подтвердить.

Например, мы успешно вводим в поле дохода букве «е»:


Паникер Кевин сразу делает вывод: ограничений на поле нет, можно вводить буквы и все что захочешь!


воскресенье, 26 июля 2020 г.

Тестировщик не просто клацает по кнопкам! (отзыв выпускника)

Мне написал мой выпускник, хотел поделиться своей историей успеха и дать напутствие начинающим тестировщикам. Вот его история:



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

Меня зовут Арсений. Я проходил 3-х недельный интенсив для начинающих тестировщиков (курс уже закрыт, теперь вместо него школа). Это было в 2017 году. Прошел его успешно.

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

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

пятница, 24 июля 2020 г.

Сответствие консольных команд Windows и Linux

В чат выпускников скинули такую классную шпаргалочку — Соответствие команд CMD Windows командам Linux:

При переходе с Windows на Linux и наоборот, для тех, кто знаком с командной строкой, может пригодиться небольшая справка по соответствию консольных команд этих операционных систем.

Полезная штука!

Мнемоники ТОП, ОПоРа и М&М

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

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


Ольга: ТОП


ТОП — Тестируй Определенное Поле (подразумевается, что нужно учитывать назначение поля, а не просто тестировать абстрактное поле)

Для тех, кому предстоят собесы, советую запомнить! Потому что только ТОП тестировщики знают этот секрет)


Ольга: ОПоРа


Анализируем продукт для тестирования.

суббота, 11 июля 2020 г.

Панбагон. HTML-код с div элементом в ошибке о незаполненном адресе

Для портала Testbase я беру картинки отсюда — https://www.iconfinder.com/iconsets/kameleon-free-pack-rounded.

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


Проблема в том, что вместо самого текста «This field is required» мы видим HTML-теги:

<div class="invalid-feedback">This field is required.</div>

Нехорошо! Давайте оформим баг по шаблону:

Как найти границы на клиенте и сервере

Ссылка на ХАБР (там кликабельное содержание! В блоге такое не сделать)

Как обычно тестировщик ищет границы в поле? Если в ТЗ есть ограничения, то тестирует их. А если их нет? С нижней границей все понятно — это пустое поле. А как найти верхнюю? Вставляем большую строку и смотрим, сколько символов сохранится. И всё…

Но если у нас клиент-серверное приложение, то границы разработчик может поставить на каждом звене!


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

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


среда, 8 июля 2020 г.

Как снять maxlength со всех полей формы

Ограничение по длине строки на клиенте прописывают в параметре maxlength поля.
Чтобы его найти, вам нужно:
  1. Открыть панель разработчика — нажать f12
  2. Нажать самую левую кнопку и навести курсор на элемент на странице
Вот, например, в Users в поле «имя1» у нас стоит ограничение в 10 символов:


Если начать вводить символы в это поле, система даст ввести ровно 10 штук. А потом печатаешь на клавиатуре, печатаешь — ничего не меняется. Больше в поле вводить нельзя!

Это ограничение на клиенте. Оно очень легко снимается! И нам нужно уметь это делать, чтобы проверить, какие ограничения установлены на сервере, и установлены ли вообще. Давайте посмотрим, как это сделать.


суббота, 4 июля 2020 г.

Severity и Priority. Заполняем приоритет в баге

При заведении бага или улучшения в баг-трекер мы может увидеть поле «Приоритет». Это может быть одно поле, а может быть два разных — Severity и Priority. Иногда их совмещают, иногда нет. Что эти поля значат?
  • Severity — насколько критичен баг сам по себе, с технической точки зрения.
  • Priority — насколько критичен баг для бизнеса;
Шкала может быть разной, от простой:
  • Minor
  • Major
  • Critical
До более сложной и насыщенной. Если два поля разнесены, то тестировщик обычно заполняет только Severity, а Priority определяет менеджер. Да и в принципе зачастую тестировщик не определяет приоритет, для этого есть его начальник.

Ведь именно приоритет означает, как срочно нужно исправить баг. А ведь дай волю Кевину, так каждая задача будет «АААА ВСЕ ПРОПАЛО СРОЧНО ИСПРАВЛЯЙ!!!» =)


четверг, 2 июля 2020 г.

Как отправить фото в формате base64 через Soap Ui

Чтобы отправить фото в формате base64, нужно:
  1. Выбрать изображение
  2. Загрузить через любой сервис конвертирования изображения в base64 строку, например, https://www.base64-image.de/
  3. Скопировать полученную строку целиком, включая начало: «data:image/png;base64,iVBORw0KG...»
  4. Вставить в параметр для передачи фото в формате base64
Профит! Инструкция одинаковая для REST и SOAP. 

Но смысл этого поста, разумеется, не в инструкции. А в том, чтобы сразу ее применить! Попробовать пощупать самостоятельно. Сделать это можно в API бесплатной системы Shop, метод create или update.


Мы будем вызывать метод create через Soap Ui, проверяя SOAP API. Для этого нужно:

Как отправить фото в формате base64 через Postman

Чтобы отправить фото в формате base64, нужно:
  1. Выбрать изображение
  2. Загрузить через любой сервис конвертирования изображения в base64 строку, например, https://www.base64-image.de/
  3. Скопировать полученную строку целиком, включая начало: «data:image/png;base64,iVBORw0KG...»
  4. Вставить в параметр для передачи фото в формате base64
Профит! Инструкция одинаковая для REST и SOAP. 

Но смысл этого поста, разумеется, не в инструкции. А в том, чтобы сразу ее применить! Попробовать пощупать самостоятельно. Сделать это можно в API бесплатной системы Shop, метод create или update.
Мы будем вызывать метод create. Пока через Postman, проверяя REST API. Для этого нужно:

среда, 1 июля 2020 г.

Поздравляем Александра с первой работой!

И еще одна история успеха от недавно выпущенной школы-58. На этот раз от Александра!


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

Добрый вечер.

Хочу поделиться с вами своими успехами! Сегодня я получил приглашение на работу тестировщиком! Знания, которые мне дали билет в новую жизнь — это Школа для начинающих тестироващиков. До этого никакого понятия о тестировании, кроме как знания о его существовании, не было.

За последние два месяца было отправлено порядка 25 откликов на вакансии тестировщиком с опытом больше года. В моем городе вакансий без опыта не было вообще. По итогу было 4 приглашения на собеседование/тестовое задание. Одна компания готова была общаться дальше только после снятия карантина, но его так и не сняли.

Одно тестовое я не выполнил достаточно хорошо с точки зрения работодателя. Не смог в силу специфики — геймдев (но очень хотел). И на двух собеседованиях сказали, что знания очень хорошие. И это именно заслуга ШНАТ. По результатам последних собесов одни выбрали тестировщика со стажем, а вторые — МЕНЯ!

вторник, 30 июня 2020 г.

Shop — на чем потестить SOAP, REST, и селекты к БД

Система Shop

Используйте систему Shop, если хотите попрактиковаться в тестировании, а негде.

В этой системе у вас есть доступ к БД! То есть вы можете создать товар через REST, а потом проверить — сохранился ли он в базу? Правильно ли заполнены поля?

А еще есть возможность отправлять запросы к базе через REST API, во как! И кидать картинки через base 64. Ну и пачка стандартных REST \ SOAP методов + графический интерфейс ))



Явки, пароли


Магазинчик http://shop.bugred.ru/
Тестовый пользователь: test@mail.com / 1

База данных: 
REST и SOAP API

Полная документация — в конфлюенсе.

пятница, 26 июня 2020 г.

Курсы по SQL, моя подборка

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



1. Udemy: «SQL для начинающих: с нуля до сертификата Oracle»


Ссылка — https://www.udemy.com/course/sql-oracle-certification/
Цена — 1200 руб (со скидками)

В чатике его довольная студентка порекомендовала:

Бери, там распродажи постоянные) я брала за 1200 где то) я смотрела на software здесь ещё курс, но меня привлекло на udemy количество функций, которые там изучаются) при том, на каждый оператор — своё видео, если забыл, то можно повторить) 

Если не считать бесплатных материалов, самый доступный курс.
Но учтите, что на udemy автоматизированные проверки. То есть фидбека от тренера будет мало, в основном это тесты.

Что такое CI (Continuous Integration)




Ссылка на ХАБР (там кликабельное содержание! В блоге такое не сделать)

CI (Continuous Integration) — в дословном переводе «непрерывная интеграция». Имеется в виду интеграция отдельных кусочков кода приложения между собой. Чем чаще мы собираем код воедино и проверяем:
  • Собирается ли он?
  • Проходят ли автотесты?
Тем лучше! CI позволяет делать такие проверки автоматически. Он используется в продвинутых командах разработки, которые пишут не только код, но и автотесты. Его спрашивают на собеседованиях — хотя бы понимание того, что это такое. Да, даже у тестировщиков.

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

Поздравляем Диану с первой работой!

Буквально вот-вот выпустилась школа-58, и у нас уже есть история успеха!



Диана рассказала о том, как получила оффер:

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

Ольга, я бы хотела выразить Вам огромную благодарность за вообще внимание и очень хорошую конститутивную обратную связь на каждое да!спасибо Вам огромное!!! Сегодня получила свой первый оффер 🤪

— Расскажите, пожалуйста, подробнее

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

четверг, 25 июня 2020 г.

У теста есть результат

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

Потестируем стул. Самый простой, который на конференциях в залах стоит:


Обычный человек пишет “сесть на стул”, “уронить стул”. Но тестировщик пишет “посадить на стул мужчину весом 150кг и проверить, что сидящий не упал, а стул сохранил форму”.

среда, 24 июня 2020 г.

Мнемоники СТУЛ, ПВО и СССР

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

Посмотрите, что придумали ребята на этот раз! Точнее, девчата. Сегодня у нас мнемоники от двух Юль, из разных школ

Юлия: СТУЛ

Юля из ШНАТ-57 пишет:

Хотела поделиться мнемоникой, навеянной заданием И1 про стул :) Всё просто: задавайте вопросы — избежите множества ошибок и сохраните драгоценное время.

С - Спроси! — задай вопросы, прежде чем приступать к тестированию системы.
Т - Тестируй — накидай чек-лист проверок. В процессе непременно возникнут новые вопросы.
У - Уточни — новые вопросы обязательно нужно задать :)
Л - Локализуй — будь конкретным, создавая тесты. Подумай ещё раз, зачем нужна система или конкретная функция, кто конечный пользователь.



вторник, 23 июня 2020 г.

Новый курс! Автоматизация в Postman

Привет!

Я запускаю новый тренинг — Автоматизация REST-тестов на уровне Postman.

Идеально для тех, кто тестирует API, но у кого на проекте еще нет автоматизации. Мы пройдем полный цикл — от первого автотеста до настройки CI (Continuous Integration). От Math.random до циклов и условий. От простого include до регулярных выражений.

На курсе 57 обязательных домашних заданий, так что практики у вас будет очень много! При этом курс идет 3,5 месяца, так что не переживайте, всё успеете ))


Познакомиться с моим стилем лекций можно на примере этого отрывка.

Первый запуск будет 9 июля, через пару недель.
На него действует скидка 30%! Промокод first_start

воскресенье, 7 июня 2020 г.

Мои 12 недель в году. Часть 13 (короновирусная)



Первый опытвторойтретий4567891011, 12


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


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

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

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


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


Этот цикл пришелся на карантин практически целиком. Начался цикл в начале марта, а через пару недель уже самоизоляция... Ни садика, ни даже прогулок, ничего. Так что я специально выбрала именно эту фоточку, где на первом месте сын, а на заднем плане я. Таковы реалии карантина ¯\_(ツ)_/¯

Времени резко стало меньше. Но! Все равно успела кучу всего))) Главное — захотеть!

Основные цели были:
— книга: написать 4 статьи
— курсы: закончить урок 8
— курсы: сделать полностью урок 9
— курсы: записать урок 10
— статья на ХАБР!

По книге статьи написала. Причем за цикл больше 100 страниц написала! Так что вполне норм результат )) И на Хабр статью сделала, даже две!

По курсу план выполнен и перевыполнен! Я сделала уроки 8, 9, 10, 11, и даже 12! 5 уроков за цикл!!! Супер-результат, я считаю. В следующем цикле уже закончу и запущу курс!

В общем, я еще не знала, что будет длительная самоизоляция, а все же поставила себе вполне осуществимые цели. Которые мне удалось выполнить даже в условиях «хрен тебе, а не ясельки, дома с ребенком весь день сиди». Не просто выполнить, а перевыполнить! Итак, что я успела за цикл, краткие результаты:
  1. Заходы к книге — почти каждый день, очень стабильно, я довольна! 
  2. Написала 130 страниц книги — было 120 стр последней главы, теперь уже 252!
  3. Посты из книги, пополняя бесплатный онлайн-вариант —  12 штук ٩(◕‿◕。)۶
  4. Курс — обработала 8 урок, оформила в СДО, придумала домашки
  5. Курс — целиком сделала 9 урок!
  6. Курс — целиком сделала 10 урок!
  7. Курс — целиком сделала 11 урок! 
  8. Курс — целиком сделала 12 урок! \(〇_o)/
  9. Улучшалки по текущим курсам — они небольшие, но набирается прилично! 
    1. Улучшалки по ШНАТ — 48 штук \(〇_o)/
    2. Рест — 7 штук
    3. Логи — 2 штуки
    4. Локализация — 3 штуки
  10. Пополняю раздел «работы студентов» — 6 штук!
  11. Нашла 2 кандидатов в тренеры
  12. Инструменты 12 недель — продолжаю вести файлик DONE, это все еще очень круто
  13. Добавила инструмент — записываю итоги недели (чтобы похвастаться во флудилке)
  14. Выложила полезные видосики на свой youtube-канал — 6 штук
  15. Создала плейлисты на ютубе, под школу и фолкс пока что
  16. Статьи на Хабр — 2 штуки!
  17. Testbase — 6 улучшалок
  18. Folks — 2 улучшалки
  19. Прочитала 3 книги (。•́︿•̀。)
  20. Гуляла в магазин ))))) Увы, пока ни кино, ничего такого... Короновирус же!
  21. Встретились с подругой, она ко мне в гости заехала до карантина
  22. Разорвали отношения с дизайнером
  23. Нашли строителей, начали ремонт
  24. У нас сбежал кот (((
  25. Поставили Владу АКДС (10 неделя, уже в мае)
  26. Укатили с сыном к бабушке в Белгород! 


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


четверг, 4 июня 2020 г.

Что такое cmd + основные команды для новичка

Cmd — это командная строка. Чтобы запустить командную строку на винде, есть 2 основных способа:

  • Пуск → cmd.exe
  • Run (кнопка с картинкой винды) + R → cmd




Второй способ быстрее.  Хотя кому как...

Когда вы открываете командную строку, то попадает в директорию C:\Windows\system32 (1 способ) или C:\Users\olgak (2 способ, вместо olgak будет ваше имя пользователя).

Что вы должны уметь тут делать? Разберем план-минимум
  • Перемещаться по папкам
  • Копировать файлики
  • Запускать приложение
  • Архивировать файлы
См также:
Основные linux-команды для новичка — тоже план-минимум, но уже по линуксу


воскресенье, 24 мая 2020 г.

Кто создает программы

Это всегда разное количество людей. Как в продуктовом магазинчике или кафе. Бывает, что есть только владелец: он и бариста, и повар, и продавец, и бухгалтер, и уборщица в одном лице. На найм сотрудников просто нет денег. Или, может, муж с женой исполнили мечту и открыли кафетерий? Тогда у нас уже два человека…

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

Также и в ПО, все зависит в первую очередь от того, сколько у тебя есть денег ¯\_(ツ)_/¯


1 участник. Автор = разработчик


Если у вас есть идея и вы можете сами ее реализовать — флаг в руки! Тогда вы как тот начальник кофейни, сочетающий в себе все и вся. Сами придумали идею, сами написали код. Иногда даже код писать не надо, если хотите сделать что-то простое. Например:
  • Лендинг-страница — это сайт-одностраничник, продающий ваш товар (супер-пупер расческа, курс по программированию, цемент для дачи итд). Такую страничку я сделала сама. Этот курс уже закрыт, но сама идея лендинга в тильде неплохая.
  • Интернет-магазин — сейчас и для них есть стандартные шаблоны. Сделал как нравится и вперед


понедельник, 18 мая 2020 г.

Правило 20 минут

Сначала попробуй решить задачу сам, потом обращайся за помощью. Если за 10-20 минут не нашел решения, можно и коллегу спросить.

Актуально для всего:

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

четверг, 14 мая 2020 г.

Результат в тест-кейсе — один или много?


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


Один результат после всех шагов


Если результат один, то он идет после выполнения всех-всех-всех шагов:

Шарлотка  
Предварительные шаги 
Сходить в магазин и купить:
  1. Яйца;
  2. Яблоки;
  3. Муку;
  4. Молоко;
  5. Сахар.
Шаги
  1. Яйца взбить с сахаром (взбивать не менее 5–7 минут).
  2. Добавить муку, хорошо перемешать.
  3. Яблоки почистить, удалить сердцевину, нарезать небольшими дольками.
  4. Форму для выпечки смазать маслом.
  5. На тесто выложить половину яблок (яблоки можно посыпать корицей).
  6. На яблоки вылить половину оставшегося теста.
  7. На тесто выложить оставшиеся яблоки.
  8. На яблоки вылить оставшееся тесто. 
  9. Поставить в разогретую до 180 градусов духовку. 
  10. Выпекать в течение 40–60 минут (в зависимости от размера формы).
Ожидаемый результат 
Вкусная шарлотка! Которую родные уминают за 5 минут.

Выполнили все 10 шагов? Получили шарлотку! Также и в ПО: выполняем все шаги, получаем результат.

понедельник, 11 мая 2020 г.

Основные linux-команды для новичка



Ссылка на ХАБР

Если вы еще не сталкивались с linux, вам сюда!

Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!

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

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

воскресенье, 3 мая 2020 г.

Задание по регулярным выражениям от Егора

Это мощная и хитрая задача с подколками. Идеальна для проверки знаний по регуляркам. Автор — мой коллега Егор Симонов, крутой технический специалист.

Если хотите обучить сотрудника регулярным выражениям, дайте ему:
  1. Книгу Бена Форта — «Регулярные выражения 10 минут на урок»
  2. Задачку от Егора
У нас на работе ровно так и делают Wink ;)


Когда я пришла в ХФЛабс, мне сказали к концу испытательного срока сдать Егору задачи по SQL и регулярным выражениям. На тот момент я немного знала SQL — в реальной жизни не применяла, но меня программист научил всяким джойнам. Регулярки не знала вообще.

И вот мне книжку дали, я ее честно прочитала. Читается книга легко. Повторяешь все за автором — вообще элементарно! Так что «фигня вопрос, sql знаю, регулярки тоже, успею!». Откладывала задания, пока до делайна не осталась неделя. Или две? Не помню точно, помню только, что не успела :)

пятница, 1 мая 2020 г.

Юлия → Iuliia. Схемы транслитерации и другие полезные ссылки

Транслитерация — это запись кириллических слов латиницей (Анна → Anna, Самара → Samara). Её используют в загранпаспортах, водительских удостоверениях, и куче других процессов.

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

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

Потому что таких схем есть целая куча:


Почитать о них можно в блоге Антона Жиянова: Юлия → Iuliia. Всё о транслитерации

По ссылке https://dangry.ru/iuliia/ можно выбрать любую подходящую схему транслитерации из 20 возможных (ГОСТы, МВД, Почта, Википедия, ISO, UN, Library of Congress).

воскресенье, 26 апреля 2020 г.

Панбагон. К карантину мы были не готовы...

В связи с карантином все системы эксренно придумывают временные меры. Которые, разумеется, ни фига не работают, и в текущие процессы не вписываются.

Вот, скажем, сейчас официально продляют паспорта, которые пора менять. Еще 3 месяца они будут действительными. Вот только на официальном сайте справочник ПНД (перечень недействительных документов) не обновляют по этим данным.

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

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

Ошибка перевода

Уточняю:

— У тебя карта еще активна вообще? ))
— Там  у нее срок закончился, но банк в связи с карантином продлил ее на 3 месяца, так как поменять ее в банке сейчас некак.
— Хреново продлил, я тебе скажу))

Давайте оформим баг по шаблону:

пятница, 24 апреля 2020 г.

Чем занимается тестировщик



Наверняка вы уже успели что-то поискать про тестирование. Бесплатные видео-лекции, статьи, книгу Романа Савина. Так как вы думаете, в чем основная задача тестировщика? Чем он занимается?

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


Другой популярный ответ — помогает улучшать качество продукта. А как помогает? Ну, ищет баги и сообщает о них.

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

Мы исследуем продукт и рассказываем команде, как он работает. Или не работает ¯\_(ツ)_/¯ 
На основе полученной информации команда решает, можно ли выпускать релиз (отдавать новую версию приложения пользователям), или стоит исправить баги. Какие баги важно исправить сейчас, а какие можно будет поправить позже. А что вообще никогда чиниться не будет.

Но подумайте вот о чем — даже если тестировщик 3 часа тестировал функционал, прогнал сотни тестов и ничего не сломалось (багов не нашел) → это не значит, что он не работал.

четверг, 23 апреля 2020 г.

Простое руководство по работе с git

Очень компактно про GIT — http://rogerdudler.github.io/git-guide/index.ru.html


Гайд роскошный! Так что сохраню его в блоге + на Testbase. Даже отдельный навык сделала —  «Работать с VCS», буду туда собирать полезные материалы по система контроля версий!

вторник, 21 апреля 2020 г.

Usability-case. Не сохраняется выбор сезона в БС

Участвую в проекте «Бешеная сушка». Довольно удобно, никуда ходить не надо, а на каждый день есть набор упражнений.

Обычно между двумя сезонами есть свободное время, около месяца. 4 недели ты тренируешься, потом 1-2 недели идут голосования за лучший результат и прочая-прочая, и потом ждешь следующий запуск.

Но карантин внес свои коррективы. Запустили специальный сезон — «карантин, проведи время дома с пользой!». Причем он начался в середине «текущего» сезона. Вот как ввели самоизоляцию, так и запустился новый сезон. И всем участникам текущего сезона зазывалку прислали — мол, иди к нам, сезон начнется сразу после оплаты!

Я туда не торопилась — сразу 2 сушки не потяну. Так что спокойно закончила свой текущий сезон. В конце 4 недели последнее задание на вылет + фото ПОСЛЕ. Я честно сделала и то, и другое. Но отправлять не стала — там надо было в планке стоять несколько минут, и я честно стояла, покрывалась потом и всё такое. А потом на записи увидела, что стою «домиком», задрав попу. А муж молчит, типа так и надо. Переделывать уже не стала — все равно призов не получу, результат слабенький.

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


понедельник, 20 апреля 2020 г.

Панбагон. Название сезона БС не влезло на экран

Участвую в Бешеной сушке. Вышла в меню «Сезоны» на телефоне. Оказалось, что длинное название «специальный сезон» в отведенное ему место не влезает, обрезается :)

Сезоны

Для того, чтобы оформить такой баг, нужно вначале проверить — а где обрезается? На любом телефоне? Или определенной диагонали экрана? Правда, для этого надо иметь доступ к нескольким телефонам с разными данными )))

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

воскресенье, 19 апреля 2020 г.

Панбагон. Как волонтера в любовники записали

Нашла в фейсбуке, вроде как вот исходный автор.

Сейчас карантин из-за эпидемии короновируса (а вдруг вы читаете этот пост спустя несколько лет? Ввожу в контекст, напоминаю!). Если хочешь выйти на улицу, то отправляешь смс для получения электронного пропуска.

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



Это из тех забавных багов, которые почти как фича :)
Ну да, есть такое. Исправлять не будет (потому что «а зачем??»).

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

четверг, 16 апреля 2020 г.

Варианты настройки системы CI

Неважно, какую именно систему CI (Continuous Integration) вы используете — Jenkins, TeamCity, или какую-то другую. Для всех них можно использовать варианты настройки:
  • от операционной системы
  • от плагинов


От операционной системы


Мы подготавливаем операционную систему машины, на которой будут гоняться автотесты.

Вот, скажем, в официальной инструкции Postman-а есть статья «Integration with Jenkins». Что нужно сделать, чтобы запустить тесты в Jenkins:
  • Установить Jenkins
  • Установить на ту же машину NodeJS и npm
  • Установить на ту же машину newman
Установили? Теперь очень легко конфигурировать задачи — добавил shell-команду, а внутри нее вызов newman. И всё, ничего лишнего!