Баги не пройдут!

Фото взято из открытых источников
Фото взято из открытых источников


9 сентября отмечали День тестировщика – QA Day. Кто это такие? Это люди, которые ловят багов.
Баг − это ошибка, обнаруженная в программе. Традиционно этот термин толкуют именно так. Баги могут привести к сбою программы.
Чтобы успешно с ними бороться, человечество специально обучает лучших своих представителей в учебных заведениях разной степени закрытости. Из них выходят отлично подготовленные бойцы, чья жизнь — это вечная война с багами.
Избыточное тестирование невозможно, а значит, баги вечны, как и борьба с ними.
С ними можно уживаться или уничтожать без всякой жалости и сомнений.
В зависимости от классификации и степени урона баг может влиять на систему по-разному.
Blocker – блокировщик. Особо вредные, которые могут быть причиной внезапного краха всей системы компьютера.
Critical – серьёзный пакостник.  Нарушает работу программы и подлежит ликвидации.
Major – баг с непомерно раздутым ЧСВ. Считает себя главным и решает, как и чему работать, согласно своей логике. Подлежит ликвидации.
Minor – мелкий пакостник, который своим существованием не нарушает работу программы.
Trivial – мелкие неточности и ошибки в работе приложения, дизайне, контенте.

Фото взято из открытых источников
Фото взято из открытых источников


Фича – это задокументированный баг. По легенде, этот термин создан ленивым разработчиком, чтобы не исправлять ошибку в работе. В жаргонном языке может значить необычное свойство или признак какого-либо явления.
Почему они баги?
Борьбу с багами ещё называют дебаггингом – с англ. отладка, исправление. Согласно древней истории в отчёте 1945 года об эксперименте с компьютером Mark II Aiken Relay Calculator учёные в Гарварде вклеили скотчем мотылька с комментарием: «Первый случай, когда жук действительно был обнаружен».
Фразу эту приписывают Грейс Хоппер (Grace Hopper), которая была участницей исследования и обладает внушительным списком личных достижений в программировании. Эта удивительная женщина, которая писала компьютерные программы, придумала первый компилятор и создала концепцию, ставшую основой знаменитого языка программирования COBOL.
Несчастного мотылька обвинили в причине постоянных сбоев компьютера Mark II. И с тех пор история термина bug и debugging связана с Удивительной Грейс, а 9 сентября стало Днём тестировщика.
Есть и альтернативная версия появления термина «баг». Её связывают с именем Тома Эдисона. В ней багами называли шумы и радиопомехи, которые по звучанию напоминали шорох крыльев насекомых.
Есть и третий, наиболее оригинальный вариант значения слова «баг». В мифологии есть существо из рода фейри (fairy) – Bugaboo, или Bugbear, или же просто Bug. Он был ужасен на вид и пугал детей. Видимо, до сих пор ошибку в работе приборов или программы связывают с проделками потустороннего существа.
Тестировщик или QA?
Вредный Багабу портил нервы детям и их родителям. Надо было обнять дитя и рассказать добрую сказку, то есть устранить действие бага.
По такому же принципу построена борьба с багами в IT. Есть человек, который проверяет качество программного продукта на предмет соответствия требованиям.
Суть бага не меняется. Он портит качество продукта: программы, системы или приложения. Иногда скрываются, иногда безобразничают в открытую. Найти их непросто и можно только благодаря определенным действиям. Багоборцев правильнее называть QA (Quality Assurance), которое с англ. можно перевести как «обеспечение надлежащего качества». Такой человек не просто следит за качеством работы программного продукта, но и занимается классификацией багов, делает их описание и отправляет разработчикам для дальнейшего исправления. Работа Quality Assurance – сложная и многогранная. Чтобы ею продуктивно заниматься, надо знать основы программирования, HTML и CSS, архитектуры систем, работы БД, нужно разбираться в специфике отрасли продукта, понимать, что такое кроссплатформенность, обладать определённым складом характера. Тестирование бывает мануальным, то есть вручную, и автоматизированным.  В идеале каждая команда разработки обязательно укомплектована QA. Однако так случается не всегда. А жаль. Потому что чем больше будет в мире профессиональных Quality Assurance Engineers, тем совершеннее станет наша информационная среда, наполненная приложениями, играми, сайтами.
Так что цените своих тестировщиков и не забывайте их поздравить 9 сентября!