Неиспользуемые / используемые константы для тестов - PullRequest
0 голосов
/ 07 августа 2011

Я получил несколько констант, которые я использую для своих тестов. Они выглядят так:

//Canada 
private final static String CA_QUEBEC = "CA/Québec/Québec";
private final static String CA_VANCOUVER = "CA/British Columbia/Vancouver";

//USA
private final static String US_LOS_ANGELES = "US/California/Los Angeles";
private final static String US_NEW_YORK = "US/District of Columbia/New York";

//FRANCE
private final static String FR_PARIS = "FR/Paris/Paris";

и т.д.. Цель моего теста - быстро запустить мое приложение, используя одну из следующих констант : Например:

    String cityPath = FR_PARIS;

Тем не менее, поскольку я использую только один из них , я должен окружить каждую константу аннотацией предупреждения подавления (кроме той, которую я использую, см. Ниже):

    //Canada 
    @SuppressWarnings("unused")
    private final static String CA_QUEBEC = "CA/Québec/Québec";
    @SuppressWarnings("unused")
    private final static String CA_VANCOUVER = "CA/British Columbia/Vancouver";

Так, чтобы компилятор не жаловался на те константы, которые не используются, хотя они объявлены. Более того, когда я выбираю одну из этих констант, я получаю еще одно предупреждение о том, что я использовал аннотацию для подавления, но моя константа фактически используется.

Если я хочу избавиться от всех предупреждений, мне следует потратить время на наложение и удаление этих аннотаций, и это весьма неудобно для меня.

Итак, как я могу получить чистый, без предупреждения код в таком случае. Я ищу простое, но элегантное решение (например, не самоанализ).

Спасибо всем, Stack Over Flow действительно классное место. :)

Stéphane

Ответы [ 2 ]

4 голосов
/ 07 августа 2011

Сделайте их public или protected, и ваши предупреждения исчезнут.

Также похоже на запах кода, что вы вручную изменяете их для запуска тестов. Разве не имеет смысла иметь отдельные тесты для каждой константы? Если общего кода много, то вы можете расширить базовый класс.

1 голос
/ 07 августа 2011

Самое простое решение: пометить ваши константы как общедоступные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...