Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
TAEF предоставляет функциональные возможности для передачи параметров среды выполнения в выполняемые тесты.
Употребление
Чтобы передать параметр в тест, предоставьте этот параметр te.exe в качестве параметра командной строки в следующей форме:
Te.exe /p:ParameterName1=ParameterValue1 /p:ParameterName2=ParameterValue2
Если значение параметра содержит пробелы, поместите кавычки вокруг имени параметра и значения параметра:
Te.exe /p:"ParameterName3=The quick brown fox jumps over the lazy dog"
Встроенные параметры
TAEF имеет встроенную поддержку следующих параметров среды выполнения:
- TestDeploymentDir: тестовый двоичный каталог.
- TestName: имя теста, выполняемого в настоящее время.
- FullTestName: полное название теста, включая варианты квалификаций. Это имя, которое TAEF регистрирует для StartGroup и EndGroup.
- TestResult: совокупный худший результат тестов, выполненных в рамках функции очистки. В порядке от лучшего до худшего: Передано, NotRun, пропущено, заблокировано, неудачно. Например, если хотя бы один тест в классе был заблокирован, но тесты не завершились ошибкой, результат будет "Заблокирован" (доступен только в функциях очистки данных).
Доступ к параметрам среды выполнения из тестов
Собственные тесты
Параметры среды выполнения доступны в методах установки, очистки и тестирования. Используйте API RuntimeParameters::TryGetValue, чтобы получить их:
String value;
VERIFY_SUCCEEDED(RuntimeParameters::TryGetValue(L"ParameterName3", value));
Примечание. Чтобы запросить параметры среды выполнения из тестов, необходимо связаться с библиотекой Te.Common.lib.
Управляемые тесты
Параметры среды выполнения доступны в методах установки и тестирования. Чтобы получить их, используйте свойство TestContext класса.
Пример (настройка класса или сборки):
[ClassInitialize]
public static void ClassSetup(TestContext context)
{
String parameterName3 = context.Properties["ParameterName3"];
}
Аналогичным образом, из теста:
[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; }
}
Тесты скриптов
Параметры среды выполнения доступны в программах установки, очистки и методах тестирования. Чтобы получить параметры среды выполнения, определите и создайте экземпляр объекта RuntimeParameters из Te.Common:
<object id="RuntimeParameters" progid="Te.Common.RuntimeParameters" />
После создания экземпляра объекта RuntimeParameters можно использовать метод RuntimeParameters.Contains("<имя> параметра среды выполнения") для запроса, если был предоставлен параметр среды выполнения и доступен для теста. Если он возвращает значение true, можно использовать RuntimeParameters.GetValue("<имя параметра среды выполнения>") для его извлечения. Обратите внимание, что RuntimeParameters.GetValue(...) выдаст исключение, если параметр среды выполнения недоступен. Следующий пример приведен в нашем примере 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>