Разница между приемочным тестом и функциональным тестом?
в чем реальная разница между приемочными тестами и функциональными тестами?
каковы основные моменты или цели каждого из них? Везде, где я читаю, они неоднозначно похожи.
11 ответов
в моем мире мы используем следующие термины:
функциональное тестирование: это проверка активность; мы создали правильно работающий продукт? Программа соответствует требованиям бизнеса?
для этого типа тестирования у нас есть тестовые случаи, которые охватывают все возможные сценарии, которые мы можем придумать, даже если этот сценарий вряд ли существует "в реальном мире". При выполнении этого типа тестирования, мы стремимся к максимальному охвату код. Мы используйте любую тестовую среду, которую мы можем захватить в то время, это не должен быть "производственный" Калибр, пока он используется.
приемочного тестирования: это проверка активность; мы построили правильную вещь? Это то, что действительно нужно клиенту?
это обычно делается в сотрудничестве с клиентом или внутренним прокси-сервером клиента (product owner). Для этого типа тестирования мы используем тестовые случаи, которые охватывают типичные ситуации, в которых мы ожидаем, что программное обеспечение будет использоваться. Этот тест должен проводиться в" производственной " среде, на оборудовании, которое совпадает или близко к тому, что будет использовать клиент. Это когда мы проверяем наши "ilities":
Надежность, Доступность: проверяется с помощью стресс-теста.
масштабируемость: проверено с помощью нагрузочного испытания.
удобство использования: проверено с помощью инспекции и демонстрация перед заказчиком. Настроен ли пользовательский интерфейс по своему вкусу? Мы поместили брендинг клиента во все нужные места? У нас есть все поля / экраны, которые они просили?
безопасность (ака, Securability, просто, чтобы поместиться в): проверяется с помощью демонстрации. Иногда клиент нанимает внешнюю фирму для проведения аудита безопасности и / или тестирования вторжений.
ремонтопригодность: проверяется через демонстрация того, как мы будем доставлять обновления/исправления программного обеспечения.
настраиваемость: подтверждено с помощью демонстрации того, как клиент может изменить систему в соответствии с их потребностями.
Это отнюдь не стандарт, и я не думаю, что существует" стандартное " определение, как показывают противоречивые ответы здесь. Самое главное для вашей организации-это то, что вы точно определяете эти термины и придерживаетесь их.
Мне нравится ответ Патрика Каффа. Что мне нравится добавлять, так это различие между a уровень тест и испытания типа что было для меня откровением.
испытательные уровни
уровень тест легко объяснить с помощью V-модель пример: Каждый уровень тест и тегом уровень развития. Он имеет типичную характеристику времени, они исполнены на некотором участке внутри жизненный цикл развития.
- компонентное / модульное тестирование = > проверка детального дизайна
- тестирование интеграции компонентов/блоков = > проверка глобального дизайна
- тестирование системы = > проверка системных требований
- тестирование системной интеграции = > проверка системных требований
- приемочное тестирование = > проверка требований пользователя
типы тестов
A испытания типа - это характеристики, оно фокусирует на специфической цели теста. типы тестов подчеркните ваши качественные аспекты, также известные как технические или нефункциональные аспекты. типы тестов можете быть казненным на любом уровень тест. Мне нравится использовать as типы тестов качественные характеристики упомянутые в ISO / IEC 25010: 2011.
- функциональное тестирование
- испытания на надежность
- производительность тестирование
- проверка работоспособности
- тестирование безопасности
- тестирование совместимости
- ремонтопригодность испытания
- переносимости тестирования
чтобы сделать его полным. Есть еще кое-что под названием тестирование. Это дополнительная классификация рядом с уровень тест и испытания типа. А регрессия тест - это тест, который вы хотите повторить, потому что она затрагивает что-то важное в вашем продукте. На самом деле это подмножество тестов, которые вы определили для каждого уровень тест. Если в вашем продукте есть небольшое исправление ошибки, у вас не всегда есть время для повторения всех тестов. тестирование является ответом на это.
разница между тестированием проблемы и решения. Программное решение проблемы, как можно протестировать.
функциональный тест подтверждает, что программное обеспечение выполняет функцию в пределах того, как вы решили проблему. Это неотъемлемая часть разработки программного обеспечения, сравнимая с тестированием, которое проводится на серийном продукте до его выхода с завода. Функциональный тест проверяет, что продукт действительно работает так, как вы (разработчик) думаете так и есть.
приемочные тесты подтверждают, что продукт действительно решает проблему, которую он должен был решить. Это лучше всего может сделать пользователь (клиент), например, выполняя свои задачи, с которыми помогает программное обеспечение. Если программное обеспечение проходит этот тест в реальном мире, оно принимается для замены предыдущего решения. Этот приемочный тест иногда может быть выполнен только правильно в производстве, особенно если у вас есть анонимные клиенты (например, веб-сайт). Таким образом, новая функция будет принята только после дней или недель использования.
функциональное тестирование - испытайте продукт, проверяя, что он имеет качества, которые вы разработали или построили (функции, скорость, ошибки, согласованность и т. д.)
приемочного тестирования - испытайте продукт в своем контексте, это требует(симуляции) человеческого взаимодействия, испытайте его имеет желаемое влияние на первоначальных задачах.
ответ отзыв. Я работал во многих проектах и был testmanager и issuemanager, и все разные роли и описания в разных книгах отличаются, поэтому вот мой вариант:
функциональное тестирование: взять бизнес-требований и тест-все это хорошо и глубоко с функциональной точки зрения.
приемочных испытаний: "оплачивая" клиент делает испытание он любит сделать так, что он сможет признавать поставленный продукт. Это зависит от клиента, но обычно тесты не так тщательны, как функциональное тестирование, особенно если это внутренний проект, потому что заинтересованные стороны рассматривают и доверяют результатам тестирования, сделанным на более ранних этапах тестирования.
Как я сказал, Это моя точка зрения и опыт. Функциональное тестирование является систематическим,а приемочное тестирование-это скорее тестирование бизнес-отдела.
аудитории. Функциональное тестирование должно убедить членов команды, производящей программное обеспечение, что оно делает то, что они ожидают. Приемочное тестирование должно гарантировать потребителю, что оно отвечает их потребностям.
объем. Функциональное тестирование проверяет только функциональность одного компонента за раз. Приемочное тестирование охватывает любой аспект продукта, который имеет значение для потребителя достаточно, чтобы протестировать перед принятием программного обеспечения (т. е. все, что стоит времени или деньги понадобятся, чтобы проверить его на приемлемость).
програмное обеспечение может пройти функциональное испытание, испытание внедрения, и испытание системы; только потерпеть неудачу приемочные испытания когда клиент обнаруживает что характеристики как раз не отвечают их потребностямы. Обычно это означает, что кто-то напортачил со спецификацией. Программное обеспечение также может не пройти некоторые функциональные тесты, но пройти приемочное тестирование, потому что клиент готов иметь дело с некоторыми функциональными ошибками, пока программное обеспечение делает основные вещи, которые им нужны приемлемо хорошо (бета-программное обеспечение часто будет принято подмножеством пользователей, прежде чем оно будет полностью функциональным).
Функциональное Тестирование: применение тестовых данных, полученных из указанного функционала требования без учета окончательной структуры программы. Также известный как тестирование черного ящика.
Приемочные Испытания: формальное тестирование, проводимое для определения того, удовлетворяет ли система критериям принятия-позволяет конечному пользователю определить, следует ли примите систему.
на мой взгляд, основное различие заключается в том, кто говорит, Если тесты успешны или терпят неудачу.
функциональный тест проверяет, что система удовлетворяет стандартные требования. Это осуществляется и проверяется людьми, ответственными за разработку системы.
приемочный тест подписывается пользователями. В идеале пользователи будут говорить, что они хотят проверить, но на практике это, вероятно, будет закат функционального теста, поскольку пользователи не инвестируют достаточно времени. Обратите внимание, что это представление бизнес-пользователи, с которыми я имею дело с другими наборами пользователей, например авиация и другие критические безопасности, вполне могут не иметь этой разницы,
... испытание черного ящика выполненное на системе (например программном обеспечении, сериях изготовленных механических частей, или сериях химических продуктов) до своей доставки.
хотя это продолжает говорить:
также как функциональное испытание, испытание черного ящика, принятие отпуска, испытание QA, испытание применения, испытание доверия, окончательное испытание, испытание утверждения, или фабрика приемочное тестирование
с отметкой" нужная цитата".
функциональное тестирование (который фактически перенаправляет на тестирование системы):
проводится на полной, интегрированной системе для оценки соответствия системы установленным требованиям. Тестирование системы входит в сферу тестирования черного ящика и как таковое не должно требовать знания внутреннего дизайна кода или логики.
вот от этого определение они в значительной степени одно и то же.
в моем опыте приемочные тесты обычно являются подмножеством функциональных тестов и используются в формальном процессе выхода клиентом, в то время как функциональные/системные тесты будут выполняться отделом разработчика/QA.
связь между этими двумя: Приемочный тест обычно включает функциональное тестирование, но может включать дополнительные тесты. Например проверка требований к маркировке и документации.
функциональное тестирование когда продукт под испытанием помещен в испытательную среду которая может произвести разнообразие стимулирование (в пределах объема теста) чего окружающая среда цели типично производит или даже за, пока рассматривающ реакцию прибора под тест.
для физического продукта (не программного обеспечения) есть два основных вида приемочные испытания: испытания конструкции и испытания изготавливания. Конструкторские испытания обычно используют большое количество образцов продукции, прошедших производственные испытания. Разные потребители могут тестировать дизайн по-разному.
приемочные испытания называются проверкой, когда конструкция проверяется на соответствие спецификации продукта, а приемочные испытания называются проверкой, когда продукт помещается в реальную среду потребителя.
приемочного тестирования это просто тестирование, выполняемое клиентом, и включает в себя другие виды испытаний:
- функциональное тестирование: "эта кнопка не работает"
- нефункциональное тестирование: "эта страница работает, но слишком медленно"
для функционального тестирования против нефункционального тестирования (их подтипы) - см. Мой ответ на это поэтому вопрос.
Это одно и то же.
приемочное тестирование выполняется на завершенной системе в максимально идентичной среде реального производства / развертывания до развертывания или доставки системы.
вы можете выполнить приемочное тестирование автоматически или вручную.