Вы должны проверить свойства. Также автоматические свойства!
Юнитестесты - это гарантия того, что изменения в программе не нарушат ее.
Вы можете в конечном итоге изменить реализацию свойства, и вы хотите убедиться, что программа по-прежнему работает должным образом. Вы делаете это с вашими тестами.
Даже если вы используете автоматические свойства (в качестве замены полей / переменных-членов), причина для того, чтобы сделать их свойствами, заключается в том, что вы захотите изменить их реализацию позже. Тогда вы захотите, чтобы тесты были там.
РЕДАКТИРОВАТЬ: (В ответ на комментарий шахкальпеша ...)
Если вы меняете
реализация, тесты могут также
требовать изменения. Итак, я не знаю
почему кто-то должен тестировать просто
получить / установить?
Начиная с этого класса:
public class TimeOfDay
{
public int Hour{get; private set;}
public int Minute{get; private set;}
public TimeOfDay(int hour, int minute)
{
Hour = hour;
Minute = minute;
}
}
При изменении реализации тесты остаются в силе!
public class TimeOfDay
{
public int _minutesSinceMidnight = 0;
public int Hour
{
get { return _minutesSinceMidnight / 60; }
set { _minutesSinceMidnight = value * 60 + Minutes; }
}
public int Minute
{
get { return _minutesSinceMidnight % 60; }
set { _minutesSinceMidnight = Hour * 60 + value; }
}
public TimeOfDay(int hour, int minute)
{
Hour = hour;
Minute = minute;
}
}
Добавьте некоторые арифметические функции даты и времени или что-то еще, и я хотел бы, чтобы тесты показали, что все по-прежнему работает ...