Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
| Property | valor |
|---|---|
| ID da regra | MSTEST0018 |
| Título | DynamicData deve ser válido |
| Categoria | Utilização |
| A correção está quebrando ou não quebrando | Sem quebra |
| Ativado por padrão | Sim |
| Severidade padrão | Aviso |
| Introduzido na versão | 3.6.0 |
Motivo
Um método marcado com [DynamicData] deve ter layout válido.
Descrição da regra
Os métodos marcados com [DynamicData] também devem ser marcados com [TestMethod] (ou um atributo derivado).
O membro da "fonte de dados" fez referência:
- deve existir no tipo especificado (classe atual se nenhum tipo for especificado)
- não deve ter sobrecargas
- deve ser do mesmo tipo (método ou propriedade) que a
DataSourceTypepropriedade - deve ser
static - não deve ser genérico
- deve ser sem parâmetros
- deve devolver
IEnumerable<object[]>,IEnumerable<Tuple<T,...>>, ouIEnumerable<ValueTuple<,...>>
O membro "nome de exibição" fez referência:
- deve existir no tipo especificado (classe atual se nenhum tipo for especificado)
- não deve ter sobrecargas
- deve ser um método
- deve ser
static - não deve ser genérico
- deve voltar
string - deve tomar exatamente 2 parâmetros, sendo o primeiro e
MethodInfoo segundoobject[]
Exemplo:
public static string GetDisplayName(MethodInfo methodInfo, object[] data)
{
return string.Format("{0} ({1})", methodInfo.Name, string.Join(",", data));
}
Como corrigir violações
Certifique-se de que o atributo corresponde às condições descritas acima.
Quando suprimir avisos
Não suprima um aviso desta regra. Se você ignorar essa regra, as instâncias sinalizadas serão ignoradas ou resultarão em erro de tempo de execução.
Suprimir um aviso
Se você quiser apenas suprimir uma única violação, adicione diretivas de pré-processador ao seu arquivo de origem para desativar e, em seguida, reativar a regra.
#pragma warning disable MSTEST0018
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0018
Para desabilitar a regra para um arquivo, pasta ou projeto, defina sua gravidade como none no arquivo de configuração .
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0018.severity = none
Para obter mais informações, consulte Como suprimir avisos de análise de código.