А как научиться тестировать?

Анадысь случилась со мной странность.

Раз в месяц кто-нибудь из внешнего мира спрашивает меня о чём-то, связанным с тестированием.

Чаще интересуются, как стать тестировщиком. Чему учиться, где учиться, как учиться… Где лежит легкий путь к тому, чтобы стать программистом, например 🙂

Мне очень интересно общаться в таком стиле. Ментор я, гыгы.

Но одно из обращений недавно закончилось моим провалом в роли ментора.

Эпик фэйл.

Аустерлиц.

Линия Мажино.

Один парень (дефолтный сити) решил оценить свои способности к тестированию посредством тестирования программы «ListBoxer». Меня он попросил проверить его результаты по найденным ошибкам в том приложении.

Правильный настрой. Правильное стремление.

Но!

Но сдерите с меня шкуру и сделайте из нее чучело для музея багов на планете Багтрекер, однако я и тогда буду плеваться при словосочетании «Самостоятельно учиться тестированию посредством тестирования ListBoxer».

Это очень, очень плохой старт.

Да, в этой аппликухе есть много багов.

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

Но самостоятельно это делать нельзя. Это очень «сферическое» тестирование. Это не учеба, а проверка навыков которых еще нет.

Тестировать этот листбоксер можно только в рамках семинара или тренинга, когда рядом сидит опытный Алексей Баранцев, и всячески помогает строить правильные рассуждения о том, что и как мы будем тестировать. И почему. И почему именно так, а не иначе. И как из сплошного текста справки (там справка весьма дурная, неструктурированная) можно составить список проверок.

А самостоятельная работа с листбоксером молодому тестировщику только навредит.

Никто не начинает играть на гитаре с попытки выдать коронное арпеджио Ингви Мальмстина. Начинать надо с «Маааалааалетние шалавы», или с «Я сижу в одиночке, мама», или с «Из-за леса выезжает конная милиция», или с «Рэйп мииииии, энд нафынг элс мэттерс», или с «Группа крови на рукаве» — по вкусу и по интересам.

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

Игра должна доставлять удовольствие.

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

Знаете, сколько народу ненавидит гитару и музыку вообще просто потому, что когда-то, желая научиться играть «как Цой», решали сперва пойти в музыкальные школы? Там им предлагали зубрить мажорные и минорные гаммы, играть этюды Тарреги и Пухоля, а до «Цоя» все как-то дело не доходило…

Поэтому проверять достижения на ниве тестирования листбоксера я отказался.

Проблемы следующие:

  1. Понту мне знать, сколько багов ты в нем найдешь? Одно только количество багов не говорит о крутости, внимательности или предрасположенности к тестированию.
  2. Сообщение о том, что «я тестировал программу ListBoxer» окружающим тестировщикам и работодателям не говорит ни о чем существенном. Да, тестировал. И что?
  3. Сообщение о том, что «я тестировал программу ListBoxer и нашел 40 ошибок» не говорит ни о чем существенном. Да, тестировал. Нашел 40 ошибок. И что? Сколько их там всего? Насколько важными были найденные ошибки? А требования откуда взял?

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

Ответ:

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

Агррррх!

Снова я предложил плохой вариант — не ориентироваться на брата, а слушать меня, атамана и его помощника…

А тестирование не начинать с «у меня есть только 60 минут, аааааа, я тупой и не успеваю!», а с анализа…

У программистов (программеров, если угодно) совсем не тот подход к тестированию, на который следует ориентироваться.

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

А это плохой старт.

Агррррх! Агррррх! Агррррх! Агррррх! Агррррх! Агррррх! Агррррх!

Впустую.

Брат-программист всегда круче молдаванского тестировщика:

Ошибок за 1 час нашел мало 🙁 Стыдно показывать.

Агррблиаррх!

Судя по тому, что обмен сообщениями прекратился, мир потерял еще одного тестировщика. Ну… я старался, но раз уж так…

Теперь вопрос — а как научиться тестировать?

Ходить на курсы

Ну, Алексей Баранцев сделал курс «Быстрый старт в тестировании ПО», но и тот рекомендуется «Для тех, кто уже начал работать тестировщиком, но всё равно не знает, что это такое», или же «Для тестировщиков, которые уже поработали какое-то время, и теперь хотят упорядочить накопленные знания».

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

И курсы про введение в тестирование Натальи Руколь (тоже плохому не научит) требуют какой-никакой подготовки в теме.

Разве что люксофтовский тренинг «Тестирование — как и с чего начать» кажется интересным в нашем случае, но у Люксофта такие цены, тааакие цены…

Нет, конечно, в стенах Люксофта есть шанс нарваться на самого Александра Александрова и позадавать ему вопросы, но его особенную ценность можно ощутить, если ты и сам наполовину знаешь ответы на свои вопросы, а не…

К слову, от разъяснений того, «что такое тестирование», Александров очень грамотно и дальновидно не отнекивается:

Напрашиваться на работу куда угодно и учиться «на ходу»

Это почти что мой вариант, но то, как учили меня — это слишком по-джедайски.

В частности, мне предложили тестировать систему, которая еще не существует.

Я думал, что попал в логово неадеквата.

Я думал, что надо бежать.

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

Я думал, что буду бить по мордасам.

Я был совершенно не готов к подобным предложениям.

Но от злости и/или страха, в общем, сосредоточился и справился. Не сразу, но справился.

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

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

В общем, учиться на работе можно только при наличии мощной мотивации.

Бо на самой работе учиться не придется. На работе надо будет работать.

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

Выучиться в учебном центре любой крупной компании

Ну, кто там у нас крупный?

Luxoft?

GlobalLogic?

Epam?

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

И на курсах компании GlobalLogic будут учить (прививать) внутренней политике компании. А она может отличаться от внутренней политики Epam или любой другой. В частности, там учат работать в БОЛЬШИХ компаниях. Понимаете же, что в мире существуют не только БОЛЬШИЕ компании? В маленьких компаниях тестирование тоже есть, но оно слегка другое 🙂

И иногда эти курсы очень платные.

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

Но, в сущности… из учебных курсов тоже иногда вырастают серьезные эксперты, которых заранее никак не вычислить.

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

Типа, тестировать ВООБЩЕ ученик будет учиться сам…

И поскольку тестирование все ещё находится в состоянии развития, почти все УЦ учат по собственным учебникам. И акценты в учебниках расставляются по-разному, в зависимости от их авторов и их направленности.

Учиться по блогам

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

Подробно я разорялся об этом в записи «Трудности исследовательского тестирования»

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

Пообщаться с уже взрослыми тестировщиками

Способ самый грамотный.

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

О как просто!

Не читать книги и статьи о вождении танков, а пообщаться. Это и быстрее и проще.

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

И самое простое и эффективное — водитель танков быстро поймет, предрасположен ли ты к такой работе. Как он это сделает — неважно, но он это сделает обязательно. Из интереса.

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

Или наоборот — презреть рекомендации и стать самым крутым водителем танков в мире, и пусть эти уроды утрутся слезами 🙂

А где их взять, тестировщиков-то?

  • В своем ближайшем окружении.
    • Покрутить головой. Кто там у нас самый симпатичный и адекватный тестировщик? Пригласить его в обеденный перерыв на три вопроса.
  • В рунете.
    • Крутить яндексы и писать письма.
  • В интернете.
    • Крутить гуглы с переводчиками, и писать письма всем сразу. Тот же Джеймс Бах часто и легко общается по скайпу с тестировщиками со всего мира.

Да, и если кто-нибудь из матерых посоветует для начала протестировать за час листбоксер… ну, вас мягко послали нафиг. Это бывает. В ответ надо не тестировать листбоксер, а искать новых тестировщиков.

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

Хотя и в тестировании до черта места для программирования, Алексей Баранцев это постоянно гарантирует. Но для программирования нужна определенная предрасположенность. И если она есть, то искать работу тестировщика незачем.

35 ответов на “А как научиться тестировать?”

  1. Забавно.
    Под записью появилась кнопка ‘Like’.
    Я могу ее нажать, и появиться в списке нажавших. А отжать кнопку почему-то не получается.
    Upd Ага! Надо нажать на кнопку ‘Like’, переместиться на страницу со списком всех записей, которые я отметил когда-либо нажатием этой кнопки, и там нажать новую кнопку ‘Delete post’.
    Хотя сознание подсказывает, что «удалять» записи — опасно 🙂

  2. Слушай, ну очень спорные суждения.
    Не понял почему ты против того, что бы человек начинал с ListBox. По мне — если человек сделал первый шаг к тому, чтобы понять КАК ТЕСТИРОВАТЬ — это уже замечательно!
    По поводу атаманов…кхе кхе. У меня не было ни атаманов ни атаманш. у меня были блоги, книги и свои мозги, которые постоянно «желали странного». Оглядываясь назад я думаю именно «желание странного» и является двигателем прогресса — не только моего, но и любого другого спеца. Другой вопрос — у меня уже был 7-летний опыт в ИТ до того, как начать заниматься тестированием. НО — про тестирование я ваааааще ничего не знал — следовательно мог бы считаться таким же новичком что и упомянутый выше «ученик» 😉
    «Вкратце — в блогах не преподают основы. В блогах пишут о разных аспектах, предполагая, что основы уже понятны. А мы сейчас говорим про учебу с основ.»
    ИМХО — но тупому в АйТи не место. Если не понял про что — ищи в другом бложкге или книге эти самые основы.
    Кстати — я очень неплохо поднял скилы аутсорсингом. Дешевым но очень действенным. Это у тебя кстати отсутствует. Можно отнести к «Напрашиваться на работу куда угодно и учиться «на ходу»», но думаю можно вынести и отдельно — ИМХО.
    Много ИМХО проставил — но ей богу затронул ты тему слишком топкую — обучение и менторство.
    Единственное с чем соглашусь на 100% — опыт, шишки, мозоли -> профессионализм.

    • А я бесспорных утверждений не делаю, я о них умалчиваю 🙂
      Без менторов самостоятельно ни в одной отрасли невозможно развиваться. В первую очередь, есть потребность с кем-то сравниваться. На кого-то равняться. Кому-то показывать свои достижения и получать адекватный «обратный фидбэк». Это можно сделать как явно, так и неявно. Но ментор есть всегда и у каждого, даже если «в сети есть ответы на все вопросы».
      Расскажи подробнее про поднятие навыков аутсорсингом. Я это дело вообще не рассматриваю в качестве обучательного. Обучение во фрилансерстве чем-то похоже на следующий анекдот:

      Приходит мужик в цирк:
      — За $100 я могу ежедневно показывать у вас следующий номер: прыгать головой вниз на бетонную плиту и оставаться невредимым.
      Его моментально взяли.
      В первый же вечер он прыгнул вниз головой на бетон, отскочил, встал, целый и невредимый, затем говорит радостному директору цирка:
      — Я буду это делать только за $10 000 за каждое выступление.
      — Но вы же говорили, что будете брать по $100!
      — Говорил, но тогда я не знал, насколько мне будет больно стукаться головой о бетон.

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

  3. Про блоги есть ещё такая опасность — люди там пишут своё мнение. Бывает так, что это мнение — полная ерунда, которую читать не то что не полезно, но и вредно.
    Ещё не хвает совета — идти на форум тестировщиков и там читать и спрашивать.
    Но главное, конечно, это идти работать в тестирование.

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

  4. 1) К теме.
    http://www.developsense.com/essays/TestingCareer.html
    2) Для тех, кто потянет на английском, БЕСПЛАТНЫЙ курс
    http://www.testingeducation.org/BBST/
    Black Box Testing Course: Project lead: Cem Kaner. Today, we publish lecture slides, sample exam questions, many worked examples, and background reading papers on testing and on the teaching of testing. We’re always extending these. In addition, we’ve started creating videotaped lectures and will soon start writing multiple-choice questions and other automatically-gradable questions that students can use to check their own knowledge. All these materials are available to students and teachers anywhere in the world, for free.
    Если кто не уверен, что готов сразу нырнуть с головой, могут скачивать и изучать материалы выборочно.
    Например, к вопросу о справке — раздел Specification-based testing (http://www.testingeducation.org/BBST/BBSTSpecificationTesting.html)
    Слайды: http://www.testingeducation.org/k04/documents/specBased.pdf
    «Вот не знаю, сколько времени для тестирования дается, мне брат дал 1 час.» Ну а project manager вообще может дать 15 минут. А в идеале, хотелось бы этак пару периодов существования Солнечной Системы — тестировать можно бесконечно, и продолжать находить баги.
    Вот хороший раздел на эту тему: http://www.testingeducation.org/BBST/BBSTRisk-BasedTesting.html
    3) Дополнение к способу Алексея «Пообщаться с уже взрослыми тестировщиками»
    Есть такой веб-сайт: http://weekendtesting.com/
    Там можно потестировать вместе с «уже взрослыми тестировщиками».
    На данный момент, имеются подразделы Азия, Европа, Австралия.
    Почему бы не открыть свой там или на базе портала в зоне ru?

  5. Про 1 час (или 15 минут):
    Для демонстрации того, что человек умеет, этого действительно может быть более чем достаточно.
    А вот научиться…
    Есть замечательная книжка Малькольма Глэдуелла «Гении и аутсайдеры» («Outliers»), он изучал истории успешных людей, пытался выявить принципы, которые позволили им добиться успеха, и изложил результаты своих исследований в этой книжке (ну и сами истории успеха тоже).
    Так вот, среди прочего там сформулировано «правило 10000 часов»:
    “The idea that excellence at performing a complex task requires a critical minimum level of practice surfaces again and again in studies of expertise. In fact, researchers have settled on what they believe is the magic number for true expertise: ten thousand hours.”
    Всё очень просто. Всего 10000 часов — и вы профи!

    • «Для демонстрации того, что человек умеет, этого действительно может быть более чем достаточно.»
      Немного удивлен. Что значит «демонстрации»? То было про работу, а не про обучение. 15 минут, отведенные РМ-ом на тестирование [естественно, не всего приложения, а конкретной фичи или двух], — это реальный случай из моей практики, и не единственный. И вопрос ставится так: проверь, что можно билд выпускать или докажи, почему нельзя. Программер, «повинный» в last minute change обычно стоит рядом и клянется что все будет работать…
      Кстати, фича, как правило, действительно работает. Но бывают случаи, что перестает работать смежная с ней, и вот в этом и есть главный фокус (или challenge).
      А РМ вовсе не зверь, просто неверно оценивает объем работы. Показав «хвост» проблемы, вполне можно первоначальные 15 минут удвоить или удесятерить, уже на основании _своих_ выкладок насчет объема работы. Ибо с обнаруженными, но неидентифицированными дефектами продукт выпускать РМ-му не хочется, поскольку он(а) не может риск определить.

    • «Всё очень просто. Всего 10000 часов — и вы профи!»
      Может, кто-то уже начинает прикидывать.. «Ага, 40 часов в неделю, 1000 разделить на 40… Ура! Через 25 недель, или 5-6 месяцев, я смогу полноправно называть себя профи!»
      Да вот не все так просто. Не каждый час протирания кресла в офисе пойдет в счет. И вообще, если даже согласиться с определением «единица времени труда», для каждого занятия абсолютное значение будет разным — у каждой complex task «комплексность»-то своя, равно как и скорость набора опыта, и уровень риска. В одиночку тестировать multi-tier систему, может, и посложнее, чем пилотировать вертолет или оперировать на сердце, да только продукт с пропущенными багами это не то же самое, как пациент с незашитыми сосудами.

    • Абсолютно согласен с «Не каждый час протирания кресла в офисе пойдет в счет». Но вопрос о 10 000 часов. И если «некто» развивался эти 250(!) недель да еще и не в одном проекте — то он вполне может претендовать на звание «профи». Второй вопрос «выслуги лет» — к сожалению в ИТ она присутствует (((

    • Как там Суворов говорил? — «Воевать не числом, а уменьем».
      К любым числовым критериям относиться следует очень осторожно, если не хочешь быть обманутым.
      100 багов — это много или мало? Температура 38,5 — это улучшение или ухудшения? Все ли дети к 7 годам одинаково развиты умственно?
      А если человек в течении 5 лет был в ИТ, работал тестировщиком на нескольких проектах, в нескольких компаниях, то это равнозначно может означать диаметрально противоположные вещи: или профи, или летун.

  6. Про Weekend testing:
    Была у меня мысль это дело организовать, я даже для пробы поучаствовал в нескольких европейских сессиях. Но что-то меня не очень это впечатлило. Идея вроде бы классная, но на практике получается не так хорошо, как хотелось бы.
    Но если кто-нибудь готов попытаться сделать русскоязычное отделение WT — я готов поспособствовать ( как имеющимися техническими ресурсам, так и вложить некоторое количество своего труда в организацию).

  7. «Раз в месяц кто-нибудь из внешнего мира спрашивает меня о чём-то, связанным с тестированием. » —
    да, вы правы Алексей, во внешнем мире с тестированием вообще туго, например на Дальнем Востоке (Россия) про тестирование практически никто и не слышал, нет у нас курсов, и интернет медленный чтоб смотреть их он-лайн, и дороговат чтоб книги и блоги читать.
    И теорию спрашивать смысла нет — все равно ее никто не знает, Тут и остается ListBox’ер — как показатель заинтересованности человека окунуться в новый мир знаний.
    Естественно, в центре России, уже все книжки скачали и перечитали все блоги, видео пересмотрели и считают себя мэтрами — не правильно их видите ли учить начинают.
    Может для Москвы такая позиция и актуальна, но для внешнего мира — любой источник знаний уже как лучик света.

    • Я сейчас сижу в Кишиневе, и в отношении Москвы тоже сижу во «внешнем мире», населенном эльфами и гоблинами 🙂 А вообще я имел ввиду «кто-то не из Молдовы».
      Однако вернемся к теме — представьте себе, что мы находимся непосредственно в Москве, которая полностью оснащена интернетами и курсами, но у нас нет компьютера, и нет доступа к курсам (да и непонятно, какие именно курсы нужно посетить и хз, сколько это будет стоить).
      И представьте себе, что мы интересуемся биологией, а не тестированием. И что нашли мы интересного жука, и надо его как-то классифицировать, описать, препарировать и тд.
      А где искать информацию о том, как его препарировать? В школьной библиотеке? В государственной библиотеке? В академии наук? В интернете?
      Дык вот, если я ломанусь препарировать и описывать жука без предварительной подготовки, но под стать «лучшим образцам научной биологии в моем понимании», то мой отчет, вероятнее всего, будет слабым и малополезным. Я в биологии разбираюсь только в пределах остатков знаний из школьного курса, а там мы никого и никогда не резали и не препарировали, кроме растений и луковых пленок, которые сували под слабые школьные микроскопы.
      А если я сделаю такой слабый отчет, то моя дальнейшая карьера биолога будет смутной — или засмеют, или я застесняюсь, или вообще решу, что биология — бредовое занятие, для слабаков. То ли дело — свиней резать!..
      Ошибка в том, что я полез на амбразуру самостоятельно, без подготовки, без понимания. Надо было сперва найти кого-нибудь, кто жуков режет и по полочкам раскладывает, и спросить про это интересное и заманчивое дело.
      Вот тогда у нас получился бы хороший старт.
      С листбоксером получается точно такая же картинка. Самостоятельно его раскусить можно, но вряд ли…
      Ментор нужен в любом деле. Вон ведь, Баранцев постоянно тестировщикам сказку про живинку рассказывает. Там есть фигурант по делу — очень положительный дед Нефед:

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

      Понимаете, что эта схема обучения появилась ДО ТОГО, как появились интернет, курсы, книги и блоги? Это очень ядрённая основа всех основ в любом производстве, техническом или научном, это корень всего обучения.
      К слову, в интернете есть материал о том, как препарировать жуков (link). Я и не знал, что это дело такое хитрое и замороченное 🙂
      Обучение происходит только через осмысление. Одно чтение не помогает.
      Но на тему «есть информация в интернете» могу рассказать отдельный случай:

      Мой сосед — паталогоанатом, работает в какой-то научной лаборатории. Он суёт срезы тканей под микроскоп и по одному ему понятным признакам делает заключения о состоянии исследуемых тканей. Нужная профессия, особенно если сложные дела с живыми телами творятся, и без отдельной экспертизы не разберешься.
      Еще он увлекается мелкими гаджетами типа читалок электронных книг и плеерами разных модификаций.
      Но!
      Этой фигней увлекается и он сам, и его ближайшее окружение (тоже все люди взрослые, с учеными степенями). И всем им разными способами достаются эти устройства в оригинальной комплектации — ноль русского языка в меню и в доступных кодировках для воспроизведения текста. И обрусифицировать все это дело он просит меня.
      Вчера зашел к нему для русифицирования очередного читальщика от SONY. Дело минутное, но повторяется снова и снова, поэтому уже скучное…
      А он мне взял и презентовал мини-торт.
      Я мини-торт взял (еще бы), и решил, наконец, вразумить «ученого соседа» на тему перепрошивания гаджетов. Мол, дело простое, обойдешься без тортов. Посмотри сюда, сравни номер наличной версии с той, которая указана в прошивке, потом запусти вот это, уже заранее подготовленное автором прошивки… Проблем быть не должно, информации в сети — море…
      А он мне говорит: «По моей специальности в сети тоже море информации. Дать тебе образец кожи для исследования?»
      Я заткнулся и пошел к себе уничтожать торт.

      Такие дела.

  8. Знакомая программа ListBoxer — мне этот сферический конь попадался от одной конторы в ответ на резюме.
    Первое что я сделал — открыл справку, принял то, что справка к этой программе = её строгое описание, и обложил справку множеством (ху..) багов.
    А потом на основе того, что из этой справки можно было почерпнуть недвузначного по поводу функционирования самой программы, протестировал в самой программе. ну вот например — в справке (в ТЗ, документации) не описано в каком формате должен сохранятся файл? — Для меня как для тестировщика — это означает что не определено требование к тому, как должно происходить сохранение — и соответственно пока не будет чётко понятно, как должен выглядеть результат — начинать проверку соответствия невозможно. Проверить что прогармма «может создать какой-то файл?» А при открытии его-же обрезает данные? А с чего вы взяли что это баг? Может так и должно быть — это такой хитровы.. хитрый формат сохранения файла. У вас-же в документации не описано как это должно происходить правильно. Если ожидаемый результат не однозначен — как вы можете определить удачность либо нет тесткейса?
    Получилось что документация вообще никуда не годная — а степень покрытия функционала тестами на основе такой документации — почти никакая.
    Заархивировал всё и отправил нанимателю. Мне пришёл ответ, что я тестировать не умею, и в самой программе нашёл очень мало багов.
    Из моего теперешнего опыта — самый верный способ сорвать сроки сдачи проекта — (или отдельного модуля) — это когда програмисты работают вообще без ТЗ на уровне «сделайте модуль билинга быстро!» — а потом, когда до сдачи остаются сутки — просят провети «полное тестирование» — и дают одну только программу и устное пожелание «проверь по быстрому».

    • Дмитрий, к слову, разве вы не смогли бы протестировать что-нибудь при отсутствии четко сформулированных требований?
      Есть же требования общего плана, те, которые подразумеваются под «интуитивно понятными». Есть же опыт и соображение о том, как все должно было бы работать.
      ЗЫ Про нанимателя-любителя листбоксера всё ясно. Первый признак того, что можно пройти мимо и искать других.

    • Ну тут я считаю вопрос в том, насколько тестировщик готов делать работу, которая с высокой вероятностью может оказатся тщетной.
      Моё личное мнение, к тестированию функциональности интуитивное тестиррование без чётко определённой модели результата не очень приемлимо.
      Вот на днях пример был — очень простой модуль: по базе данных скрипт должен сгенерировать файл прайса. Прайс — в формате xls. Отлично, проверяем — да, действительно формирует прайс, и таки, да, на выходе появляется файл в формате *.xls.
      И всё было-бы так хорошо и безоблачно, но как-то странно в экселе таблица результирующая выглядит. С чего бы-это? А с того, что програмист реализовал сохранить в xls = сформировать документ html — и переименовать в формат экселя. Эксель от майкрософт — это бинарный файл — эксель от нашего скрипта — хтмл, с невозможностью задать формат ячейки, тип данных и т.п.
      Так вот, с точки зрения интуитивного тестирования это не баг, с точки зрения строго описания форматов — баг. ЕСЛИ, это баг — значит чтобы его исправить нужно полностью переписывать скрипт, возможно нужно будет использовать какие-то сторонние библиотеки классов, и т.д. и т.п. и соответсвенно все тесты переделывать с самого начала.
      Обчно, я в этом месте ставлю баг блокинг, северити — ASAP и иду выяснять в как конкретно должен реализован «файл xls»? xls, xlsx, xml, csv…-?
      Возможно, клиент захочет использовать этот файл в каких-то своих автоматических приложениях. И файл html с расширением xls восприниматся адекватно не будет.
      Интуитивное тестирование — это тестирование соответсвия программы ожиданиям тестировщика. У меня в тестировании опыт относительно небольшой, и поэтому
      «требования общего плана» для автомобиля легкового например — это турбинный двигаетль на всех видах бензина, гусеницы, броня и пулемёт на крыше. Никак не могу избавится от привычки писать в смоук тестах «выдерживает прямое попадание из РПГ».

    • Dmitry,
      Приведённый Вами пример, по поводу, xls, но не в правильном виде, решаю обычно так — спрашиваю менеджера продукта как должно быть ибо это занимает времени МАЛО, а значит экономия. Спрашиваем, если нет чёткого описания КАК ДОЛЖНО БЫТЬ, по типу AS IS.
      To All
      По поводу главной идеи, как научится тестировать, тут мне нравится как изложили, да и наверно так оно будет вернее:
      -книжка;
      — форум;
      кто-то сильно знающий в области, который может сказать, годишься ты или нет.
      А также не исключается, практический навык, нужно пробовать, а иначе никак ?
      Добавлю, что научиться тестировать можно, (у меня такое мнение сложилось), вначале, практика, а потом прочая макулатуру

  9. Было очень интересно прочитать и статью, и баталии=) В принципе, все вышеперечисленные варианты развития в области тестирования я обдумывала и сама. Курсы — дороговато и нет возможности.
    По поводу фриланса… Я согласна, что глупо доверять начинающему тестировщику задание, фриланс вроде бы и отпадает. Но а что если с помощью фриланса брать задание себе…и практиковаться? Т.е. не работать за деньги. Чтоб понять могу я или нет, нравится мне данное занятие или нет? В общем, вам виднее, я пока что далека от этого.
    Автора статьи я очень хорошо поняла, так как он привел весьма близкое для меня сравнение. Я 3 года училась в музыкальной школе. Мне было 6 лет, когда я начала учиться. Сольфеджио — это был самый непонятный, страшный и нелюбимый предмет=) Только из-за него мне не хотелось ездить в муз. школу. Ну а потом еще парочка обстоятельств — и я бросила школу, о чем жалею, конечно. Хотя еще не все потеряно, я даже помню 3 произведения и половину нот и знаков, разминки для рук, а также пальцы еще весьма послушные) Плюс главное — это желание всегда.
    Но в тестировании мне наоборот сейчас интересна теория, я так в голове упорядочиваю информацию, дальше легче все понимается. Да и как можно не зная элементарной теории (глоссарий тестировщика, например) как-то дальше развиваться. А также не зная какие бывают виды, т.е. не зная классификацию. На мой взгляд, все методы хороши в меру.
    В общем, у меня есть вопрос. Какие знания нужны, в каком объеме, чтоб какая-нибудь компания взяла меня на работу?
    Я готова неделю просто ездить вникать в работу. Но насколько будет сложно? Ведь на работе нужно работать.
    И как заинтересовать работодателя своей персоной помимо бесплатной недели, если нет ОР? К сведению, я закончила ВУЗ летом. Специальность ПОАС. Как-то интересно, хочется попробовать свои силы в тестировании ПО.
    Сейчас есть выбор куда направить свои силы. Кстати, мне не очень нравится моя специальность. И мыслю я разнообразно пока что. Т.е. утверждения, что программист будет говорить «Где ошибки??? Почему так мало нашел?» ко мне не относятся.
    Я пока что не законсервировалась как мой брат. Он истинный программист со всеми вытекающими последствиями. Очень любит навязывать свое мнение. Я прошу совета. Мне он очень нужен.

    • Если денег нет и вокруг нет тестировщиков, с которыми можно затусить, то следует учиться самостоятельно. Книги, видео, окружающие предметы.
      Тестировать всё, что попадается под руку (тестировать, а не ломать).
      Не общаться с теми, кто в любой степени отзывается о тестировании негативно.
      Разделять идеи в тексте абзацами.
      Писать внятно (если есть слова, которые кому-то могут быть непонятны, вроде ПОАС — уточнять, что имеется ввиду).
      Искать работу постоянно, не ожидая ответов и не страдая моральной ерундой.
      Фриланс — не тема, там зачастую нужно сперва навыки продемонстрировать, потом уже работу получать.
      Какие знания нужны — читать объявления о найме, выписывать оттуда все малопонятные слова, гуглить и прояснять их до посинения. Где будет понятно, что непонятно — учиться.

  10. Интересная статья, кое-что из откликов тоже не банально.
    Я использую листбоксер для оценки кандидатов (опытных тестеров и совсем зеленых) по-простому. Пусть человек покажет все, что он хочет и может показать.
    Разные люди выдают разные результаты. Реально большого количества багов никто никогда не находил. Максимум, около 50-60, да и то с натяжкой. Кто-то показал знание виндовс, кто-то — инсталлятора, кто-то пустые понты.
    Также видел хороший здравый смысл при незнании терминологии и техник. У одного очень хороший навык структурирования информации (справка листбоксера) и представления ее в виде понятного документа (спека и тест кейсы).
    Кто-то нашел 20+ багов, но отвратительно описал их.
    Кто-то не может его скачать. У кого-то сломался нетбук и хрен вам, а не баг-лист…
    Одна девица внезапно для всех выявила юзабилити ишью инсталлятора (так просто, а я не заметил:-) и установила прогу хитровы…ным способом.
    Вывод: листбоксер выполняет свою задачу — помогает оценить реальные навыки и потенциал кандидата независимо от его начального опыта, знаний, текста резюме.
    Ваш кэп 😉

    • Внимание, речь шла о том, что он не помогает учиться.
      Выявлять/оценивать — да, как и многие/любые другие софтинки.

    • Ваше мнение понятно, что не отменяет противоположных…

  11. Спасибо, Вам, Алексей Лупан, и тем, кто поучавствовал в теме. ценная инфа, «для тех, кто хочет..». а притчу про пат.анатома и прошивку для читалки — надо всем новичкам рассказывать, авось их и поубавится 🙂

  12. А кто что думает о курсах Михаила Портнова? Есть сведущие?

  13. Нашел [сам там преподает, и вдруг «нашел», my ass] неплохие курсы по тестированию онлайн. Упор на практику и все поданно в игровой форме: [тут была ссылка]

  14. Они уникальные. Я весь нет обыскал и ни у кого столько практики нет. Только у нас и у Майкла Джексона. Мы не преподаем бояны 1937 года, а то что встречаем на работе сейчас. Все преподы Senior QA в международных компаниях например WIX, Epam, Luxsoft

    • Ну вы реально уникальные. Весь нет он обыскал, гугл в штанах…
      Называть Luxoft «Luxsoft», баяны «боянами», воспринимать основы профессии как устаревшую информацию (да и какую информацию о тестировании преподавали в 1937-ом? Тогда тестировщиков, похожих на Майкла Джексона, тупо расстреливали), а из всех преподавателей на сайте указан только «Магистр Ки-Ади-Мунди»…
      Чо-то как-то стрёмно.

  15. Научиться тестированию можно только на практике. Но работодатель не возьмет вас на работу без никаких навыков и понимания профессии. Тогда самый хороший выход — это пойти на курсы тестировщиков [здесь была ссылка] Можно выбрать самый начальный курс, чтобы получить базу, а потом уже устраиваться на работу и доучиваться на реальных проектах.

Добавить комментарий для Oksana Отменить ответ