Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O TAEF fornece funcionalidade para passar parâmetros de tempo de execução para os testes que executa.
Utilização
Para passar um parâmetro para o teste, forneça esse parâmetro para te.exe como um parâmetro de linha de comando da seguinte forma:
Te.exe /p:ParameterName1=ParameterValue1 /p:ParameterName2=ParameterValue2
Se o valor do parâmetro contiver espaços, coloque aspas em torno do nome e do valor do parâmetro:
Te.exe /p:"ParameterName3=The quick brown fox jumps over the lazy dog"
Parâmetros incorporados
O TAEF tem suporte interno para os seguintes parâmetros de tempo de execução:
- TestDeploymentDir: O diretório binário de teste.
- TestName: O nome do teste que está em execução no momento.
- FullTestName: O nome completo do teste, incluindo qualificadores de variação. Este é o nome que o TAEF regista para StartGroup e EndGroup.
- TestResult: O resultado agregado do pior caso de testes executados no âmbito desta função de limpeza. Em ordem do melhor para o pior: Aprovado, NãoExecutado, Ignorado, Bloqueado, Reprovado. Por exemplo, se pelo menos um teste na sua classe foi bloqueado, mas nenhum teste falhou, o resultado será "Bloqueado" (disponível apenas nas funções de limpeza).
Acessando parâmetros de tempo de execução a partir de testes
Testes nativos
Os parâmetros de tempo de execução estão disponíveis nos métodos de instalação, limpeza e teste. Use a API RuntimeParameters::TryGetValue para obtê-los:
String value;
VERIFY_SUCCEEDED(RuntimeParameters::TryGetValue(L"ParameterName3", value));
Nota: Para solicitar parâmetros de tempo de execução de seus testes, você precisará vincular a biblioteca Te.Common.lib.
Testes gerenciados
Os parâmetros de tempo de execução estão disponíveis nos métodos de configuração e teste. Para obtê-los, use a propriedade TestContext da sua classe.
Exemplo (configuração de classe ou assemblagem):
[ClassInitialize]
public static void ClassSetup(TestContext context)
{
String parameterName3 = context.Properties["ParameterName3"];
}
Da mesma forma, num teste:
[TestMethod]
public void VerifyRuntimeParametersTest()
{
String parameterName3 = m_testContext.Properties["ParameterName3"].ToString());
}
// Note, that to work with runtime parameters, as well as with your tests, you need to add
// definition of test context property to your class
private TestContext m_testContext;
public TestContext TestContext
{
get { return m_testContext; }
set { m_testContext = value; }
}
Testes de script
Os parâmetros de tempo de execução estão disponíveis nos métodos de configuração, limpeza e teste. Para recuperar parâmetros de tempo de execução, defina e instancie o objeto RuntimeParameters de Te.Common:
<object id="RuntimeParameters" progid="Te.Common.RuntimeParameters" />
Depois que o objeto RuntimeParameters é instanciado, você pode usar o método RuntimeParameters.Contains("<runtime parameter name>") para consultar se um parâmetro de tempo de execução foi fornecido e está disponível para o teste. Se retornar true, poderás então usar RuntimeParameters.GetValue("<nome do parâmetro de execução>") para o recuperar. Observe que RuntimeParameters.GetValue(...) será lançado se o parâmetro runtime não estiver disponível. O exemplo a seguir é do nosso exemplo VBScript:
<script language="VBScript">
<![CDATA[
Function TestOne()
dim param
param = "No runtime param"
If RuntimeParameters.Contains("param") Then
param = RuntimeParameters.GetValue("param")
End If
Log.Comment("Param is " + param)
dim testDir
If RuntimeParameters.Contains("testDir") Then
testDir = RuntimeParameters.GetValue("TestDir")
End If
Log.Comment("The test harness is running in " + testDir)
End Function
]] >
</script>