MSTEST0007. Использование атрибутов теста только для методов тестирования
Свойство | Ценность |
---|---|
идентификатор правила | MSTEST0007 |
Заголовок | Используйте атрибуты тестов только для методов тестирования |
Категория | Употребление |
исправление является критическим или неразрывным | Неразрывная |
включен по умолчанию | Да |
степень серьёзности по умолчанию | Информация |
представлено в версии | 3.3.0 |
Есть ли исправление кода? | Да |
Причина
Метод, который не помечен TestMethodAttribute, имеет один или несколько тестовых атрибутов.
Описание правила
Следующие атрибуты теста должны применяться только к методам, помеченным атрибутом TestMethodAttribute:
- ConditionBaseAttribute
- CssIterationAttribute
- CssProjectStructureAttribute
- DescriptionAttribute
- ExpectedExceptionBaseAttribute
- OwnerAttribute
- PriorityAttribute
- TestPropertyAttribute
- WorkItemAttribute
Устранение нарушений
Чтобы устранить нарушение этого правила, преобразуйте метод, в котором применены атрибуты теста к методу теста, задав атрибут [TestMethod]
или полностью удалите атрибуты теста.
Когда следует подавлять предупреждения
Не подавляйте предупреждение из этого правила. Если игнорировать это правило, атрибуты будут игнорироваться, так как они предназначены для использования только в тестовом контексте.
Подавление предупреждения
Если вы просто хотите отключить одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable MSTEST0007
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0007
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0007.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода.