Тестирование без требований |
26.12.2016 14:30 |
Автор: Майкл Фритциус (Michael Fritzius) Оригинал статьи: https://testzius.wordpress.com/2016/12/13/testing-without-requirements/ Перевод: Ольга Алифанова Этот вопрос звучит частенько: что же делать, вот приходишь ты на работу, или на проект, и должен тестировать, а ТРЕБОВАНИЙ НЕТ! Для некоторых из нас крайне трудно представить себя в подобной ситуации. Если вы работали только в местах, где тест-кейсы были документированы, а спецификации присутствовали, то сама мысль об этом выглядит для вас дикой. Но есть места, где все слишком заняты, чтобы писать требования, или им это просто не нужно. На то есть множество причин – и очень хороших причин, хотя плохие среди них тоже присутствуют. Но несмотря на причины, возможно, в какой-то момент вы обнаружите себя в этой ситуации и вас попросят протестировать то, для чего нет требований и, возможно, НИКТО не знает, как оно на самом деле должно работать. Сейчас я объясню, что это вполне посильная задача – и вы не просто справитесь с ней, но справитесь блестяще, и улучшите свой навык тестировщика. Я тестировщик… и могу тестировать без требований… думаю… Черноящичное тестирование Когда мы берем часть продукта и не знаем толком, что у него происходит внутри – "внутри ящика", так сказать – мы используем черноящичное тестирование. Если термин вам незнаком, он может вас немного пугать. Не беспокойтесь. Все хорошо. Это немного похоже на взлом замков. Вы не видите, что внутри у замка, но вы можете использовать инструменты и собственное восприятие, чтобы пощупать замок и узнать, что же у него внутри. А также вы знаете про другие замки и можете применить эту информацию к этому конкретному. С черноящичным тестированием то же самое. Возможно, вам уже доводилось тестировать и находить баги. Мы будем использовать эти инструменты и опыт для будущего тестирования. Внизу пример простенькой формы с образцом разговора, в результате которого вам придется протестировать что-то, не имея под рукой требований. Вот формочка: А вот гипотетический разговор, который состоялся у вас с менеджером. Привет, короче говоря, мы просили стажера набросать простенькую форму для ввода данных клиентов. Форма была нам нужна для клиентского терминала. Для стажера это был неплохой опыт. Клиенту понравилось, поэтому мы доделали этот продукт. Но вот эта часть, эта формочка, не смотрит на клиента – мы просто использовали ее как зацепку, чтобы грузить записи о пользователях в систему. А теперь стажер уволилась, а у нас никогда не доходили руки написать требования на такую простую форму. Но протестировать-то ее надо! Успехов! Отлично. Требований нет. Просто прекрасно. Не теряйте надежды, потому что вы можете протестировать очень много. Глаза вам никто не завязывал. Мы знаем, что эта форма, скорее всего, хранит данные где-то в базе данных, и мы можем написать множество тестов, чтобы проверить, корректно ли данные сохраняются в базе. А вот что можно проверить еще:
Проверить тут можно очень, очень много. Какие кейсы приходят вам в голову? Небольшая часть тестирования посвящена убеждению, что ПО делает то, что должно. Оставшаяся, довольно крупная часть – убеждению, что оно НЕ делает того, что НЕ должно. Это сложнее, потому что приходится подумать о вещах, о которых люди обычно не думают, и именно это оттачивает ваши навыки и ставит вас на голову выше тех, кому требуются спецификации и требования, чтобы начинать тестировать. |