2008-12-09 3 views
4

Я прочитал статью Wikipedia о тестировании сценариев, но мне грустно сказать, что это очень коротко. Мне остается задаться вопросом: являются ли сценарии тестовыми наборами последовательных модульных тестов? Или, может быть, как один многоступенчатый модульный тест? Поддерживает ли многие фреймворки тесты сценариев, или они охвачены модульным тестированием?Являются ли сценарии группами тестов последовательных модульных тестов?

Если они не имеют ничего общего с автоматизацией, каковы они?

ответ

4

Я не думаю, что между количеством и распространением тестов и сценариев нет никаких фиксированных отношений.

Я думаю, что наиболее распространенным кодовым представлением сценария является конкретный набор бизнес-данных, необходимых для поддержки конкретной истории (сценария). Это часто предоставляется в виде данных базы данных, поддельных данных заглушки или их комбинации.

Идея состоит в том, что этот набор данных имеет известные и четко определенные характеристики, которые обеспечат четко определенные результаты для всего бизнес-процесса.

Для веб-приложения у меня может быть один веб-тест (или несколько вариантов), которые переходят по полному сценарию. В других случаях сценарий используется на более низком уровне, возможно, тестируя часть сценария в функциональном тесте или модульном тесте. В этом случае я обычно никогда не группирую тесты по сценарию, но выбираю функциональную группировку тестов, которые я обычно использую для модульных/функциональных тестов. Довольно часто существует метод внутри «Subsystem1Test», который называется «testScenario1» или, возможно, «testScenarioInsufficientCredit». Я предпочитаю давать имена моих сценариев.

1

IMHO, тестирование сценариев - это тестовая деятельность, в отличие от деятельности по развитию; следовательно, речь идет о тестировании продукта, а не устройства (ов) этого продукта. Сценарий тестирования представляет собой сквозные сценарии, используя естественные интерфейсы продукта. Если у продукта есть программные интерфейсы, вы можете использовать единую тестовую среду, или Fitnesse.

+0

Я согласен, что он должен быть автоматизирован (хотя он может быть ручным), но не должен быть модульным тестом. Больше похоже на какой-то инструмент, который будет взаимодействовать через gui, например QuickTestPro или другие. С другой стороны, если вам действительно нужна рука, вы можете сделать это с помощью модульного теста, используя надлежащие инструменты (например, упомянутый тест завершен или то, что я использовал WatiN). Но тогда это все еще Unit Test? Или просто сценарий теста, который, как правило, выводит результат на ваш тестовый инструмент? – yoosiba 2009-11-05 19:51:11

2

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

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

Хотя вы можете проводить тестирование сценариев с помощью последовательных модульных тестов, я предполагаю, что чаще всего используют инструменты автоматизации на основе графического интерфейса. Например, я использую TestComplete в этой роли с использованием структуры сценариев для хорошего эффекта. Сценарные тесты обычно выполняются с точки зрения пользователя/клиента, которые могут быть трудно точно реплицироваться на уровне единицы.

Смежные вопросы