Отличие функционального тестирование от нефункционального
Собственно, при обучении возник вопрос. В чем разница между функциональным и нефункциональным тестированием? После поиска в гугле, были сделаны следующие выводы :
Тестирование какого-либо функционала(как ни странно), то есть это может быть : тестирование работоспособности кнопки "войти" на сайте, добавление в корзину, удаление из корзины, сверка введенных пользователем данных при авторизации с данными находящимися в БД.
Тестирование нефункциональных требований, то есть : performance testing, security testing, usability testing, recovery testing .
Исходя из прочитанных материалов возникли следующие вопросы :
1)примеры, которые я привел в функциональном тестировании относятся к какому виду тестирования? Как мне кажется это : Smoke test (по-скольку, все вышеописанное это основной функционал работы сайта), Component testing (по-скольку мы тестируем некие компоненты/модули). Говоря про авторизацию - это ,как мне кажется, интеграционное тестирование(по-скольку мы тестируем несколько компонентов/модулей)
2)security и usability testing. В некоторых источниках их относят к функциональному тестированию, а в некоторых к нефункциональному.
3) я запутался в классификации видов тестирования. Савин их классифицирует по одному, в интернете они классифицируются по-другому, например :
Савин не писал (возможно я ошибаюсь, но я не нашел или не понял этого) про типы тестирование (негативное, позитивное), он их классифицировал как : "по критерию позитивности". Так же про методы : black box, white box. grey box. Он классифицировал это как : "по внутреннему знанию системы".
Скорее всего я очень сильно плаваю в терминологии и не понимаю отличий между "видом", "типом","методом" тестирования.Я здесь очень запутался и прошу направить меня в нужном направлении.
#2 Freiman- ФИО: Андрей Адеркин
- Город: Йошкар-Ола
Да, с видами/типами/уровнями все не очень просто.
1) Функциональное тестирование может быть одновременно и smoke. А может не быть :) Т.е. эти две характеристики не являются взаимоисключающими. В данном случае компонентным оно также может являться, а может и не являться. Тестируете ли вы компонент авторизации независимо от других? Т.е. вы можете делать компонентное функциональное тестирование. В вашем примере оно, скорее всего, компонентным не является. Авторазиция в вашем примере также, скорее всего, НЕ интеграционное. Одновременное тестирование нескольких модулей не делает автоматически ваше тестирование интеграционным. А вот если несколько команд делали какие-то компоненты системы независимо друг от друга, а потом вы эти компоненты пытаетесь состыковать - тогда вот будет интеграционное. 2) security то относят, но не относят к функциональному. Правильного ответа я не знаю :) usability - нефункциональное. Если вы мне укажете источник, где его таки относят к функциональному, буду благодарен. 3) Как говорится, "сколько евреев, столько и мнений" :) За более-менее вменяемую классификацию можно взять википедию или ISTQB. К сожалению, даже эти два источника дают противоречивую информацию.
#3 Silenty- ФИО: Артур
https://en.wikipedia. ctional_testing - вот ,собственно, тут и написано про usability. Хотя опять же, википедия не самый компетентный источник. Но так как я начинающий, то мне довольно трудно фильтровать то, в чем я не разбираюсь
#4 Freiman- ФИО: Андрей Адеркин
- Город: Йошкар-Ола
https://en.wikipedia. ctional_testing - вот ,собственно, тут и написано про usability. Хотя опять же, википедия не самый компетентный источник. Но так как я начинающий, то мне довольно трудно фильтровать то, в чем я не разбираюсь
Прошелся по ссылке и почитал у Канера-Фолка-Нгуена: они говорят, что юзабилити проводится на стадии функционального и системного тестирования. Что логично, но при этом не означает, что юзабилити является функциональным. А вот системным - да.
Сообщение отредактировал Freiman: 01 марта 2016 - 20:19
#5 Silenty- ФИО: Артур
Еще один вопрос. Мне кажется он довольно глупый,но хотелось бы внести ясность.
-Интеграционное тестирование - тестирование компонентов / модулей объединенных в группы (поправьте, если не так).
-Системное тестирование - тестирование всей системы.
Если объединить все модули и тестировать их - это ведь подпадает под определение интеграционного тестирования?
Или это все же системное, по-скольку мы тестируем все?
Или интеграционное тестирование это тестирование логически связанных модулей, а не всей системы целиком?
Надеюсь я донёс суть вопроса.Спасибо Вам за предыдущие ответы
#6 Freiman- ФИО: Андрей Адеркин
- Город: Йошкар-Ола
Если объединить все модули и тестировать их - это ведь подпадает под определение интеграционного тестирования?Или это все же системное, по-скольку мы тестируем все?
Смотря что является целью вашего тестирования.Если вы собрали все компоненты и тестируете, как эти компоненты взаимодействуют между собой - то компонентное. Такое чисто теоретически может быть, но в реальной жизни вряд ли встречается.Обычно берут минимально необходимое количество компонентов и тестируют их взаимодействие между собой.
Если вы собрали все компоненты в систему и тестируете ее как единое целое (например, проводите тестирование юзабилити), а не как набор связанных компонентов, то это будет системное.
#7 Silenty- ФИО: Артур
Разве это не интеграционное тестирование?
Integration testing is the phase in software testing in which individual software modules are combined and tested as a group. - Определение из википедии
#8 Freiman- ФИО: Андрей Адеркин
- Город: Йошкар-Ола
Если вы собрали все компоненты и тестируете, как эти компоненты взаимодействуют между собой - то компонентное.
Да, это интеграционное, конечно. Ночью что-то ступил :)
#9 3lll- ФИО: Калиновский Михаил Геннадьевич
Собственно, при обучении возник вопрос. В чем разница между функциональным и нефункциональным тестированием? После поиска в гугле, были сделаны следующие выводы :
- Функциональное тестирование
Тестирование какого-либо функционала(как ни странно), то есть это может быть : тестирование работоспособности кнопки "войти" на сайте, добавление в корзину, удаление из корзины, сверка введенных пользователем данных при авторизации с данными находящимися в БД.
- Нефункциональное тестирование
Тестирование нефункциональных требований, то есть : performance testing, security testing, usability testing, recovery testing .
Исходя из прочитанных материалов возникли следующие вопросы :
1)примеры, которые я привел в функциональном тестировании относятся к какому виду тестирования? Как мне кажется это : Smoke test (по-скольку, все вышеописанное это основной функционал работы сайта), Component testing (по-скольку мы тестируем некие компоненты/модули). Говоря про авторизацию - это ,как мне кажется, интеграционное тестирование(по-скольку мы тестируем несколько компонентов/модулей)
2)security и usability testing. В некоторых источниках их относят к функциональному тестированию, а в некоторых к нефункциональному.
3) я запутался в классификации видов тестирования. Савин их классифицирует по одному, в интернете они классифицируются по-другому, например :
Савин не писал (возможно я ошибаюсь, но я не нашел или не понял этого) про типы тестирование (негативное, позитивное), он их классифицировал как : "по критерию позитивности". Так же про методы : black box, white box. grey box. Он классифицировал это как : "по внутреннему знанию системы".
Скорее всего я очень сильно плаваю в терминологии и не понимаю отличий между "видом", "типом","методом" тестирования.Я здесь очень запутался и прошу направить меня в нужном направлении.
Здравствуйет!Я вам рекомендую прочитать и выучить ISTQB в котором четко прописаны уровни тестирования, типы тестирования и методы тестирования. Типы подразделяются: тестирование функций, тестирование нефункциональных характеристик, тестирование структуры, тестирование изменений. Данные типы соответственно включают различные виды.Пока остановитесь на этом источнике, т.к. в интернете множество информации и каждый ее трактует по своему и чаще всего одно и тоже разными словами, что окончательно может вас запутать и сделать серьезную кашу в голове, а еще и на курсах отсебятены наслушаетесь.