калькулятор на java
🖥 Мок-конструкторы Java с использованием Mockito Функция MockedConstruction из Mockito позволяет моделировать конструкцию объектов во время тестирования. Традиционно, когда новый объект создается внутри тестируемого метода, сложно менять его поведение. MockedConstruction устраняет это ограничение, перехватывая процесс создания объекта, позволяя разработчикам указывать собственное поведение или возвращаемые значения для конструкторов. Вот некоторые базовые понятия: 🔵 MockedConstruction(Class<T>): создает макет для конструкций класса T, управляя макетами в пределах его области действия 🔵 Блок try-with-resources: инкапсулирует область имитации, обеспечивая автоматическую очистку ресурсов в конце блока 🔵 whenever(mock.method(...)).thenReturn(...): настраивает макет поведения, динамически определяя ответы метода 🔵 assertEquals(mock, times(n)).method(...): утверждает частоту взаимодействия с макетами. К примеру, вот так можно протестировать Calculator.java: public class Calculator { public Calculator(){} public int add(int a, int b) { return a + b; } public int subtract(int a, int b) { return a - b; } } Теперь создадим тестовый класс CalculatorTest с использованием MockedConstruction: public class CalculatorTest { @Test public void testAddition() { try (MockedConstruction<Calculator> mocked = mockConstruction(Calculator.class)) { // creating a mock instance Calculator calculator = new Calculator(); // Mock behaviour when(calculator.add(10, 20)).thenReturn(30); when(calculator.subtract(30, 20)).thenReturn(10); // Test the methods assertEquals(30, calculator.add(10, 20)); assertEquals(10, calculator.subtract(30, 20)); // Get a list of all created mocks List<Calculator> constructed = mocked.constructed(); assertEquals(1, constructed.size()); } } } @javarush
Создание простого калькулятора на Java
Цель задания: Изучение основных конструкций языка Java, написание простого приложения для выполнения математических операций.