Как вы издеваетесь над статическим классом?
Как вы издеваетесь над статическим классом?

Видео: Как вы издеваетесь над статическим классом?

Видео: Как вы издеваетесь над статическим классом?
Видео: Над школьником издевался весь класс и тот принёс оружие в школу 2024, Май
Anonim

Создайте интерфейс для DriverManager, насмехаться этот интерфейс, введите его через какую-то инъекцию зависимостей и проверьте, что насмехаться . Наблюдение: Когда вы звоните статический метод в пределах статический сущности, вам нужно изменить класс в @PrepareForTest. тогда вам нужно будет подготовить класс этот код находится в.

Можем ли мы имитировать статические методы?

Mockito позволяет нам создавать насмехаться объекты. С статический метод принадлежит классу, в Mockito нет возможности имитировать статические методы . Тем не мение, мы можем используйте PowerMock вместе с фреймворком Mockito для имитировать статические методы.

мы можем издеваться над статическими методами C #? 4 ответа. Moq (и другие на основе DynamicProxy издевательский frameworks) не могут насмехаться все, что не является виртуальным или абстрактным метод . В качестве альтернативы, ты мог бы рефакторинг вашего дизайна для абстрактных вызовов статические методы , и предоставьте эту абстракцию вашему классу с помощью внедрения зависимостей.

Точно так же люди спрашивают, можем ли мы имитировать статические методы с помощью MOQ?

Мокинг статических методов Бесплатные инструменты, такие как Moq может Только насмехаться интерфейсы или виртуальные / абстрактные методы на классах с общедоступным конструктором по умолчанию. Если ты нужно действительно имитировать статические методы , ты необходимо использовать коммерческий инструмент, например Microsoft Fakes (часть Visual Studio Enterprise) или Typemock Isolator.

Почему статические методы плохи?

Во вселенной OO статические методы антиматерии. Они не должны быть плохой , но они опасны, потому что используются неправильно. Есть только две ситуации, когда статические методы или переменные используются, и это не мерзость. Статические методы ценные и действительные метод создания объекта.

Рекомендуемые: