Дисклеймер
В целом, написанное ниже является сборником знаний, полученных отовсюду и собранных в единый поток мыслей, так что скорее всего принципиально нового я ничего не открою, хотя такой цели я и не придерживался
Тестирование документации — это одна из начальных стадий процесса тестирования, которая выступает как система раннего оповещения об потенциальных ошибках.
Давай определим, зачем вообще нужно тестировать документы?
Прежде всего, потому что ошибка в требованиях, которая будет найдена на этапе их тестирования , Будет просто дешевле, чем найденный дефект в уже реализованном программном продукте
Этот пункт вытекает из первого. На этапе вычитки ГДД проблему можно исправить силами любого дизайнера, просто переписав документ, когда после реализации функционала, нужна сила трех человек (Разработчик \ тестер \ Дизайнер....)
Разносторонний взгляд на одни и те же буквы, на удивление, позволяет более понятно сформировать мысль для всех
Знакомство с тем, что в дальнейшем будут вообще разрабатывать
С чего же начать ?
На основе той информации, что у меня удалось найти, примерный пайплайн вычитки документации у меня получился следующий:
Согласование старта вычитки с компетентным лицом, который у вас отвечает за вопросы подобного рода
Ознакомление с документом (так же называется "первичная вычитка")
Вычитка документа от лица “незаинтересованной стороны”
Вычитка документации от лица “Разработчика”
Вычитка документации от лица QA
Формирование запроса на читы
Получение ответов на вопросы (опционально)
Давай рассмотрим пайплайн более детально
Первое, что мы делаем, это согласовываем старт вычитки, тут все индивидуально, у некоторых, это задача, которая пришла в QA review, а для некоторых это команда от PMa или лида. Главное, это знать, что документ дописан и мы можем приступать к его тестам
Когда мы получили документ на руки, в ход идет второй шаг вычитки, ознакомление с документом.
В рамках этого шага производится знакомство с документом. От QA требуется детально вычитать документ, так как часто бывает, что какой то непонятный момент описан ниже и нужно просто продолжить читать. Так же в рамках этого помечаем для себя все странности, которые в дальнейшем нужно будет раскрыть подробнее
Вычитка документа от лица “незаинтересованной стороны”
“Незаинтересованная сторона” - это любой специалист, не принимающий участие в непосредственной разработке продукта. Комьюнити менеджер / директор компании / ПМ или любой другой человек
Фактически только сейчас начинается тестирование документации. На этом шаге, специалисту нужно произвести ряд проверок на соответствие общим требованиям
Орфография и пунктуация. Орфографию можно проверить в текстовых редакторах или любыми другими средствами. Для проверки синтаксиса и пунктуации необходимо вчитываться в текст, понимать его смысл, понимать значения каждого из используемых терминов.
Полнота описания и соответствие действительности. Любая документация должна содержать описание именно той функциональности, которая присутствует в приложении, и данное описание должно касаться абсолютно всей функциональности, а не только наиболее значимой.
Навигация. У пользователя никогда не должно возникать проблем с поиском необходимой ему информации. Все деревья файлов, закладки и прочее должны быть на видном месте сразу, как пользователь открывает документ. Алфавитный указатель, поиск – должно присутствовать все, что поможет найти решение или описание проблемы.
Структурированность документации. Все документы должны находится в полном порядке, по разделам. Текст должен быть также с четкой структурой – чтобы можно было в любой момент вспомнить, где остановился или понять, в каком абзаце содержится именно та информация, которая нам необходима.
Термины и их значение. В любой документации может использоваться масса терминов, аббревиатур и сокращений. Каждая из этих сущностей должна иметь свое значение и расшифровку.
Доступность пользователю. Документация должна быть максимально понятной для любой целевой аудитории. Если документация создана и для иностранных пользователей – необходимо привлечение специалистов данного лингвистического сектора, вплоть до носителей языка.
-
Логика и согласованность
В сценариях должно указываться какие действия с какой целью делаются, должен быть понятен смысл выполняемых действий.
Соответствие правилам и стандартам компании: Проверьте, что требования соответствуют внутренним правилам и стандартам разработки в организации.
Вычитка документа от лица “Разработчика”
«Разработчик» - В данном контексте, это любой специалист, принимающий участие в непосредственной разработке продукта. Художник, разработчик, QA специалист и тд
Инструкции должны присутствовать везде. Даже при выполнении абсолютно одинаковых манипуляций с программой – необходимо пошаговое описание действий во всех случаях. Это может быть, как и прямое повторение инструкций, так и ссылка на уже существующие.
-
Подтверждение ожидаемого результата
После описания последовательности некоторых действий стоит указать ожидаемый результат. Подобно тому, как стоит попробовать суп после того, как туда добавили соль и специи.
Осуществимость
Насколько прописанные требования возможно реализовать-
Наличие описания настроек по умолчанию
Если есть какие-либо настройки, и в них есть значения по умолчанию, то было бы хорошо, чтоб это было описано. Пользователь захочет найти информацию о настройках по умолчанию, если он менял настройки, но не запоминал изменений, и после этого программа перестала корректно работать.
-
Актуальность описания
Если тестируется документация к программному продукту, у которого много версий, то следует обратить внимание на актуальность описания. Может оказаться так, что в текущей версии функционал был изменен, но в документацию это не попало, или же в последний момент было принято решение не включать фичу в текущий релиз, а она уже описана в документации. Также стоит обратить внимание на актуальность годов, контактных данных, системных требований, лицензионного соглашения, скриншотов.
Достаточность описания
Все ли описано, что необходимо для разработкиНаличие Арта \ звуков \ Анимации
Эти ребята тоже хотят получить подробную информацию о том, что от них хочет ГД, желательно при проверке на это требование так же проверить наличие референсов или макетовТребования к тестированию (Опционально)
Обратите внимание на требования к тестированию, которые описывают, как будут проверяться и проверены соответствующие требования.Практичность
Удостоверьтесь, что требования выполнимы и осуществимы с учетом ограничений проекта.
Вычитка документации от лица QA
В рамках этого этапа подразумевается вычитка с использованием критического мышления
Какие требования тестируются:
Требования к автоматизации:
Если проект предполагает автоматизированные тесты или процессы, удостоверьтесь, что требования определяют необходимость и область автоматизации.Разрешение конфликтов:
Если есть конфликтующие или неоднозначные требования, QA-специалист должен помочь команде разработки разрешить эти проблемы.Тестирование производительности:
Удостоверьтесь, что требования определяют критерии производительности и возможные нагрузочные тесты для проверки соответствия требованиям. (опционально)Обучение пользователей:
Если продукт требует обучения пользователей, удостоверьтесь, что расписано, как именно будет проходить обучениеОтладка и логирование:
Проверьте, что требования предусматривают возможности для логирования функционалаИнтероперабельность:
Если продукт должен взаимодействовать с другими системами или программами, удостоверьтесь, что требования описывают, как именно будут взаимодействовать объекты.Масштабируемость и будущее развитие:
Проверьте, что требования учитывают возможность масштабирования продукта в будущем и его развитие, чтобы обеспечить его долгосрочную устойчивость.Удовлетворение потребностей пользователей:
Убедитесь, что требования соответствуют потребностям и ожиданиям пользователей. Продукт должен решать реальные проблемы и предоставлять нужный функционал.
Формирование запроса на читы
В рамках этого этапа, QA инженер формирует запрос на читы DEV команде.
Как это делается
Инженер смотрит, какой функционал уже покрыт читами
Какой функционал нужно покрыть читами
Выкидывает все читы, что команда не сможет реализовать
Оставшиеся запросы выносит аккуратным списком в отдельный блок снизу ГДД
После формирования запроса, отдел разработки вычитывает предполагаемые читы и заводит соответствующие задачи на те читы, что в итоге будут взяты в разработку
Получение ответов на вопросы
В завершение вычитки, тестеры вычитывают ответы, на заданные вопросы. От QA требуется лишь убедиться, что все неточности будут учтены в финальном документе, который будет переписан с учетом заданных вопросов
Поздравляем, док протестирован!
Комментарии (13)
iggr63
09.09.2023 14:17Вопрос сразу в духе поста и QA - что такое "читы"?
Lendcore Автор
09.09.2023 14:17+1Читы, это некий функционал, который позволяет ускорить тестирование нового контента. Например чит код на выдачу оружия.
iggr63
09.09.2023 14:17А понятно, это намеренно или нет оставленные пасхалки.
Lendcore Автор
09.09.2023 14:17Не обязательно. во всех проектах, над которыми я работал, существовала административная панель, содержащая в себе горячие клавиши, которые позволяли перейти на новую миссию и не проходить всю сюжетную линию. Это я и назвал "читами"
В продуктовую версию, доступную игрокам, этот функционал конечно не попадает.
makushevkm
09.09.2023 14:17+1Как-то сумбурно получилось, вы точно не ChatGPT? :)
О какого рода документации вообще речь? В начале вы говорите о требованиях, то есть о проектной документации. Затем вы упоминаете актуальность и доступность документации для пользователей, то есть теперь говорите о пользовательской документации. Затем речь опять заходит про требования, то есть опять про проектную.
У этих видов документации разные цели и задачи, разная аудитория, по идее ее пишут разные люди и на разных этапах жизненного цикла продукта. Наверное и подходы к тестированию совершенно разные должны быть.
Каким образом читы относятся к разработке доки тоже тема не раскрыта.
Lendcore Автор
09.09.2023 14:17вы точно не ChatGPT?
Вроде с утра не был :)
О какого рода документации вообще речь?
Прежде всего речь идет о GDD (Game design document), внутри которых содержатся и требования , и доступность информации для пользователей и что либо еще.
Вы очень классно заметили, что я создал некую собирательную статью с перечнем свойств, которые документ может содержать, а может и нет. Например: "Обучение пользователей" - Если новый функционал не подразумевает обучение пользователей, то QA и не тестирует это свойство у документа, а если обучение нужно, то QA должен убедиться, что в GDD будет описано, как оно будет проходить и тд.
У этих видов документации разные цели и задачи, разная аудитория, по идее ее пишут разные люди и на разных этапах жизненного цикла продукта. Наверное и подходы к тестированию совершенно разные должны быть.
Вы абсолютно правы
Каким образом читы относятся к разработке доки тоже тема не раскрыта.
Попробую раскрыть более детально. Читы, это некие надстройки, которые дополнительно должен учитывать разработчик при создании нового функционала, следовательно на этапе декомпозиции и планирования (следующем то есть) он должен знать весь объем разработки. По этому еще при вычитке GDD стоит фиксировать и читы, так как потом этот объем работ будет сложнее учитывать (и дороже)
makushevkm
09.09.2023 14:17Спасибо за развернутый ответ. Я с геймдев-документацией не сталкивался еще, поэтому может быть какой-то специфики не понимаю. Хотя это очень интересно должно быть.
Ваша статья могла бы быть более увлекательной, если бы вы о таких неочевидных и специфичных вещах в ней последовательно написали. Без связующих пояснений цели, задач и процесса разработки документации, статья выглядит как набор случайно взятых фактов и советов. Отсюда впечатление, что статью писал ИИ.
astenix
09.09.2023 14:17Объясните это предложение, плиз:
Все документы должны находится в полном порядке, по разделах.
Lendcore Автор
09.09.2023 14:17В идеале, выстроить хранение документации иерархическим образом, чтобы было прозрачно, где хранится какой документ. Для этого хорошо поможет Confluence например, он как раз обладает необходимым инструментарием. Следовательно QA желательно следить за тем, чтобы каждый документ лежал в соответствующем месте, согласно иерархии хранения
odilovoybek
Кажется как что-то ненужное и излишество, но по сути это можно внедрять в проекты, у которых большой бюджет, время и желание сделать все идеально чтобы после не разбираться и платить за тех. долг... Или нет?