| Я думаю, следовательно, я тестирую: важность мышления для тестировщиков |
| 26.10.2026 00:00 |
|
Странно, правда, получать деньги за использование своего мозга?Только мне кажется, что получать деньги за работу мозга и за то, как ты думаешь, действительно странно? Вполне возможно, что дело только во мне: когда в школе тебе говорят, что у тебя нет никаких способностей, и ты сгодишься только на грузчика, червь синдрома самозванца обустраивается в голове надолго. Но хватит уже о моей неуверенности в себе. Тестировщики и разработчики могут не воспринимать себя так, но на самом деле мы работники умственного, интеллектуального труда. Нам платят за силу нашего мозга и нашу способность думать — в равной или даже большей степени, чем за наши конкретные навыки. Что такое работник умственного труда? Согласно Википедии, определения работника умственного труда не существует, как не существует и краткого определения интеллектуального работника. Поэтому в этой статье я буду использовать термин «работник умственного труда», который следует отличать от «Thoughtworker», то есть человека, работающего в компании Thoughtworks. Я определил работника умственного труда в глоссарии Ministry of Testing следующим образом: Работник умственного труда, особенно в контексте разработки и тестирования программного обеспечения, — это человек, чей основной вклад и ценность проистекают из его когнитивных способностей, а не исключительно из какого-либо физического результата его работы. Например, многие специалисты могут написать тест-кейс. Но для того, чтобы он имел ценность, был направлен на риск и генерировал содержательную обратную связь, необходимы глубокое обдумывание и критический анализ. Речь идёт о том, чтобы ценить человека за его способность решать сложные задачи, глубоко и критически мыслить о сложных системах, указывать на потенциальные проблемы или неоднозначности либо связывать на первый взгляд несвязанные идеи — в той же или даже большей степени, чем за любой физический навык, который он может применять. Посмотрите на это вот с какой стороны. Разработчик может часами печатать код, а тестировщик — бесчисленное количество раз нажимать кнопки, но настоящая ценность, которую эти люди привносят, - в умственной гимнастике, предшествующей этому. Она заключается в тщательном рассмотрении шаблонов проектирования, скрупулёзном планировании стратегий тестирования, проницательных выводах при поиске неуловимого бага или творческом скачке, который позволяет воплотить в жизнь новую функциональность. Это способность предвидеть будущие проблемы, понимать сложное поведение пользователей и синтезировать информацию из различных источников, чтобы сформировать связное решение. Результатом работы работника умственного труда часто будут ясность, стратегия, проницательный вопрос, элегантное решение или точный отчёт о баге. Лучше всего тратить его время на глубокую работу, разбор сложностей, а не просто выполнение монотонных задач. Признание вклада работника умственного труда означает понимание огромного интеллектуального капитала, который он привносит. Создание среды, способствующей глубокому мышлению и решению проблем, имеет первостепенное значение для создания действительно качественного и инновационного программного обеспечения. Речь идёт о том, чтобы ценить мозг, стоящий за клавиатурой. Можно также просто сказать, что «ценность заключается в мысли, предшествующей действию, а не только в самом действии». Размышления о мышленииНа этом этапе мы могли бы глубже погрузиться в моральную философию Иммануила Канта, согласно которой действие определяется мотивом и должно исходить из моральных принципов или чувства долга. Мы также могли бы рассмотреть внутреннюю и внешнюю ценность мышления, где сам процесс мышления обладает внутренней ценностью, а результирующее действие — внешней ценностью. Мы могли бы даже обсудить то, как физиологические исследования обнаружили сильную связь между мыслями и действиями и даже то, как жесты могут влиять на наше мышление. Хотя эти темы интересны и я добавил ссылки на некоторые связанные материалы в разделе ресурсов, давайте всё-таки остановимся на разработке и тестировании программного обеспечения, хорошо? Как тестировщикам ПО, нам нужно задать себе два вопроса:
Именно эти вопросы я задавал себе, размышляя о том, как я думаю во время тестирования и о своём мышлении тестировщика. Эти вопросы годами крутились у меня в голове — с тех пор, как я впервые начал создавать учебные материалы и преподавать тестирование программного обеспечения. Понимание мышления тестировщикаС самого начала моей карьеры в тестировании программного обеспечения в 2003 году я неоднократно слышал о «мышлении тестировщика». Фактических определений было очень мало, и ни одно из них не казалось мне подходящим. Я провёл небольшое исследование, чтобы выяснить, не ввёл ли этот термин кто-то конкретный, но, скорее всего, он развивался органически. Чем больше я узнавал о тестировании, тем сильнее мне казалось, что мы, тестировщики, не умеем эффективно объяснять другим суть нашей профессии. Уже в ходе моего раннего исследования понимания мышления тестировщика вскоре стало ясно, что объяснить мышление тестировщика будет так же непросто, как дать простое определение интеллектуального работника или работника умственного труда. Есть множество кратких или упрощённых определений того, что такое тестирование программного обеспечения, и я даже пытался сформулировать такое определение сам, но ни одно из них никогда не казалось мне вполне правильным. Как объяснить что-то сложное всего в паре предложений? Однако у меня было несколько отличных разговоров как о тестировании, так и о мышлении тестировщика, и я также видел ряд обсуждений в интернете. В отличном посте клуба проницательный Люк Лю задал два вопроса.
К моменту, когда он опубликовал эти вопросы, за моими плечами было 16 лет тестирования, и моё понимание того, что формирует мышление тестировщика, стало более глубоким. Вот мой ответ от июня 2019 года. Я не думаю, что мы, тестировщики, должны или можем иметь только один тип мышления. Способность мыслить по-разному и с разных точек зрения — одна из наших сверхспособностей. Очень недооценённая, недостаточно учитываемая и при этом ценная способность — инклюзивное мышление. На мой скромный взгляд, очень важно рассматривать то, как разные типы людей взаимодействуют с нашими системами. Моё мнение о том, что тестировщикам необходимо использовать несколько типов мышления, по сути, не изменилось, но оно эволюционировало. Теперь я лучше могу сформулировать, что имею в виду под несколькими типами мышления. Ниже приведены несколько примеров, каждый с кратким объяснением соответствующего типа мышления. Возможно, вы могли бы присоединиться к обсуждению в Клубе и предложить свои варианты или дополнить эти? 11 типов мышления тестировщика
Вероятно, существует ещё множество типов мышления. Главная мысль заключается в том, что мы, тестировщики, должны корректировать своё мышление в зависимости от контекста, в котором оказываемся. Это верно даже в том случае, если это означает одновременное использование, казалось бы, противоречащих друг другу типов мышления. Размышления о предположенияхНа сайте под названием The four-hour tester я наткнулся на упражнение на интерпретацию, использующее английскую детскую песенку «Mary had a little lamb». Что на самом деле означает это предложение? Идея заключается в том, чтобы пройтись по каждому слову в предложении и определить множество вариантов интерпретации, которые затем можно применить для создания множества возможных значений. Выполнение этого упражнения — отличный способ использовать критическое и скептическое мышление, чтобы избегать предположений и предубеждений, которые есть у всех нас и которых мы не можем избежать. К этому упражнению можно применить и другие типы мышления. Итак, давайте углубимся и попробуем несколько идей. Однако если вы хотите остановиться здесь и самостоятельно выполнить упражнение, прежде чем продолжить, пожалуйста, сделайте это. После этого вы можете поделиться своими результатами в посте Клуба. Кто такая «Mary»?У нас нет никакого контекста или знаний о Мэри. Поэтому наша непосредственная реакция, если мы знакомы с детской песенкой, — опереться на свой опыт и предположить, что Мэри — ребёнок. Даже если вы не знакомы с детской песенкой, всё равно очень легко интерпретировать это имя как имя человека. Однако если мы остановимся и поставим под сомнение наше первоначальное предположение, мы обнаружим, что нет никаких причин, по которым Мэри не могла бы быть животным. Мы также можем предположить, что Мэри — название ядовитого растения, которое убило ягнёнка. Это довольно маловероятно, но мы не можем исключить такую возможность без дополнительной информации. В каком контексте используется слово «had»?Если посмотреть на предложение целиком, первой понятной мыслью будет то, что кем бы ни была Мэри, теперь у неё больше нет ягнёнка. «Had» обычно используется для обозначения прежнего состояния или чего-либо в прошлом. Поскольку «had» также является формой прошедшего времени глагола «have», мы также вполне легко можем предположить, что Мэри съела немного еды. Сколько вещей обозначает «A»?Буква «A» часто выступает в качестве самого короткого слова в английском языке. Она может использоваться разными способами, например для обозначения принадлежности или отношения к чему-либо. Например: Ady is a Pro member of the Ministry of Testing. Она может относиться к кому-то, чему-то или к первому пункту в списке. «A man». «A bicycle». Будет ли ответом (A) «Ady thinks too much?» «Little» - это насколько мало?Это справедливый вопрос, поскольку обычно мы используем слово «little» в сравнении с чем-либо. Например: «немного» выпить в противоположность большему количеству алкоголя. «Немного» запутаться, в противоположность полному отсутствию идей или знаний о ситуации или предмете. Существует даже фильм 2019 года под названием «Little», хотя я понятия не имею, был ли в нём ягнёнок. Кто, что или зачем «lamb»?«Lamb» может означать молодую овцу, обычно в возрасте одного года или младше. «Lamb» также означает мясо, известное своей нежностью и вкусом. Оно также может использоваться как ласковое обращение: если речь о маленьком ребёнке, «разве она не ягнёночек?» Однако оно также может использоваться в уничижительном смысле для описания человека, которого легко обмануть или которым легко манипулировать. Эмили О’Коннор также использовала это же предложение в своём 404 Talk: Finding test cases in acceptance criteria. Изменяя каждое слово, она продемонстрировала, как обнаруживать пробелы, граничные случаи и скрытые предположения. Вы можете посмотреть её выступление, чтобы ознакомиться с примерами пошагово. Итак, что означает «Mary had a little lamb»?Вот небольшой пример множества возможных значений этого предложения. Есть и многие другие.
Сколько возможных значений придумали вы? Неоднозначность повсюдуВ природе человека заложено стремление находить простые ответы даже на самые сложные вопросы. Знать и понимать – зачастую очень разные вещи. Альберт Эйнштейн предположил, что истинный интеллект проистекает из понимания, а не просто из приобретения знаний. «Любой дурак может знать. Главное — понимать». Акронимы — машины для создания неоднозначности, как и многое другоеКонтекст — это всё, потому что ответ на любой вопрос в тестировании начинается со слов «ну, это зависит».
Это яйца от кур, содержащихся без клеток? Или это яйца от кур в клетках, которые хотят стать свободными?
ЗаключениеНам следует спрашивать себя, насколько много мы на самом деле размышляем о собственном мышлении, когда анализируем требования, определяем, что и как тестировать, или размышляем о других повседневных рабочих задачах в целом. Нам следует воспринимать себя как работников умственного труда и ценить свою способность учиться, понимать и вдумчиво применять эти знания. Но прежде всего нам следует признать, что для тестирования требуется множество типов мышления, и что способ их применения вместе с сопутствующим мышлением – это ключ к тому, чтобы приносить пользу и создавать качественное программное обеспечение. Дополнительная информация
|