TestFilterContext Classe

Definição

Instantâneo dos metadados que o MSTest expõe a um ITestFilter único teste em consideração.

public sealed class TestFilterContext
[System.Diagnostics.CodeAnalysis.Experimental("MSTESTEXP", UrlFormat="https://aka.ms/mstest/diagnostics#{0}")]
[System.Runtime.CompilerServices.Nullable(0)]
public sealed class TestFilterContext
type TestFilterContext = class
[<System.Diagnostics.CodeAnalysis.Experimental("MSTESTEXP", UrlFormat="https://aka.ms/mstest/diagnostics#{0}")>]
[<System.Runtime.CompilerServices.Nullable(0)>]
type TestFilterContext = class
Public NotInheritable Class TestFilterContext
Herança
TestFilterContext
Atributos

Comentários

Somente os metadados disponíveis sem carregar o tipo de teste são expostos; ITestFilter deve ser capaz de decidir o uso de cadeias de caracteres, categorias, características e prioridade sozinhos. Isso é o que permite que o filtro solte testes antes que seu tipo de declaração seja carregado e antes [AssemblyInitialize] / [ClassInitialize] de ser executado.

As propriedades são mutáveis (settable) para que a plataforma possa preenchê-las por meio de um inicializador de objeto e, portanto, o tipo pode aumentar novos campos de metadados ao longo do tempo sem interromper implementações existentes ITestFilter ou seus testes de unidade. O MSTest em si não altera um TestFilterContext após ser entregue a um ITestFilter; os filtros também devem tratar a instância que recebem como somente leitura efetiva durante a chamada.

Cada propriedade descreve uma faceta separada do teste. As propriedades de cadeia de caracteres simples (FullyQualifiedName, DisplayName) são exibições de conveniência e são sempre preenchidas. As propriedades estruturadas (Namespace, , ClassName, ManagedMethodNameManagedTypeName, MethodArity, ) ParameterTypeFullNamespodem ser null quando os metadados não estão disponíveis – normalmente para testes descobertos por meio de caminhos de código que não exibem nomes gerenciados ECMA-335.

O tipo foi projetado para ser estendido ao longo do tempo: novas propriedades podem ser adicionadas sem interromper implementações existentes ITestFilter ou seus testes de unidade. Os consumidores constrói instâncias usando um inicializador de objeto (por exemplo new TestFilterContext { FullyQualifiedName = "…" }, ); nenhum construtor posicional precisa ser atualizado quando novas propriedades chegam.

Construtores

Nome Description
TestFilterContext()

Instantâneo dos metadados que o MSTest expõe a um ITestFilter único teste em consideração.

Propriedades

Nome Description
Categories

Obtém ou define as categorias de teste declaradas por meio TestCategoryAttribute do método ou de sua classe de declaração. O padrão é uma lista vazia.

ClassName

Obtém ou define o nome da classe simples (sem namespace) ou null quando nenhum metadados gerenciados está disponível. Os tipos aninhados são exibidos usando o formulário de metadados gerenciados (por exemplo Outer+Inner, ); consulte ManagedTypeName a representação ECMA-335 totalmente escapada.

DisplayName

Obtém ou define o nome de exibição do teste, conforme relatado ao executor/IDE.

FullyQualifiedName

Obtém ou define o nome de teste totalmente qualificado no Namespace.Class.Method formulário.

ManagedMethodName

Obtém ou define o nome do método no formulário de metadados ECMA-335 ou null quando nenhum metadado gerenciado está disponível.

ManagedTypeName

Obtém ou define o nome do tipo de declaração no formulário de metadados ECMA-335 ou null quando nenhum metadado gerenciado está disponível.

MethodArity

Obtém ou define o número de parâmetros de tipo genérico declarados no método de teste ou null quando nenhum metadado gerenciado está disponível. Zero indica um método não genérico.

MethodName

Obtém ou define o nome do método de teste não qualificado (ou seja, sem classe ou namespace).

Namespace

Obtém ou define o namespace da classe de teste de declaração ou null quando nenhum metadados gerenciados está disponível ou a classe está no namespace global.

ParameterTypeFullNames

Obtém ou define os nomes de tipo de parâmetro totalmente qualificados no estilo ECMA-335 do método de teste ou null quando nenhum metadado gerenciado está disponível. Uma lista vazia indica um método sem parâmetros.

Priority

Obtém ou define o PriorityAttribute valor declarado no teste ou null quando nenhuma prioridade foi declarada.

Source

Obtém ou define o caminho para o arquivo de assembly de teste que contém esse teste.

Traits

Obtém ou define as características anexadas a este teste. Várias características podem compartilhar a mesma chave; os consumidores não devem, portanto, assumir que a coleção se comporta como um dicionário. O padrão é uma lista vazia.

Aplica-se a