Запитання з тегом «mocking»

Знущання та підробка - це способи ізоляції коду чи компонентів, щоб забезпечити тест одиниць тестування проти тестової одиниці коду лише без фактичного використання інших компонентів або залежностей програми. Знущання відрізняється від підробки тим, що макет може бути перевірений для затвердження результатів тесту.

11
(Чому) важливо, щоб одиничний тест не перевіряв залежності?
Я розумію цінність автоматизованого тестування і використовую його там, де проблема досить чітко визначена, щоб я міг знайти хороші тестові випадки. Однак я помітив, що деякі люди тут і на StackOverflow наголошують на тестуванні лише одиниці, а не її залежності. Тут я не бачу вигоди. Знущання / заглушення, щоб уникнути …

11
Як ви виявляєте проблеми залежності залежними тестами під час використання макетних об'єктів?
У вас є клас X, і ви пишете деякі одиничні тести, які підтверджують поведінку X1. Існує також клас A, який приймає X як залежність. Коли ви пишете одиничні тести для A, ви знущаєтесь з X. Іншими словами, під час тестування одиниці A ви встановлюєте (постулюєте) поведінку макету X як X1. …

11
Чи є статична загально "зла" для тестування одиниць і якщо так, то чому рекомендує Решарпер? [зачинено]
Я виявив, що у C # .NET є лише 3 способи розділити тестові (макет / заглушки) залежності, які є статичними в C # .NET: Молі TypeMock JustMock Зважаючи на те, що два з них не безкоштовні, а один не потрапив до версії 1.0, глузувати з статичних матеріалів не надто просто. …

8
Як саме слід писати одиничні тести, не надмірно глузуючи?
Як я розумію, суть одиничних тестів полягає у випробуванні одиниць коду ізольовано . Це означає що: Вони не повинні порушуватися будь-якою незв'язаною зміною коду в іншому місці бази даних. Помилка в тестованому блоці повинна бути зламана лише одна одиниця тесту на відміну від інтеграційних тестів (які можуть зламатися у купи). …

3
Це правильне використання методу скидання Mockito?
У моєму тестовому класі у мене є приватний метод, який конструює об'єкт, що часто використовується Bar. BarКонструктор викликає someMethod()метод в моєму знущалися об'єкта: private @Mock Foo mockedObject; // My mocked object ... private Bar getBar() { Bar result = new Bar(mockedObject); // this calls mockedObject.someMethod() } У деяких моїх методах …
68 java  mocking 

6
Як я перевіряю систему, де над об'єктами важко знущатися?
Я працюю з наступною системою: Network Data Feed -> Third Party Nio Library -> My Objects via adapter pattern Нещодавно у нас виникла проблема, коли я оновлював версію бібліотеки, якою я користувався, яка, серед іншого, спричинила зміну часових позначок (які повертається сторонніми бібліотеками long) з мілісекунд після епохи на наносекунд …

2
Чи використовує інтеграційне тестування глузування?
Зараз я перебуваю в класі тестування програмного забезпечення, де для нашого семестрового проекту ми маємо виконувати на ньому кілька типів тестування, наприклад тестування одиниць та інтеграція. Для тестування на інтеграцію професор сказав, що для макетування інтеграції та глузливих бібліотек (як EasyMock та Mockito) використовуються бібліотеки для інтеграції. Я дуже заплутався. …

3
Чи добре підробляти частину тестуваного класу?
Припустимо, у мене є клас (пробачте надуманий приклад та поганий його дизайн): class MyProfit { public decimal GetNewYorkRevenue(); public decimal GetNewYorkExpenses(); public decimal GetNewYorkProfit(); public decimal GetMiamiRevenue(); public decimal GetMiamiExpenses(); public decimal GetMiamiProfit(); public bool BothCitiesProfitable(); } (Зверніть увагу, що методи GetxxxRevenue () та GetxxxExpenses () мають залежності, які витісняються) …

3
Тверді одиничні випробування через необхідність надмірного глузування
Я боровся з все більш набридливою проблемою щодо наших тестових підрозділів, які ми впроваджуємо в своїй команді. Ми намагаємось додати одиничні тести до застарілого коду, який не був добре розроблений, і хоча ми не мали жодних труднощів з фактичним додаванням тестів, ми починаємо боротися з тим, як виходять тести. Як …

6
З точки зору TDD, чи я погана людина, якщо тестую проти живої кінцевої точки замість макети?
Я дотримуюся TDD релігійно. Мої проекти, як правило, мають 85% або краще тестового покриття, із значущими тестовими кейсами. Я дуже багато працюю з HBase , і головний клієнтський інтерфейс - HTable - це справжній біль для глузування. На те, щоб написати свої тести на одиницю, мені потрібно в 3 або …

3
Знущання вводить обробку у виробничий код
Припускаючи інтерфейс IReader, реалізацію інтерфейсу ReaderImplementation IReader та клас ReaderConsumer, який споживає та обробляє дані з читача. public interface IReader { object Read() } Впровадження public class ReaderImplementation { ... public object Read() { ... } } Споживач: public class ReaderConsumer() { public string location // constructor public ReaderConsumer() { …

3
Які основні фактори при виборі глузуючої рамки?
Я хочу розпочати роботу з об'єктами в моїх тестових одиницях. Здається, там є багато хороших глузуючих рамок. Чи мають різні рамки різні цільові аудиторії? Які чинники слід враховувати, вибираючи, яка рамка підходить для моєї ситуації?
15 mocking 


7
Як уникнути необхідності тестувати приватні методи
Я знаю, що ви не повинні перевіряти приватні методи, і якщо це виглядає так, як вам потрібно, там може бути клас, який чекає виходу. Але я не хочу мати газільйонні класи просто для того, щоб я міг перевірити їхні загальнодоступні інтерфейси, і я вважаю, що для багатьох класів, якщо я …

1
Тестування модуля клієнта API та обгортки
Я ходив по колах, намагаючись зрозуміти найкращий спосіб перевірити клієнтську бібліотеку API, яку я розробляю. Бібліотека має Clientклас, який в основному має зіставлення 1: 1 з API, та додатковий Wrapperклас, який забезпечує більш зручний інтерфейс у верхній частині Client. Wrapper --> Client --> External API Я спершу написав купу тестів …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.