Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
TAEF poskytuje funkce pro předávání parametrů modulu runtime do testů, které provádí.
Použití
Pokud chcete předat parametr testu, zadejte tento parametr do te.exe jako parametr příkazového řádku v následujícím formuláři:
Te.exe /p:ParameterName1=ParameterValue1 /p:ParameterName2=ParameterValue2
Pokud hodnota parametru obsahuje mezery, dejte uvozovky kolem názvu parametru a hodnoty parametru:
Te.exe /p:"ParameterName3=The quick brown fox jumps over the lazy dog"
Předdefinované parametry
TaEF má integrovanou podporu následujících parametrů modulu runtime:
- TestDeploymentDir: Testovací binární adresář.
- TestName: Název testu, který je aktuálně spuštěný.
- FullTestName: Úplný název testu včetně kvalifikátorů variant. Jedná se o název, který taEF zaznamená do protokolu StartGroup a EndGroup.
- TestResult: Agregovaný nejhorší výsledek testů spuštěných v rámci této funkce Cleanup. V pořadí od nejlepších po nejhorší: Prošlo, Nevykonáno, Přeskočeno, Blokováno, Neúspěšné. Pokud byl například zablokovaný aspoň jeden test ve vaší třídě, ale žádné testy se nezdařily, výsledek bude "Blokováno" (k dispozici pouze ve funkcích Cleanup).
Přístup k parametrům modulu runtime z testů
Nativní testy
Parametry modulu runtime jsou k dispozici v instalačních, vyčištění a testovacích metodách. Pomocí modulu RuntimeParameters::TryGetValue API je získejte:
String value;
VERIFY_SUCCEEDED(RuntimeParameters::TryGetValue(L"ParameterName3", value));
Poznámka: Pokud chcete požadovat parametry modulu runtime z testů, budete muset propojit s knihovnou Te.Common.lib.
Spravované testy
Parametry modulu runtime jsou k dispozici v instalačních a testovacích metodách. Chcete-li je získat, použijte vlastnost "TestContext" vaší třídy.
Příklad (nastavení třídy nebo implementace):
[ClassInitialize]
public static void ClassSetup(TestContext context)
{
String parameterName3 = context.Properties["ParameterName3"];
}
Podobně z testu:
[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; }
}
Testy skriptů
Parametry modulu runtime jsou k dispozici v nastavení, čištění a testovacích metodách. Pokud chcete načíst parametry modulu runtime, definujte a vytvořte instanci objektu RuntimeParameters z Te.Common:
<object id="RuntimeParameters" progid="Te.Common.RuntimeParameters" />
Jakmile se vytvoří instance objektu RuntimeParameters, můžete použít metodu RuntimeParameters.Contains("<název> parametru modulu runtime") k dotazování, zda byl zadán parametr modulu runtime a je k dispozici pro test. Pokud vrátí hodnotu true, můžete ji načíst pomocí modulu RuntimeParameters.GetValue("<název> parametru modulu runtime"). Mějte na paměti, že runtimeParameters.GetValue(...) vyvolá výjimku, pokud parametr modulu runtime není k dispozici. Následující příklad je z našeho příkladu VBScriptu:
<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>