Parameter Runtime
TAEF menyediakan fungsionalitas untuk meneruskan parameter runtime ke pengujian yang dijalankannya.
Penggunaan
Untuk meneruskan parameter ke pengujian Anda, berikan parameter ini ke te.exe sebagai parameter baris perintah dalam formulir berikut:
Te.exe /p:ParameterName1=ParameterValue1 /p:ParameterName2=ParameterValue2
Jika nilai parameter berisi spasi, letakkan tanda kutip di sekitar nama parameter dan nilai parameter:
Te.exe /p:"ParameterName3=The quick brown fox jumps over the lazy dog"
Parameter Bawaan
TAEF memiliki dukungan bawaan untuk Parameter Runtime berikut:
- TestDeploymentDir: Direktori biner pengujian.
- TestName: Nama pengujian yang saat ini sedang berjalan.
- FullTestName: Nama lengkap pengujian termasuk kualifikasi variasi. Ini adalah nama saat TAEF mencatatnya untuk StartGroup dan EndGroup.
- TestResult: Hasil agregat terburuk dari pengujian yang dijalankan dalam cakupan fungsi Pembersihan ini. Agar dari yang terbaik ke terburuk: Lulus, NotRun, Dilewati, Diblokir, Gagal. Misalnya, jika setidaknya satu pengujian di kelas Anda diblokir tetapi tidak ada pengujian yang gagal, hasilnya akan "Diblokir" (hanya tersedia dalam fungsi Pembersihan).
Mengakses Parameter Runtime dari Pengujian
Tes Asli
Parameter Runtime tersedia dalam metode Penyiapan, Pembersihan, dan pengujian. Gunakan RuntimeParameters::TryGetValue API untuk mendapatkannya:
String value;
VERIFY_SUCCEEDED(RuntimeParameters::TryGetValue(L"ParameterName3", value));
Catatan: Untuk meminta Parameter Runtime dari pengujian, Anda harus menautkan ke pustaka Te.Common.lib.
Pengujian Terkelola
Parameter Runtime tersedia dalam metode penyiapan dan pengujian. Untuk mendapatkannya, gunakan properti TestContext kelas Anda.
Contoh (penyiapan kelas atau perakitan):
[ClassInitialize]
public static void ClassSetup(TestContext context)
{
String parameterName3 = context.Properties["ParameterName3"];
}
Demikian pula, dari pengujian:
[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; }
}
Tes Skrip
Parameter runtime tersedia dalam pengaturan, pembersihan, dan metode pengujian. Untuk mengambil parameter runtime, tentukan dan buat instans objek RuntimeParameters dari Te.Common:
<object id="RuntimeParameters" progid="Te.Common.RuntimeParameters" />
Setelah objek RuntimeParameters dibuat, Anda dapat menggunakan metode RuntimeParameters.Contains("<nama> parameter runtime") untuk mengkueri apakah parameter runtime disediakan dan tersedia untuk pengujian. Jika mengembalikan true, Anda kemudian dapat menggunakan RuntimeParameters.GetValue("<nama> parameter runtime") untuk mengambilnya. Perhatikan bahwa RuntimeParameters.GetValue(...) akan muncul jika parameter runtime tidak tersedia. Contoh berikut berasal dari contoh VBScript kami:
<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>