пятница, 22 июня 2018 г.

Мнемоники: ССД, ДСП, ВАП и ПЛОФ

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

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

Инна: ССД

Сломай
Сообщи
Докажи


Таня: ДСП, ВАП 


WinSCP — что это и как использовать

Для тех, кто учится работе с linux. Самые популярные инструменты — Putty + WinSCP. Сегодня разбираемся с WinSCP.

Статья «бери и делай», тут есть данные для входа на нашу тестовую площадку. Здесь я даю основы по работе с инструментом. Все-все-все кнопочки мы разбирать не будем. Ровно то, что вам надо знать, если вы впервые WinSCP видите.

WinSCP — программа для подключения к linux-машине. Выглядит как Total Commander, очень удобна, если нам надо что-то перекинуть на машину или забрать оттуда. Ведь интерфейс винды многим роднее, чем командная строка.


Как запустить


Открыть приложение — появится окно логина.
Нажать «New site» (название может меняться, но новое подключение всегда сверху)


Заполнить поля:
  • Host name — имя хоста, к которому подключаетесь. Или его IP-адрес
  • User name — логин
  • Password — пароль
По умолчанию система предлагает протокол подключения SFTP и порт 22, это нам менять не надо (обычно). 

См также:
Тут можно потыкать Linux — тут вы можете взять IP, логин и пароль нашей тестовой площадки, если у вас нет своей.

четверг, 21 июня 2018 г.

Как накидать тестов на что-нибудь

Допустим, вы пришли на собеседование и я предложила вам протестировать… ключ. Требования? Нет требований, просто скоро вам дадут ключ, а пока нужно подготовить тесты. Что будете делать?

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

  1. Выясняем суть — что за ключ, нафига он нужен
  2. Проводим тесты —проверяем в первую очередь, что объект тестирования делает то, что от него ждут. А всякие извращения и попытки сломать оставляем «на потом».

Запомнили? Правда-правда? Вы уверены? 😊

В своей школе для начинающих тестировщиков я в первой лекции говорю все то же самое:

— Выясняйте суть, иначе будете делать ненужную работу.
— Да-да, мамми, мы все поняли, так и будем поступать!
— Ну вот вам ДЗ, тестируйте ключ.

Угадайте теперь, какие домашки я получаю? Правильно. Половина студентов присылает примерно такое ДЗ:
Осмотрим ключ, есть ли на нем царапины? Какой внешний вид? Насколько походит к замку? Вставляем ключ в замок, откроется ли?
Некоторые добавляют:
Возьмем простой ключ от квартиры. Что нам надо проверить? …
Или так:
А что за ключ? Для чего он будет использоваться? 
Наши проверки:
  1. Визуальный осмотр ключа
  2. Подходит ли к квартире.
  3. Не отопрет ли и соседнюю дверь тоже
Хм, то есть вроде как в теории знаем, что задавать вопросы надо, но ответы нас на самом деле не особенно волнуют, проверки то вот они! Уже готовы!

А что, если на самом деле это ключ-карта? Или ключ для шифрования данных? Как вы будете осматривать пиксели в программе? А если это 3D-модель в метр высотой, какую квартиру отпирать будете?


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

См также:
Открытые и закрытые вопросы — о том, как выяснять информацию

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

среда, 20 июня 2018 г.

Почему именно интенсив?

Возможно, вы уже знаете, что у меня есть два курса для начинающих тестировщиков:


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


Сегодня я хочу рассказать, почему этот формат задержался, несмотря на все гневные отзывы. Почему я его выбрала и почему до сих пор за него цепляюсь. И хотя сейчас я школой горжусь даже больше, чем интенсивом, этот пост решила дописать. Он уже 2 года лежит в черновиках, я тезисы набросала, когда мне пришла в голову идея рассказать «почему именно интенсив», а доделать все некогда было. То времени нет, то недавно публиковала отзывы с курса, а несколько рекламных постов подряд — нехорошо.

А сейчас вот время нашлось! Ну, как нашлось... Организм бесится, подскочила сегодня в 4 утра и не могу уснуть. Голова при этом ватная, писать «полезный» пост нет сил. Решила хоть черновики свои разгрести. Тем более это у меня в планах 12 недель есть, в разделе «найс ту ду»: более 20 черновиков в блоге валяется, разгрести. Или удалить как неактуальные, или доделать. Хочу доделать!

ПО GNU/Linux — видео лекции Георгия Курячего


Ссылка на курс

Со звуком беда только в самом начале, буквально через 3-5 минут вводной лекции станет норм. И со следующими лекциями также, первая минута — шумно, потом включают микрофон.

Ссылочку мне порекомендовал наш сисадмин, разумеется, сам линуксоид. Для общего понимания того, что вообще такое Linux и с чем его едят. Это запись лекций из университета. Лектор практик, знает, о чем говорит. И рассказывает классно! Мне понравилось =)

Хотя должна признать, что ссылку мне дали еще на новогодние праздники, а смотреть лекции я начала только в прошлые 12 недель. Мне просто оказалось очень сложно заставить себя 1,5 часа сидеть перед онитором и просто слушать. Стала откладывать, и откладывать, и откладывать... А потом решила делать небольшие заходы на 10-15 минут. И вот уже я досмотрела все лекции!

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

А тестировщику обычно надо понять как раз сами команды. Познакомиться с базовыми методами, чтобы не пугаться страшного слова «линукс-сервер». Уметь переходить там по директориям, просматривать права, файлы, следить за логом... Если вам нужно именно это — то лучше погуглить другие курсы. Или книжки почитать, я могу порекомендовать:

А вот для общего развития лекции — самое то!

См также:
Тут можно потыкать Linux — тренируйтесь в командах на нашей тестовой площадке =)


вторник, 19 июня 2018 г.

Usability case. Проблемы Амедиатеки на Smart TV

Хочется поступать хорошо, честно платить за просмотр сериалов... Но в итоге ты платишь и сам же еще и огребаешь :(

У нас телевизор — Самсунг, со Smart TV. Такой же модели:


Это, правда, фото теливизора из офиса, но я в свое время решила не заморачиваться и купила домой такую же модель)))

Так вот. Увидели на смарте приложение Амедиатеки, решили попробовать, почему бы и нет? И в целом, сейчас иногда тоже продляем аккаунт, когда хочется посмотреть что-то новенькое, а искать лень — в Амедиатеке есть опция «Мне повезет», которая рандомно подкидывает сериальчиков.

Почему не покупаем сразу на год? Потому что есть куча минусов:


1. Непонятно, на какой серии ты остановился


Когда ты смотришь сериал, ты должен четко помнить сезон и серию, на котором остановился. Вот мы смотрим сериал «Сшиватели». Какую серию мы уже смотрели, а какую нет?


воскресенье, 17 июня 2018 г.

Панбагон. Ломается структура файла, если в нем первые колонки пустые

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

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

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

Ломается структура файла, если в нем первые колонки пустые


Шаги
  1. Открыть форму обработки файла — https://dadata.ru/clean/#process-file (почта - test@gmail.com, пароль - 1)
  2. Загрузить файл, содержащий пустые столбцы (см. «Пустые колонки.xlsx»).

Результат

Система отображает "m-n" количество столбцов загруженного файла, где m —количество столбцов в файле, n — количество пустых столбцов.

В нашем файле:
  • исходно заполненных колонок — 5
  • колонок в структуре — 5
Но Дадата обрабатывает данные, начиная с первого столбца, а в примере первые три столбца пустые. Соответственно в обработанном файле отображены три пустых столбца и только два заполненных. Еще 3 колонки пропали


четверг, 7 июня 2018 г.

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


Первый опыт, второй, третий, четвертый.

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


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

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

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


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


Основной мой план был такой:

книга: закончить главу 3 и сделать половину главы 4
— курсы: сделать хотя бы пару лекций по интеграционному
— фолкс: запустить проект (пора бы) + улучшения по курсам

Ну, что сказать... По книге я план даже перевыполнила! Я не просто сделала половину главы 4, я ее дописала и сделала 60 страниц главы 5! Так что в целом я результатами довольна ^_^

И проект фолкс я наконец запустила! А вот на новый курс забила, но об этом чуть позже )))

Остальное, что удалось сделать:
  1. Продолжили бизнес-обеды, мне вполне нравится.
  2. Заходы к своей книге — практически каждый день!
  3. Появилось время на фолкс, позанималась этим проектом
  4. Улучшения инструментов — сделала файлик DONE, чтобы записывать улучшалки в курсах. А то вроде что-то улучшаешь, улучшаешь, а потом даже вспомнить не можешь, что делал.
  5. Прочитала 8 книг.
  6. Нашла время на линукс-лекции, посмотрела 8 штук!
  7. Писала посты с работы! Это тоже был важный пункт для меня, вроде ведь есть что рассказать, но некогда...
  8. Также делала посты из книги, пополняя бесплатный онлайн-вариант
  9. Выложила несколько полезных видосиков
  10. Завела тестовую площадку под линукс, выложила в открытый доступ
  11. Да и вообще, я создала, наконец, тестовые площадки! Давно хотела, хотя исходно в другом виде, ну и черт с ним.
  12. Переписала описание курсов. Теперь симпатичнее!
  13. Закрыла несколько кармических долгов на работе — в выходные делала тесты, на которые не хватало времени на работе.
  14. Сделала парочку газет
  15. Ужины из Партии еды продолжаю практиковать + делала всякие блинчики, сырнички итд, разнообразие и все такое.
  16. Сходили на мюзикл "Привидение", кучу раз в кино на 4ДХ
  17. Встретилась с подругами, с которыми давно не виделась.
  18. Снялась в трех фотосессиях ^_^


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


пятница, 1 июня 2018 г.

Митап о ретроспективе 30.05, отзыв


Вчера в ХФЛабс прошел митап о ретроспективе (приглашение было тут, следите за нашей страничкой!).

Было довольно интересно! Митап планировался с 18 до 20, но в итоге начали в 18:30 (ждали опаздывающих), а разошлись в 21:20, и то потому, что поздно и всем нужно домой.

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

воскресенье, 20 мая 2018 г.

Лайфхак на каждый день. Игорь Манн и Фарид Каримов


Ссылка на OZON

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

Мои выдержки из книги:


Выдежки по остальным категориям:

Работа и карьера


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

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

2. Правильный конспект — не записывайте выступления или семинары точь-в-точь, а своими словами. Так мозг не уходит в спящий режим. А еще можно специально разлиновывать тетрадь. Чтобы обязательно было место под заметки и подведение итогов.

Лайфхаки по мотивации. Мой топ-6

Моя выдержка из книги «Лайфхак на каждый день». Советы по мотивации:


1. Повесьте мотивирующую картинку со своей целью на экран блокировки смартфона. Будете часто ее видеть!

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

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

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

Тут тоже яростно плюсую лайфхак. У самой есть куча долгосрочных целей. Но я учусь радоваться маленьким победам. Иначе энергии не хватит...

Лайфхаки по работе с компьютером

Моя выдежка из книги «Лайфхак на каждый день» из раздела работы с компьютером.


1. Летающие руки


Используйте горячие клавиши. И программы:
  • ActiveWords для Windows
  • Keyboard Maestro для Mac OS.
С их помощью вы создадите макросы для автоматизации рутины.


2. Доп инструменты


Я их собрала из разных лайфхаков. Что-то использую сама давно (Ccleaner, adblock, unlocker, скриншотер), о чем-то только слышала... В любом случае решила собрать вместе:
  • Автозапуск — настраиваете один раз и компьютер после перезагрузки сам включает все нужное, пока вы пьете чай.
  • Менеджер буфера обмена — чтобы не потерять то, что вы скопировали, а потом забыли и скопировали что-то еще.
  • Программа-чистильщик Ccleaner — почистит диск, реестр, автозапуск и ненужные программы.
  • Adblock — чтобы не видеть ненужной рекламы
  • Скриншотер, например Monospan — если консультируете людей по телефону или скайпу, то это жизньболь, пояснить им, где находится кнопка. А так быстренько сняли скриншот, показали стрелкой место и загрузили через интернет. 15 секунд, которые экономят время на объяснения.
  • Unlocker — для удаления неудаляемых файлов на винде. Ага, сама пробовала, работает!
  • Alternativeto.net — сервис альтернатив. Если у вас не ставится программа или смущает ее цена (например, на фотошоп), идите сюда. Сервис подскажет альтернативы. Там же будет краткое описание, ссылка на оф сайт, отзывы пользователей и рейтинг.

См также:
Лайфхаки по мотивации. Мой топ-6 — другая выдержка из книги.
Лайфхак на каждый день — мой отзыв на книгу и остальные лайфхаки.
Бизнесхак на каждый день — мой отзыв на книгу бизнесхаков.

Панбагон про тортики. Название кнопки вылезает за рамки

В прошлом году я прошла кулинарную школу Алины Макаровой. Очень хотелось тортики научиться печь. Такие, знаете, красивенькие, а не то, что у меня получалось раньше ツ

Потом написала отзыв на курс. Для этого открыла сохраненную в избранном ссылку на конкретный курс на конкретные даты — https://alinamakarova.ru/detail.php?ID=2410

И сразу бросилось в глаза, что:
  1. Страница пустая (информации по курсу нет)
  2. Справа на кнопке «Товар временно недоступен» надпись уезжает за пределы экрана
Подозрительно пустая страница и явный баг на кнопке

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

пятница, 18 мая 2018 г.

Мнемоника? Туры в стихах!

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

В этот раз у нас не совсем мнемоника. Участница школы Саша написала... Стихи! Закодировав туда названия исследовательских туров.

Сашины стихи


Путеводитель стоит денег,
Сориентируйся-ка сам!
Найди, блистая интеллектом
Кафе, FedEx, универсам…

     Там на задворках внеурочно
     Ты встретишь друга иль врага,
     Там сборщик мусора расскажет,
     Зачем, откуда и куда:

«На предыдущем перекрестке
Свернул бы ты, попал в музей.
Плохой район у нас, братишка,
Ступай отсюда поскорей!

Расширение CRUDL как новая техника тестдизайна (семинар в Москве)


Когда: в понедельник, 21 мая
Во сколько: c 18:00 до 22:00
Где: метро Парк культуры: Турчанинов переулок, д. 6 стр. 2, БЦ «Крымский мост», 1 этаж, Офис компании HFLabs
Сколько стоит: 500 р
Где зарегаться: https://sergey-martynenko.timepad.ru/event/723897/

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

Сергей — опытный эксперт в аналитике, тестировании и управлении проектами, автор блога 255 ступеней.

Анонс от Сергея


CRUDL расшифровывается как Create, Read, Update, Delete, List. Отличная напоминалка для генерации чеклистов. Так же подходит для верификации требований на полноту. Уж очень много аналитиков описывает создание объекта, но не описывает изменение и удаление. Как результат, когда доходит дело до реализации программист делает это не как надо, а на свое усмотрение. И хорошо, если тестировщик заметит проблему. Хуже, когда все это уходит в эксплуатацию. Проблемы бывают забавными, а бывают не очень.

Например, в популярной Jira до версии 6.2 не логировалось удаление задачи. Нормальная такая ситуация. Заказчик заказывает новую фичу, исполнитель ее реализует, указывает количество часов и после получения заказа заказчик удаляет задачу. И все.

McDonald's. Как создавалась империя. Рэй Крок


Ссылка на OZON

Success story, что очевидно из названия. Ну кто не знает Макдональдс? 

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

Причем начал он в 53 года! Вот уж где можно успокоиться «Да у меня еще все впереди!». Конечно, автор до 53 лет не сидел без дела, он с детства любил мечтать и все время пытался что-то сделать. То магазин нотный откроет, то стаканчики пойдет бумажные продавать, то миксеры. И потом весь этот опыт, весь этот стаж пойдут ему на пользу как главе корпорации. Особенно опыт продавца, ведь его уже многие знают и доверяют ему.

среда, 16 мая 2018 г.

Семинар «Метрики тестирования. И немного KPI»


Когда: сегодня, 16 мая
Во сколько: c 18:00 до 20:00
Где: метро Парк культуры: Турчанинов переулок, д. 6 стр. 2, БЦ «Крымский мост», 1 этаж, Офис компании HFLabs
Сколько стоит: 300 р
Где зарегатьсяhttps://sergey-martynenko.timepad.ru/event/722425/

У нас сегодня вечером в переговорной состоится митап Сергея Мартыненко о метриках в тестировании.

Сергей — опытный эксперт в аналитике, тестировании и управлении проектами, автор блога 255 ступеней

Анонс от Сергея


"Если ты что-то не можешь измерить, то ты не можешь этим управлять"

Довольно известная фраза. Может быть, она верна, может быть нет. Скорее, она неверна. По крайней мере, так говорил Деминг. Ему я верю.

четверг, 10 мая 2018 г.

Зачем вообще нужны программы


Программы нужны, чтобы:
  • Помочь достичь цели
  • Помочь решить проблему
  • Развлечься
Иначе они никому не сдались Smile :)

Я не буду открывать Word, если хочу посмотреть фоточки. Я открою средство просмотра фотографий. Потому что Word не решает моей цели.

Я не буду открыть сайт налоговой, если хочу отдохнуть и развлечься.

Ну и когда я выбираю программу для покупки, я смотрю, решает ли она мою проблему. Потому что сейчас так много программ, которые выполняют одно и то же. Я выберу ту, что решает мою проблему. А если несколько программ ее решают — то самую симпатичную =)


Когда мы выяснили, для чего нужна программа, то приходит понимание, что именно нам тестировать в первую очередь. Посмотрим на примерах

понедельник, 7 мая 2018 г.

Тут можно потыкать Linux

Знание Linux хотя бы на базовом уровне сейчас часто требуют в вакансиях — как перемещаться между директориями, как создавать или редактировать файлы, grep, просмотр...

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


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


IP: 85.143.174.119

Данные для входа:
  • Логин — test 
  • Пароль — 123
Система: CentOS 7

Pretty roses в реальной жизни (SimpleCloud)

История про Pretty roses давно уже стала мемом в ИТ ツ

Читать ее забавно, но кажется, что она слишком утрирована. А нет, угадайка требований к паролю встречается до сих пор. Вот, например, скриншоты подбора ROOT-пароля на https://simplecloud.ru:



Панбагон. Access denied на правильный пароль

Зарегистрировалась сегодня на https://simplecloud.ru/, создала виртуальную машину. Нажала кнопочку «Вкл», потом подцепилась по Putty проверить.

Терминал открылся — значит, машина включилась уже (по крайней мере мне так казалось). Радостно ввожу пароль от root... И получаю Access denied:


Ээээээ, что, простите?

Ну ладно, я у меня сложный пароль, я могла ошибиться. Попробовала еще и еще раз — ни фига! Ла-а-а-а-адно... В интерфейсе есть кнопка «показать пароль», глазик такой.

Нажала на нее, скопировала пароль из интерфейса — Доступ запрещен. Вы что там все, издеваетесь, чтоли???

понедельник, 30 апреля 2018 г.

Learning to Think

Every thuth has four corners: as a teacher i give you one corner, and it is for you to find the other three
— Confucius

О чем он говорит? Разве не должен учитель показать все 4 угла и явно их описать? Нет. Чтобы по настоящему научиться, запомнить и понять, ты должен постоянно задавать вопросы, стремиться к поиску знаний. Если нет реального желания глубже понять тему, то все мудрые принципы стекут с вас как с гуся вода. ©

Честно говоря, не помню, в какой из книг я прочитала эту цитату (давно уже сохранила в черновики, а теперь разгребаю их). Скорее всего, в «Secrets of a buccaneer-scholar» James Marcus Bach или «Lesson Learned in Software Testing». Но сама по себе идея очень важная.

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

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

Как-то так...


Бесплатное место под ИТ-тренинги на 15 человек


Ссылка на оригинальный пост в фб.

Предлагаем переговорную HFLabs в качестве бесплатного места проведения небольших митапов или тренингов на IT-тематику (на 15-20 человек). Взамен за это — участие 1-2 человек от HFLabs в вашем мероприятии 

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

Нам все равно, платный ваш тренинг или бесплатный — мы всем будем рады. Главное, чтобы тематика была интересна кому-то из наших коллег.

Несколько минут пешком от метро Парк культуры: Турчанинов переулок, д. 6 стр. 2, БЦ «Крымский мост», 1 этаж (контакты).

Мероприятия можно устраивать после 18 в будни или в выходные.
Если интересно — пишите Лере Таныгиной на почту valeriyat@hflabs.ru или в личку HFLabs на фб. Ждем вас 

воскресенье, 29 апреля 2018 г.

Максимальная концентрация. Люси Джо Палладино


Ссылка на OZON

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

  • Нужно задавать себе вопросы «Что я сейчас НЕ делаю?»
  • Нужно осмысливать свое поведение, словно сторонний наблюдатель.
  • Нужно говорить себе «Я работаю, я работаю», когда ручки тянутся на котиков посмотреть
  • ...
Пока читаешь, кажется «Пфффф, ничего необычного, даже не стоит пытаться». Но фишка в том, чтобы попытаться применить эти «легкие» методы. Я тоже сначала пфыкала, но потом специально концентрировалась на текущем деле. 

В конце концов, я книгу то начала читать потому, что у меня тяжело с концентрацией в последнее время. Книгу пишу? 5 минут пописала и ручки тянуться открыть фейсбук. Причем в ленте нет ничего нового, недавно просматривала, но все равно сидишь и тупо скролишь. Книгу читаю? Почитала минут 10 и снова хочется прекратить. 

суббота, 28 апреля 2018 г.

Contains строки в XSLT

В нашей системе есть SOAP-методы и есть автотесты на них. В автотестах применяются файлики transform.xslt — чтобы можно было переформатировать ожидаемый результат и проверять только те поля, которые нужны нам в данном тесте.

См также:
Folks — open-source проект с API-тестами на Java → там есть пример автотеста на SOAP с transform.xslt
Эволюция нашего использования XSLT в SOAP-тестах → подробнее про наши тесты


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

<xsl:variable name="fieldsToCopy">
        |surname|name|patronymic|fullNameRawSource|fullNameQC|
        fioTrusted|birthdateTrusted|innTrusted|snilsTrusted|
        </xsl:variable>

А потом мы указываем, что нам нужны все поля переменной fieldsToCopy через contains

<xsl:apply-templates select="cdi:field[contains($fieldsToCopy, @name)]">
      <xsl:sort select="@name"/>
 </xsl:apply-templates>

Так вот, запускаю я тест, он падает, ожидаемый ответ не совпадает с моим. Смотрю, почему — в actual_transformed_response.xml вижу дополнительные поля: inn и snils

Эволюция нашего использования XSLT в SOAP-тестах

В нашей системе есть SOAP-методы и есть автотесты на них. В автотестах применяются файлики transform.xslt — чтобы можно было переформатировать ожидаемый результат и проверять только те поля, которые нужны нам в данном тесте.

См также:
Folks — open-source проект с API-тестами на Java → там есть пример автотеста на SOAP с transform.xslt



Этап 1. Сортировка


Сначала мы использовали transform.xslt для сортировки данных. Просто чтобы тестировщик мог указать в response.xml поля в любом порядке, чтобы перестановка местами не приводила к падению. А потом начали трансформировать ответы...


Этап 2. Исключение часто меняющихся полей


Исходно мы начали применять трансформацию для исключения строки из проверки. У нас есть стандартизация адресов, которая определяет кучу параметров, в том числе код КЛАДР или ОКАТО. А они могут меняться...

Раньше у нас было мало интеграционных тестов, проверяющих все поля, а теперь они есть в каждом из 20 заказчиков, причем по несколько штук (на каждый тип контрагента). И вот если вдруг в КЛАДР / ФИАС что-то поменялось, тестировщику приходится ходить и уныло актуализировать тесты. При том, что эти тесты не про кладр-код, они про другое. На тестирование кодов КЛАДР есть другие тесты.

Так что нам надоело поднимать интеграционники каждый релиз, и из проверки адреса выкинули коды и дату актуальности КЛАДР (тоже с каждым обновлением менялась):


<xsl:apply-templates select="@* |
         cdi:field[
         @name!='kladrActualityDate' and @name!='kladrCode' and @name!='okatoCode'
]">

четверг, 26 апреля 2018 г.

Классификация тестирования


Разделы видео


  1. По знанию системы
  2. По позитивности
  3. По целям (объекту)
  4. По исполнителям (субъекту)
  5. По времени проведения
  6. По степени автоматизации
  7. По состоянию системы
  8. По формальности

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

Anyway, про классификацию часто спрашивают на собеседованиях, так что совсем обойти ее стороной я не могла ツ

Статьи про классификацию

Инструменты для Pairwise

Desktop (windows, linux)


Самые популярные:

Есть еще куча разных, искать тут — http://www.pairwise.org/tools.asp


Mac


Для тех, у кого Мак - пару идей:

— можно скачать отсюда https://sourceforge.net/projects/allpairs/. Там python скрипт, который через терминал запускается → https://testitquickly.com/2017/02/13/allpairs/

— PICT тоже должен работать, вот этот https://github.com/Microsoft/pict

— или попробуйте с этим сайтом http://alarcosj.esi.uclm.es/CombTestWeb/combinatorial.jsp

Online


Так же есть онлайн тулза — https://inductive.no/pairwiser-tool/. Позволяет отметить отдельные пары как невозможные.


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

пятница, 20 апреля 2018 г.

Как я забыла проверить обрыв соединения в процессе работы

У нас есть обратный поток в JMS, но обычно мы отправляем сообщения в EMS (Tibco). Тут возникла задачка отправлять сообщения сразу в два потока: EMS и RabbitMQ.

Так как на EMS уже все проверено и протестировано, размышляю я, моя задача только в том, чтобы проверить, а работает ли тоже самое для RabbitMQ. И даже учла возможность нерабочей шины! Проверила разные варианты, причем в автотестах:

  1. Настройка включена, параметры настроены — все работает.
  2. Настройка включена, параметры не настроены — в лог падает ошибка.
  3. Настройка выключена, параметры настроены — сообщения НЕ уходят, настройка то выключена.
  4. Настройка выключена, параметры не настроены — сообщения не уходят, проверки на корректность параметров нет (ошибки не валятся).
См также:
Применение класса «ноль-не ноль» при подключении к JMS — подробнее о том, почему именно такие тесты.

Все хорошо, все работает. А если настройка выключена или сам рэббит не работает — тоже все хорошо. Отдали Заказчику на тестирование. Они проверяют на своей стороне и приходят с вопросом:

четверг, 19 апреля 2018 г.

Типы границ на примере стиральной машинки

Это статья из серии «Теория в картинках»

В моей классификации есть всего три типа границ (мнемоника ЛТП):

  • Логическая — ограничение, накладываемое логикой, не программой.
  • Технологическая — ограничение, накладываемое используемой технологией
  • Произвольная — ограничение, накладываемое аналитиком или разработчиком.

(Откуда взялась моя классификация, я тоже напишу, но чуть позднее в другой статье. Скажу лишь, что автор типов — Алексей Баранцев, переиспользовать в книге / статьях разрешение давал)


Типы границ на примере стиральной машинки


(Пример любезно предоставлен Юлией Мироновой)

У вас есть стиральная машинка.

1. Логическая: нельзя засунуть меньше 0 киллограммов белья. Это логика.


суббота, 14 апреля 2018 г.

Не заставляйте меня думать. Стив Круг


Ссылка на OZON

Боже мой, где эта книга была раньше? Это же просто прекрасно! Книга о юзабилити, которая.. юзер-френдли! Тонкая, много картинок, большие отступы между абзацами, читается легко и быстро... Must read!

Как сам автор пишет, он хотел, чтобы его книгу можно было прочитать за время перелета или другого длительного ожидания, но одного. Это круто! Тоже хочу такую книгу. На самом деле я свою книгу для начинающих исходно планировала как второго Савина, тоже тоненькую. Мол, что там такого рассказывать то? Но что-то где-то пошло не так  Будет толстая, как серия «Head First O`Reilly». Ну и ладно! Зато у меня примеров реальных много, это полезно. Но потом! Потом хочу тоненькую книжку, вот как эта от Стива Круга )))

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

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

Я при чтении не чувствовала какого-то раздражения из серии «здравствуй, кэп». Да, многое кажется очевидным, но при этом в духе «Да! Да! Именно так и надо», а не «Пффф, я и так это знал» 

Мысли, которые я себе выписала:

пятница, 13 апреля 2018 г.

Мнемоники: БЛОК, СЛОН и NOPE

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

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

Михаил: БЛОК




Вера: СЛОН



четверг, 12 апреля 2018 г.

Тест должен быть конкретным!

Прочитав тест, я должна понять:
  • Что мне сделать;
  • Как это сделать;
Допустим, мы тестируем навесной замок:


Как будем тестировать? "Ну, я его открою и закрою" или “проверить, что он открывается и закрывается” — это не тест.

четверг, 5 апреля 2018 г.

Классы эквивалентности для строки, которая обозначает дату

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

Но потом доходит до дела и сразу ступор: а как применять классы эквивалентности где-то еще? Ладно, используем правило «ищи число»: если речь идет о поле с символами, берем длину поля (число) и тестируем на границы. Вроде все хорошо, логично и понятно.

Однако на своих студентах я заметила, что это правило стало серебряной пулей. Если это нечисловое поле — по границам тестируем ТОЛЬКО на длину. Точка. Просишь протестировать дату, получаешь примерно такой ответ:
  • Нормальная дата (17.03.2018)
  • Дата «в прошлом» или «в будущем» (смотря что подходит под ваше ПО)
  • Пустое поле
  • Нафигачили туда 100500 символов
  • Ввели «0»

За сим границы и проверены. И даже ноль проверен, чем тренер недоволен? А тренер недоволен тем, что по границам вместо ДАТЫ тестируется СТРОКА. Поэтому я предлагаю написать проверки именно для даты. И прежде, чем читать дальше, отложите книгу в сторону и попробуйте сами набросать эти проверки.  А потом сравните, все ли вы нашли?




Четкий формат дд.мм.гггг


Допустим, я могу ввести в профиле свою дату рождения и система сама посчитает, сколько мне лет. Формат даты известен заранее, на поле стоит маска, дату в другом формате я ввести не смогу.

Додо книга


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

Отличная книга из серии success-story про развитие бренда, как книги про Starbucks, Zappos, Toyota и т.д. Тоненькая, читается легко и быстро, я за пару поездок в метро прочитала.

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

В Додо все, кто приходит в компанию, начинают с кухни. Делают пиццу, моют посуду, столы, месят тесто... Все, включая топ-менеджеров и региональных директоров. И сам основатель, Федор Овчинников, постоянно приходит поработать в свою пиццерию, чтобы лучше понять саму суть работы.

вторник, 3 апреля 2018 г.

Folks — open-source проект с API-тестами на Java



Знакомьтесь, это Folks! Проект с открытым исходным кодом, сделанный на основе реальной системы. И в этом его ценность — это не просто абстрактный тестовый проект, написанный под студентов, неприменимый в реале.

Ссылка на документацию — https://testbase.atlassian.net/wiki/spaces/FOLKS/overview (доступна без авторизации)

Что интересного есть в проекте:
  • Требования на поиск — можно проверить свои познания в тест-дизайне и тест-анализе.
  • Фреймворк автоматизации — самое важное, что дает система. Возможность пощупать реальный фреймворк автоматизации. Увидеть, что автотесты — это не обязательно чистый код, это могут быть просто... Эксельки. Да-да!
  • Код есть, GUI нет — тоже важное свойство. Если вы хотите проверить какую-то теорию, то только через автотесты. Для тестировщика важно уметь придумывать тесты ДО того, как их можно будет пощупать, но это тяжело. Осилите?))
  • SOAP и XSLT — добавили в систему недавно, чтобы поиск можно было дергать и по SOAP в том числе. Сделано под будущий курс интеграционного тестирования, но пользоваться можно уже сейчас!
Тут и свои навыки тест-дизайна можно проверить, и баги в коде найти, и поавтоматизировать попробовать... Welcome!

См также:
Автотесты на уровне API для Java-приложений — доклад с SQA Days, где я рассказываю принципы, заложенные в тестовый фреймворк автоматизации.


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

Также буду делать дополнительные обучающие видеоролики, чтобы еще проще было начать автоматизировать в фолкс. Буду показывать, как это все делается. Ждите Smile :)

Панбагон. Вам не хватает «минус 4 тыс» на балансе

Попробовала я тут на wildberries списать деньги с баланса. Благо что деньги есть 5000 (делали возврат), а у меня заказик на 700р.

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

«У вас не хватает -4 768 рублей»

Ошибка баланса

Вот так 

понедельник, 2 апреля 2018 г.

Кодеры за работой. Питер Сейбл


Ссылка на Литрес

Это оказалось немного не то, что я ожидала 

Судя по названию «кодеры», которое немного обидное, я думала это будет что-то типа «Софт отстой», весело и с юмором. Как потом оказалось, автору просто понравились серия «Писатели за работой» журнала «Paris Review» и книгой «Founders at work» (Учредители за работой) издательства Apress.

На самом деле книга — это интервью автора с 15-ю крутыми разработчиками, включая создателя Unix и даже Дональда Кнута. Вот вроде интересно, но... Есть минусы:
  1. Вечная стена текста — очень сложно читать, хоть бы абзацы выделяли, где вопрос автора и ответ разработчика. А перед следующим вопросом пустую строку. Книга меж тем — толстый талмудик. С одной стороны, улучшение читабельности через пустые строки еще больше ее раздует, но зато читать приятнее будет.
  2. Все разработчики — очень крутые, не спорю. Но все начинали с перфокарт :) Поэтому слушать их вроде как интересно, но... Не слишком актуально.

вторник, 27 марта 2018 г.

Поле добавили, а оно не заполняется

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

Поставлена задача — добавить новое поле в карточку. Это простая задача, ее даже тестровщики у нас умеют делать. Добавил в java-класс, в модель, указал правила... Есть отдельный чек-лист проверки: что вручную глянуть, что по коду, а что в автотест добавить. Все просто.

Но фишка в том, что поле не простое. Мы добавляем «ФИО руководителя», которое будет заполняться по данным из ЕГРЮЛ. Тут хитрая штука: чтобы обогатить карточку, нужно объединить ее с карточкой из егрюл. Но объединять можно только карточки одного типа (ЮЛ с ЮЛ, ЕГРЮЛ с ЕГРЮЛ итд). Поэтому по данным ЕГРЮЛ создается его зеркальная копия:
И вот это зеркало уже объединяется с нашей карточкой → профит, данные получили и свои, и «официальные».

суббота, 24 марта 2018 г.

Изучаем XML. Эрик Рэй


Ссылка на Литрес (стоит 190р)

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

Книга написана простым языком, ее поймут не только разработчики. Эрик Рэй рассказывает про XML с нуля:

  1. Что такое XML (eXtensible Markup Language) и зачем он нужен.
  2. Разметка XML.
  3. Ссылки внутри документа.
  4. Таблицы стилей.
  5. Моделирование: DTD. XML Schema.
  6. Трансформация: XSLT.
  7. Поддержка многоязычности.
  8. XML-программирование.

пятница, 23 марта 2018 г.

Стоимость исправления ошибки на разных этапах разработки ПО

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

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


Но это еще реально. А вот если мы уже все построили (написали код), то некоторые изменения просто нельзя внести и приходится мириться с багом. А даже если можно, то стоить это будет сильно дороже:
— аналитику поправить ТЗ;
— архитектору придумать, как поправить минимальными усилиями;
— разработчикам внести правки.

пятница, 16 марта 2018 г.

Эволюция фильтра проектов в джире

У нас в JIRA есть основной проект (назовем его ALFA) и проекты под каждого Заказчика.
Но мы же не единственная команда, которая использует джиру, так что реально проектов еще больше. Свои надо фильтровать.

Сначала их было мало, поэтому использовался простейший синтаксис перечисления:

project = ALFA OR project = BETA OR project = GAMMA

Полный запрос:

(project = ALFA OR project = BETA OR project = GAMMA) AND fixVersion = Backlog AND resolution = Unresolved 

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

Но потом запрос стал выглядеть как-то так:

(project = ALFA OR project = BETA OR project = GAMMA OR project = Котики OR project = Почемучка OR project = "Что бы еще придумать" OR project = Уточки OR project = Инстинкт OR project = Первый OR project = "Ну и хватит") AND fixVersion = Backlog AND resolution = Unresolved 

среда, 14 марта 2018 г.

Как видеть только свои задачи в Джире

Инструкция подходит для тех случаев, когда у вас один аккаунт на несколько человек. Как видеть только свое? У нас в школе для начинающих в JIRA один аккаунт на всю группу, так что статья написана для них.

Но вы тоже можете поэкспериментировать на нашей тестовой площадке! Итак, наблюдаем за своими задачами:

1. При создании задачи промотать поле до поля Label (Метки) и внести там свое имя и фамилию без пробелов. В моем случае OlgaNazina:

Добавляем метку при создании задачи

Если такого поля нет, добавляем его: Настроить поля → Метки (ставим галку, поле появляется)

Если поля нет, настраиваем

понедельник, 12 марта 2018 г.

Бесплатные тестовые площадки

На сайте Testbase появился новый раздел: «Test it — бесплатные тестовые площадки».

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


Страничка будет развиваться. Помимо инструментов тестировщика хочу туда же разместить ссылки на тестовые сайты, где можно попрактиковаться составлять чек-листы, применять классы эквивалентности и все такое. Но это будет чуть позже. Ждите ツ


Баг-трекеры

  1. JIRA — платная, но крутая;
  2. Redmine — основной конкурент, бесплатный;
  3. Youtrack — менее распространен, чем первые два, похож на JIRA;
  4. Bugzilla — она вообще не конкурент, но если не верите…

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


Первый опыт
Второй
Третий

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


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

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

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


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


В целом все хорошо! Основные цели выполнены:
  1. Продолжили бизнес-обеды, хоть и бывало такое, что пропускали, но все же. Один раз заменили на созвон, что тоже ок.
  2. Доделала главу 2 книги (74 стр) и даже сделала половину третьей!
  3. Запустили новый курс! Про логи.
  4. Сделала кучу всего по фолксам.
  5. Сделала задел на новый курс, начала готовиться.
  6. Прочитала 5 книг
  7. Сходили в котокафе! Давно уже в плане висит, но никак не дойдем
  8. А еще сходили на квест, тоже давно уже подзабили на это.
  9. Ну и фотосессии, конечно =)) Продолжаю радовать себя ^_^

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


суббота, 10 марта 2018 г.

Логи как инструмент тестировщика

Через неделю мы запускаем новый курс — Логи как инструмент тестировщика!


Хотя как новый... Это я начала перерабатывать «Техники и инструменты». В результатах «12 недель в году» я писала о том, почему он закрылся. Но если кратенько:
  1. Сначала курс начинался просто как поиск, локализация, оформление багов. А как вы знаете, оформление багов — это нуууууудно. Очень полезно, но скукота. Ребятам не нравилось, да и записывались мало народа, хотя на моем интенсиве все познали, как это тяжело: грамотно описывать баги.
  2. Я добавила в курс всяких разных инструментов и техник. Получилось круто, но много.
В курсе появилась куча крутых задач:

— Залезть на сервер linux, найти нужный лог, изучить стек-трейс.
— Перехватить сообщение в консоли разработчика.
— Прочитать ответ, пришедший с сервера.
— Найти баг кеширования на сервере.
— ...

И первые темы (логи и кеш) заходили на ура. Ребята впервые знакомились с новыми инструментами, это так прикольно: зайти и пощупать. ДЗ сдавались УХ, практически сразу! А потом начинались темы по оформлению багов и интерес постепенно спадал.