Страницы

Поиск по вопросам

четверг, 18 октября 2018 г.

Что такое юнит-тесты? [закрыт]

Может кто-то объяснить принцип - как оно должно работать? Что такое тест для программы? К примеру, есть задание: написать тест для программы, выводящей результат сложения двух введенных чисел.


Ответ

Я бы предложил вам выбрать стратегию тестирования, например, начать с простейших: черного и белого ящиков. При использования метода черного ящика вы знаете то, что вам необходимо подать на вход, и соответственно, что вы получите на выходе для данного входа. А значит вы можете составлять тесты исходя из этих знаний. Например для сложения чисел, у вас таблица из трех столбцов, первые два - входные значения, третий - результат. Проверяя по таблице работу вашей программы вы получите (в зависимости от количества проведенных тестов) % верных решений. Обычно такие тесты называют системными (Sytem tests). Они более общие. Например, если у вас система из 5ти модулей, вы будете тестировать всю систему сразу, так как вы не знаете, что должно быть на входе и выходе любого из модулей, а знаете только общий результат. При использовании метода белого ящика - вы знаете всю логику программы, так вы можете проверить каждую часть своей программы: операторы, условия, вводимые значения и т.п. Обычно данный тип тестов называется юнит-тестом. Это тест, в котором вы проверяете работу не всей программы, а ее отдельных (атомарных в какой-то степени) частей. Рассматривая предыдущий пример с 5ю модулями, вам известен вход и выход всех, вы можете тестировать каждый в отдельности или комбинировать их последовательность (заданную логикой программы, естественно).

Комментариев нет:

Отправить комментарий