Аннотации Java могут быть протестированной единицей?

Вы можете сначала прочитать содержимое вашего файла, добавить его к новым данным, а затем записать все в файл:

with open("webscraper2noteppad++", "r") as f:
    data = f.read()

with open("webscraper2noteppad++", "w") as f:
    f.write('{}{}{}'.format(lucky, '\n' if data else '', data))
14
задан Esko 24 March 2009 в 09:12
поделиться

4 ответа

Это не что-то, для чего я обычно писал бы тесты, но Вы могли просто создать ряд тестовых классов, которые используют и злоупотребляют аннотацией, для тестирования этого это хранит свои членские значения, что это имеет корректные значения по умолчанию и т.д.

Это будет только работать над аннотациями Во время выполнения, которые являются specfied на корректных целях, конечно.

По моему опыту, сами аннотации редко достаточно интересны гарантировать модульные тесты - это обычно - код, который использует их, которому нужно тестирование. Но затем я не от 100%-й философской школы покрытия кода :-)

8
ответ дан 1 December 2019 в 13:48
поделиться

Аннотации оказывают некоторое влияние (иначе, было бы бессмысленно использовать их). Не тестируйте присутствие аннотации, но эффект, который оно должно иметь.

8
ответ дан 1 December 2019 в 13:48
поделиться

Вы можете тест единицы, если Ваше определение аннотации в порядке: это может быть применено к допустимому набору элементов, действительно ли это доступно во времени выполнения при необходимости, значение по умолчанию, правильно инициализированное? Затем позже, модульный тест класс, который обработает Вашу аннотацию.

1
ответ дан 1 December 2019 в 13:48
поделиться

Вы не можете протестировать их непосредственно с тех пор, как Вы отметили, нет ничего там для тестирования. Вы могли доказать некоторые вещи, хотя:

  • Объекты с аннотациями в коде имеют любые ожидаемые аннотации во времени выполнения
  • Значения по умолчанию были инициализированы
  • Аннотации связывают с вещами, к которым Вы ожидаете их

Когда Вы, которые модульный тест, одна из вещей, которые можно доказать, - то, что реализация соответствует интерфейсу. Таким образом, если аннотация подразумевает определенное поведение или свойства (например. Serializable вещи действительно должны быть сериализуемыми), Вы хотели бы представить это в своих тестах, также.

0
ответ дан 1 December 2019 в 13:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: