Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Soms is het handig om metagegevenswaarden te wijzigen, afhankelijk van runtime-waarden. Met voorwaardelijke metagegevens kunnen module-, klasse- of methodemetagegevens alleen worden toegepast in bepaalde voorwaarden op basis van runtimeparameters.
Syntaxis
Als u metagegevens voorwaardelijk wilt maken, voegt u een voorwaarde toe tussen vierkante haken na de naam van de metagegevens. De voorwaarde moet in het formaat van onze selectiequerytaal zijn. De waarden voor de variabelen zijn afkomstig van runtimeparameters.
Stel dat een test de volgende metagegevens heeft:
TEST_METHOD_PROPERTY(L"RunAs", L"Elevated")
TEST_METHOD_PROPERTY(L"Ignore[@NoElevation=true]", L"true")
Wanneer TAEF vervolgens het DLL-bestand laadt, wordt de voorwaarde '@NoElevation=true' geëvalueerd op basis van de runtimeparameters. Dus als de gebruiker de runtimeparameter NoElevation instelt op true, worden er metagegevens op de test toegepast met de naam 'Negeren' en de waarde 'true'.
Als er in één test meerdere voorwaardelijke metagegevens worden weergegeven, wordt elk afzonderlijk geëvalueerd op dezelfde manier. Dit kan handig zijn als u wilt dat een test meerdere mogelijke waarden van een runtimeparameter herkent.
TEST_METHOD_PROPERTY(L"Data:MyTestData[@TestCaseLevel='Low']", L"{ Datum1, Datum2, Datum3 }")
TEST_METHOD_PROPERTY(L"DataSource[@TestCaseLevel='High']", L"Pict:FullDataSet.model?Order=3")
Als voor een test de bovenstaande metagegevens worden weergegeven en de gebruiker TestCaseLevel instelt op Laag, wordt de test slechts drie keer aangeroepen vanwege de lichtgewicht gegevensbron. Als de gebruiker TestCaseLevel instelt op Hoog, wordt de PICT-gegevensbron gebruikt om veel meer parameters voor de test te genereren. Als TestCaseLevel niet is ingesteld op Hoog of Laag, worden er geen metagegevens toegevoegd.
Standaardwaarden
Als u alleen metadata wilt toevoegen wanneer er geen andere voorwaarden voor die specifieke metadata naam zijn geëvalueerd als waar, kunt u de metadata naam toevoegen aan [standaard].
TEST_METHOD_PROPERTY(L"DataSource", L"Pict:MyTest.model")
TEST_METHOD_PROPERTY(L"Pict:Order[@TestCaseLevel='Low']", L"1")
TEST_METHOD_PROPERTY(L"Pict:Order[default]", L"2")
TEST_METHOD_PROPERTY(L"Pict:Order[@TestCaseLevel='High']", L"3")
Als een test de bovenstaande metagegevens heeft en de gebruiker TestCaseLevel niet instelt op Laag of Hoog, wordt Pict:Order ingesteld op 2. Als de gebruiker TestCaseLevel instelt op Laag of Hoog, wordt Pict:Order ingesteld op respectievelijk 1 of 3. De waarde van 2 is niet van toepassing omdat ten minste één voorwaarde van de test voor Pict:Order als waar is beoordeeld.
Zorg ervoor dat de [standaard] niet wordt weggelaten als dat nodig is.
TEST_METHOD_PROPERTY(L"DataSource", L"Pict:MyTest.model")
TEST_METHOD_PROPERTY(L"Pict:Order[@TestCaseLevel='Low']", L"1")
TEST_METHOD_PROPERTY(L"Pict:Order", L"2") // This should have [default]
TEST_METHOD_PROPERTY(L"Pict:Order[@TestCaseLevel='High']", L"3")
Als TestCaseLevel is ingesteld op Laag, is de bovenstaande set metagegevens gelijk aan de volgende set metagegevens:
TEST_METHOD_PROPERTY(L"DataSource", L"Pict:MyTest.model")
TEST_METHOD_PROPERTY(L"Pict:Order", L"1")
TEST_METHOD_PROPERTY(L"Pict:Order", L"2")
In dit geval is het niet opgegeven of de PICT-gegevensbron de '1' of '2' voor de PICT-volgorde gebruikt.