Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
| Свойство | Значение |
|---|---|
| Идентификатор правила | MSTEST0018 |
| Заголовок | DynamicData должен быть допустимым |
| Категория | Использование |
| Исправление является критическим или не критическим | Не критическое |
| Включен по умолчанию | Да |
| Серьезность по умолчанию | Предупреждение |
| Представлено в версии | 3.6.0 |
Причина
Метод, помеченный как [DynamicData] допустимый макет.
Описание правила
Методы, помеченные с [DynamicData] помощью атрибута, также должны быть помечены ( [TestMethod] или производным атрибутом).
На элемент "источник данных", на который ссылается:
- должен существовать в указанном типе (текущий класс, если тип не указан)
- не должно иметь перегрузки
- должен иметь тот же тип (метод или свойство), что
DataSourceTypeи свойство. - должно быть
static - не должно быть универсальным
- должен быть без параметров
- должно возвращать
, , или
На элемент "отображаемое имя", на который ссылается:
- должен существовать в указанном типе (текущий класс, если тип не указан)
- не должно иметь перегрузки
- должен быть методом
- должно быть
static - не должно быть универсальным
- должен возвращать
string - должен принимать ровно 2 параметра, первое и второе —
MethodInfoobject[]
Пример:
public static string GetDisplayName(MethodInfo methodInfo, object[] data)
{
return string.Format("{0} ({1})", methodInfo.Name, string.Join(",", data));
}
Устранение нарушений
Убедитесь, что атрибут соответствует указанным выше условиям.
Когда лучше отключить предупреждения
Для этого правила отключать вывод предупреждений не следует. Если игнорировать это правило, помеченные экземпляры будут пропущены или приводят к ошибке среды выполнения.
Подавление предупреждения
Если вы просто хотите отключить одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable MSTEST0018
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0018
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0018.severity = none
Дополнительные сведения см. в статье Подавление предупреждений анализа кода.