TestFilterContext Classe

Definizione

Lo snapshot dei metadati MSTest espone a un ITestFilter oggetto per un singolo test in considerazione.

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
Ereditarietà
TestFilterContext
Attributi

Commenti

Vengono esposti solo i metadati disponibili senza caricare il tipo di test; ITestFilter deve essere in grado di decidere solo usando stringhe, categorie, tratti e priorità. Questo è ciò che consente al filtro di eliminare i test prima del caricamento del tipo dichiarante e prima [AssemblyInitialize] / [ClassInitialize] dell'esecuzione.

Le proprietà sono modificabili (impostabili) in modo che la piattaforma possa popolarle tramite un inizializzatore di oggetti e quindi il tipo può aumentare i nuovi campi di metadati nel tempo senza interrompere le implementazioni esistenti ITestFilter o i relativi unit test. MSTest non modifica un oggetto TestFilterContext dopo che viene passato a un ITestFilteroggetto ; i filtri devono considerare analogamente l'istanza ricevuta in modo efficace in sola lettura per la durata della chiamata.

Ogni proprietà descrive un facet separato del test. Le proprietà di stringa flat (FullyQualifiedName, DisplayName) sono visualizzazioni pratici e vengono sempre popolate. Le proprietà strutturate (Namespace, ClassName, ManagedTypeNameManagedMethodName, MethodArityParameterTypeFullNames) possono essere null quando i metadati non sono disponibili, in genere per i test individuati tramite percorsi di codice che non esondano nomi gestiti ECMA-335.

Il tipo è progettato per essere esteso nel tempo: è possibile aggiungere nuove proprietà senza interrompere le implementazioni esistenti ITestFilter o i relativi unit test. I consumer costruiscono istanze usando un inizializzatore di oggetti ,ad esempio new TestFilterContext { FullyQualifiedName = "…" }; non è necessario aggiornare alcun costruttore posizionale quando vengono posizionate nuove proprietà.

Costruttori

Nome Descrizione
TestFilterContext()

Lo snapshot dei metadati MSTest espone a un ITestFilter oggetto per un singolo test in considerazione.

Proprietà

Nome Descrizione
Categories

Ottiene o imposta le categorie di test dichiarate tramite TestCategoryAttribute il metodo o la relativa classe dichiarante. Il valore predefinito è un elenco vuoto.

ClassName

Ottiene o imposta il nome della classe semplice (senza spazio dei nomi) o null quando non sono disponibili metadati gestiti. I tipi annidati vengono visualizzati usando il modulo dei metadati gestiti ,ad esempio Outer+Inner; vedere ManagedTypeName per la rappresentazione ECMA-335 completamente preceduta da escape.

DisplayName

Ottiene o imposta il nome visualizzato del test, come segnalato all'IDE/runner.

FullyQualifiedName

Ottiene o imposta il nome completo del test nel Namespace.Class.Method modulo.

ManagedMethodName

Ottiene o imposta il nome del metodo nel formato dei metadati ECMA-335 o null quando non sono disponibili metadati gestiti.

ManagedTypeName

Ottiene o imposta il nome del tipo dichiarante nel formato dei metadati ECMA-335 o null quando non sono disponibili metadati gestiti.

MethodArity

Ottiene o imposta il numero di parametri di tipo generico dichiarati nel metodo di test o null quando non sono disponibili metadati gestiti. Zero indica un metodo non generico.

MethodName

Ottiene o imposta il nome del metodo di test non qualificato,ad esempio senza classe o spazio dei nomi.

Namespace

Ottiene o imposta lo spazio dei nomi della classe di test dichiarante oppure null quando non sono disponibili metadati gestiti o la classe si trova nello spazio dei nomi globale.

ParameterTypeFullNames

Ottiene o imposta i nomi dei tipi di parametro completi in stile ECMA-335 del metodo di test o null quando non sono disponibili metadati gestiti. Un elenco vuoto indica un metodo senza parametri.

Priority

Ottiene o imposta il PriorityAttribute valore dichiarato nel test o null quando non è stata dichiarata alcuna priorità.

Source

Ottiene o imposta il percorso del file di assembly di test contenente questo test.

Traits

Ottiene o imposta i tratti associati a questo test. Più tratti possono condividere la stessa chiave; i consumer non devono pertanto presupporre che la raccolta si comporti come un dizionario. Il valore predefinito è un elenco vuoto.

Si applica a