Вопросы с тегом «testing»

41
Являются ли тесты для разработки через тестирование (TDD) всегда юнит-тестами?

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

41
Юнит-тестирование по своей природе случайных / недетерминированных алгоритмов

Мой текущий проект, кратко, включает создание «случайно-случайных событий». Я в основном генерирую график проверок. Некоторые из них основаны на строгих расписаниях; Вы проводите проверку один раз в неделю в пятницу в 10:00. Другие проверки являются «случайными»; Существуют основные настраиваемые...

41
Нужна ли регистрация при выполнении TDD?

При выполнении цикла Red, Green & Refactor мы всегда должны писать минимальный код для прохождения теста. Именно так меня учили о TDD и как почти все книги описывают этот процесс. Но как насчет регистрации? Честно говоря, я редко использовал регистрацию в приложении, если не было чего-то...

40
Должны ли тестовые данные быть проверены в системе контроля версий?

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

40
Как заставить модульные тесты работать быстро?

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

38
На самом деле стоит модульное тестирование клиента API?

Это то, что беспокоило меня некоторое время. На самом деле стоит модульное тестирование клиента API? Допустим, вы создаете небольшой класс, чтобы абстрагировать вызовы API-интерфейса REST. PetShop - очень простой API, и у него есть базовый набор методов: listProducts() getProductDetails(ProductID)...

37
Сколько покрытия кода «достаточно»?

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

37
Модульное тестирование команды новичка должно пройти тест

Я работаю с новой командой, которая исторически не проводила ЛЮБОГО модульного тестирования. Моя цель - чтобы команда в конечном итоге использовала TDD (Test Driven Development) в качестве естественного процесса. Но так как TDD - такой радикальный сдвиг для команды, не занимающейся модульным...

37
Предназначены ли интеграционные тесты для повторения всех модульных тестов?

Допустим, у меня есть функция (написана на Ruby, но должна быть понятна всем): def am_I_old_enough?(name = 'filip') person = Person::API.new(name) if person.male? return person.age > 21 else return person.age > 18 end end В модульном тестировании я бы создал четыре теста, чтобы охватить все...

37
Модульные тесты и базы данных: в какой момент я на самом деле подключаюсь к базе данных?

Есть ответы на вопрос о том, как тестовые классы подключаются к базе данных, например, «Должны ли сервисные тестовые классы подключаться ...» и «Модульное тестирование - приложение, связанное с базой данных» . Итак, вкратце, давайте предположим, что у вас есть класс A, который должен подключаться к...

37
Как детка твои шаги в TDD?

Сегодня мы тренировали TDD и обнаружили следующую точку недопонимания. Задача для ввода «1,2» - возвращаемая сумма чисел, равная 3. Что я написал (в C #): numbers = input.Split(','); return int.Parse(numbers[0]) + int.Parse(numbers[1]); //task said we have two numbers and input is correct Но другие...

37
Почему тестирование языка не поддерживается на уровне синтаксиса?

Вы можете найти бесконечный список блогов, статей и сайтов, рекламирующих преимущества модульного тестирования вашего исходного кода. Почти гарантировано, что разработчики, которые программировали компиляторы для Java, C ++, C # и других типизированных языков, использовали модульное тестирование...

37
В порядке ли создание объектов с нулевыми параметрами в модульных тестах?

Я начал писать тестовые модули для моего текущего проекта. У меня действительно нет опыта с этим все же. Сначала я хочу полностью «получить его», поэтому в настоящее время я не использую ни свою платформу IoC, ни библиотеку-макет. Мне было интересно, если что-то не так с предоставлением нулевых...

37
Методы модульного тестирования с неопределенным выходом

У меня есть класс, который предназначен для генерации случайного пароля длины, которая также случайна, но ограничена, чтобы быть между определенной минимальной и максимальной длиной. Я создаю модульные тесты и столкнулся с интересной небольшой проблемой с этим классом. Вся идея модульного теста...

37
Нужно ли проводить юнит-тесты на известные дефекты?

Если мой код содержит известный дефект, который должен быть исправлен, но еще не исправлен, и не будет исправлен в текущем выпуске, и, возможно, не будет исправлен в обозримом будущем, в случае неудачного модульного теста для этой ошибки в тестовый набор? Если я добавлю модульное тестирование, оно...

37
Всегда ли плохо использовать «новый» в конструкторе?

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

36
Программисты плохие тестеры?

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

36
Есть ли необходимость сохранять тесты для простых (автономных) функций?

Учти это: public function polynominal($a, $b, $c, $d) { return $a * pow($x, 3) + $b * pow($x, 2) + $c * $x + $d; } Предположим, вы пишете различные тесты для вышеуказанной функции и доказываете себе и другим, что «это работает». Почему бы тогда не удалить эти тесты и жить долго и счастливо? Я хочу...

36
Написание минимального кода для прохождения юнит-теста - без читерства!

При выполнении TDD и написании модульного теста, как можно сопротивляться желанию «обмануть» при написании первой итерации кода «реализации», который вы тестируете? Например: давайте мне нужно вычислить факториал числа. Я начинаю с модульного теста (используя MSTest) что-то вроде: [TestClass]...

36
Как вы должны TDD игра Yahtzee?

Допустим, вы пишете в стиле ЯХДЗИ в стиле TDD. Вы хотите проверить часть кода, которая определяет, является ли набор из пяти бросков кубика фулл-хаусом. Насколько я знаю, при выполнении TDD вы следуете следующим принципам: Сначала напишите тесты Напишите простейшую вещь, которая работает Уточнение...