MemberConditionAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
public sealed class MemberConditionAttribute : Microsoft.VisualStudio.TestTools.UnitTesting.ConditionBaseAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)]
[System.Runtime.CompilerServices.Nullable(0)]
public sealed class MemberConditionAttribute : Microsoft.VisualStudio.TestTools.UnitTesting.ConditionBaseAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
type MemberConditionAttribute = class
inherit ConditionBaseAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method, AllowMultiple=true, Inherited=false)>]
[<System.Runtime.CompilerServices.Nullable(0)>]
type MemberConditionAttribute = class
inherit ConditionBaseAttribute
Public NotInheritable Class MemberConditionAttribute
Inherits ConditionBaseAttribute
- Herança
- Atributos
Comentários
Quando vários nomes de membro são fornecidos a um único atributo, seus valores são combinados com um AND lógico: o atributo IsConditionMet é true somente se cada membro referenciado for avaliado como true.
Cada MemberConditionAttribute instância forma sua própria GroupName, portanto, empilhar várias MemberConditionAttribute declarações no mesmo destino é combinado com um AND lógico, correspondendo ao padrão de uso típico [ConditionalFact] em outras estruturas de teste.
Se o membro referenciado não puder ser encontrado como uma publicstaticBoolean propriedade, campo ou método sem parâmetros ou (para métodos) exigir parâmetros, a avaliação IsConditionMet gerará um .InvalidOperationException Isso aparece como um erro de teste em vez de um salto silencioso para que erros de digitação e refatorações não desabilitem acidentalmente os testes.
Esse atributo não é herdado. A aplicação a uma classe base não afetará as classes derivadas.
[TestMethod]
[MemberCondition(typeof(Environment), nameof(Environment.Is64BitProcess))]
public void Only_Runs_On_64Bit() { }
[TestMethod]
[MemberCondition(typeof(PlatformDetection),
nameof(PlatformDetection.IsNotBrowser),
nameof(PlatformDetection.IsThreadingSupported))]
public void Requires_Threading_And_Not_Browser() { }
[TestMethod]
[MemberCondition(ConditionMode.Exclude, typeof(PlatformDetection), nameof(PlatformDetection.IsMonoRuntime))]
public void Does_Not_Run_On_Mono() { }
Construtores
| Nome | Description |
|---|---|
| MemberConditionAttribute(ConditionMode, Type, String, String[]) |
Inicializa uma nova instância da classe MemberConditionAttribute. |
| MemberConditionAttribute(ConditionMode, Type, String) |
Inicializa uma nova instância da classe MemberConditionAttribute. |
| MemberConditionAttribute(Type, String, String[]) |
Inicializa uma nova instância da MemberConditionAttribute classe com Include semântica: o teste é executado somente quando cada membro referenciado é avaliado |
| MemberConditionAttribute(Type, String) |
Inicializa uma nova instância da MemberConditionAttribute classe com Include semântica: o teste é executado somente quando o membro referenciado é avaliado como |
Propriedades
| Nome | Description |
|---|---|
| ConditionMemberNames |
Obtém o(s) nome(s) dos |
| ConditionType |
Obtém o tipo que declara os |
| GroupName |
Obtém o nome do grupo para esse atributo. Isso é relevante quando vários atributos que herdam ConditionBaseAttribute estão presentes. Os IsConditionMet valores dos atributos no mesmo grupo são "OR" juntos. Enquanto o valor de grupos diferentes é "AND" juntos. Em outras palavras, um teste será ignorado se qualquer grupo tiver todos os seus IsConditionMet valores como false. |
| IgnoreMessage |
Obtém ou define a mensagem de ignorar indicando o motivo para ignorar o método de teste ou a classe de teste. (Herdado de ConditionBaseAttribute) |
| IsConditionMet |
Obtém um valor que indica se a condição é atendida. A implementação dessa propriedade não deve ler a Mode propriedade. |
| Mode |
Obtém o modo de condição. (Herdado de ConditionBaseAttribute) |