Я использую GMock для добавления некоторых модульных тестов в наши существующие Java-проекты. У нас есть несколько мест, где методы, подлежащие тестированию, являются статическими методами, которые используют дополнительные статические методы в методе, который мы хотим проверить.Частичный издевательский класс с несколькими статическими методами с GMock
Я хотел бы иметь возможность частично издеваться над классом, почти все статические методы для класса, отличного от начальной точки входа для тестирования.
Например:
class StaticClass {
static void method(String one) {
method2()
}
static void method(String one, String two) {
...
}
}
Моя надежда состоит в том, что я могу дразнить второй статический метод, но как только я, метод (String) идет MIA и выполняет тест завершается с исключением ожидания. Есть ли способ частично издеваться над классом, поддерживая функциональность первого метода, но издеваясь над статическим доступом второго метода?
Я также пробовал использовать программирование metaClass, чтобы издеваться над этим методом, но если я устанавливаю метод равным замыканию, первый метод снова возвращается к MIA. Не знаете, как это сделать с перегруженными методами. Есть идеи?