Java - Как назначить значение переменной во время модульного теста, отличное от значения во время выполнения - PullRequest
0 голосов
/ 06 мая 2019

Допустим, у меня есть метод, который использует final static String из другого класса, такого как общий класс.Класс

public class Common {
    public static final String MY_STRING = "This is my string";
    public static final String TEST_STRING = "This is a test time string";
}

Common может использоваться несколькими классами.Вот пример класса, который использует класс Common.

public class MyClass {

    private String variable = Common.MY_STRING;

    public void myMethod() {
        System.out.println(variable);

        // some other codes
    }
}

Теперь предположим, что я хочу, чтобы myMethod использовал Common.TEST_STRING во время модульного теста, но все еще использовал Common.MY_STRING во время выполнения.Другими словами, как я могу управлять variable в MyClass, чтобы ему были присвоены разные значения для теста и времени выполнения?

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

...