Есть так много вещей Мне нужно написать, чтобы ответить ... Я сделаю некоторые основные моменты, рассчитывая на других, чтобы дать некоторые хорошие идеи.
интеграционное тестирование
Обычно это понимается как тестирование интеграции между компонентами вашего приложения.Это могут быть взаимодействия между модулями бизнес-уровня.Это могут быть взаимодействия между бизнес-объектами и объектами доступа к данным.За интеграционным тестированием скрывается много вещей.«связь между страницами» будет последней, о которой я подумаю.Это проверка «целостности» веб-приложения, но не многие здесь скажут, что это интеграционное тестирование.Возможно, начните с определения вики , отметьте ТАКИЕ вопросы .
регрессионное тестирование
Хотите ли вы тестировать только отдельные классы или функции, бизнес-процессы, поток данных и т. Д.?Регрессионное тестирование определяет мотив для повторения некоторых тестов, а не уровень, на котором вы их делаете.Вы проводите регрессионное тестирование, чтобы проверить, была ли нарушена функциональность, охватываемая данным тестом, из-за недавних изменений в системе.Это может быть модульное тестирование, это может быть интеграция, она может быть функциональной, может быть на основе графического интерфейса или нет.Проверьте определение вики .
Проверка целостности данных
Я не занимаюсь этим, но не уверен, правильно ли вы понимаете.Попробуйте поиск в Google ?
Функциональное тестирование
Функциональное тестирование обычно понимается как уровень графического интерфейса, но это не обязательно.Это может быть сделано на веб-сервисах, на EJB, даже на API.Проверьте это определение , чтобы прояснить это.
Что касается тестов на основе кода для GUI, существует множество решений.MSVS2010 - с его тестами CodedUI, HP QTP для многих технологий, есть инструмент от IBM, есть инструмент от Borland (Silk Test, теперь Borland принадлежит какой-то компании).Существуют инструменты с открытым исходным кодом: WatiN , Селен , Аббат , RobotFramework , многие другие.
Тестирование производительности
Тестирование производительности имеет множество разновидностей, стресс-тестирование, тестирование на замачивание, нагрузочное тестирование и многие другие.Проверьте это MS Reference для общего обзора.
Теперь основные вопросы:)
- Вы можете делать всего понемногу, но вы просто поцарапаете поверхность.Кроме того, вам нужны люди, которые могут это сделать.Неуважение, но вы уверены, что ваши разработчики знают все это и могут это сделать?Что важнее, у них есть время, чтобы сделать все это?Начните с малого.Пройдите модульное тестирование, интеграционное тестирование компонентов, выполните регрессию на обоих из них.Начните автоматизировать функциональное тестирование, возможно попробуйте Acceptance Test Driven Development ( что-то здесь , что-то там ).Сосредоточьтесь больше на тех областях, где вы находите ошибки, максимизируйте свою рентабельность инвестиций: P (если у вас нет проблем с производительностью, может быть, слегка подумать о тестировании производительности?).
- Настройка непрерывная интеграция .Часто выполняйте быстрые тесты, иногда запускайте медленные тесты, при необходимости выполняйте полную регрессию (на основе оценки риска).
- Нет определенного правила относительно того, сколько часов потребуется для тестирования.Это будет зависеть от многих факторов.Самое главное, насколько глючит сам продукт?Больше ошибок -> больше исправлений -> больше регрессий = больше тестирования.Есть такие компании, как Google (один тестер для многих проектов) или Microsoft (до нескольких тестеров на одного разработчика).Трудно сказать априори проекту, без исторических данных (от вашей организации, для данных команд / типов проектов). Этот короткий пост может дать вам больше понимания.
Приветствия.