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 umožňuje testu určit, že může způsobit nebo vyžadovat restartování počítače. Tato funkce se skládá ze dvou až tří komponent: metadata, která označuje test, že může způsobit nebo vyžadovat restartování, rozhraní API, které požádá, aby TAEF provedl restartování nebo informoval TAEF o připravovaném restartování iniciovaném testem, a možnost příkazu, která umožňuje zapnutí těchto testů při lokálním spuštění.
Chování
Konkrétní sémantika restartování počítače vyžaduje určité změny modelu provádění TAEF, zajištění operací nastavení a vyčištění a chování úspěchu a selhání.
- Chování při restartování je k dispozici pouze pro test (s příslušnými metadaty), nikoli pro zařízení (nastavení a vyčištění).
- Pokud se rozhraní API pro restartování používá odkudkoli jinak než při testu s příslušným označením, funkce nebude vrácena. Místo toho funkce TAEF ukonče testovací proces. Představuje chybu v tom, jak byl test napsán a měl by být opraven testovací kód.
- Zkušební zařízení nebudou spuštěna na hranici restartování. To znamená, že operace demontáže se nespustí před restartováním (bez ohledu na to, jestli test zahájí restart nebo požádá, aby TAEF způsobil restart sám) a operace nastavení se po restartu nespustí.
- Protokolování záznamů (a případné chyby) se bude ignorovat od chvíle, kdy oznámíte nebo požádáte o restart, dokud test neskončí.
Metadata
Pokud chcete povolit použití rozhraní API pro restartování, měl by být test označený nastavením metadat RebootPossible na hodnotu true. Tato metadata dodržují obvyklá pravidla dědičnosti metadat, takže je možné je zadat na úrovni třídy, pokud by se jakýkoli test ve vaší třídě mohl restartovat (i když vzhledem k poměrně těžké povaze restartování, bylo by vhodné provést explicitní rozhodnutí o tom, který test může a nemůže zahájit restartování). Příklady specifikace metadat najdete v dokumentaci k vytváření testů v jazyce C++ a vytváření testů v jazyce C# .
Rozhraní API
Pro zpracování restartování počítače existují dvě hlavní funkce:
- Reboot(Option) vyžaduje, aby taEF inicioval restartování testovacího počítače.
- RebootCustom(Option) upozorní taEF, že test způsobí restartování testovacího počítače. Toto rozhraní API také podporuje chybové ukončení systému. TAEF zajistí, že se po návratu z rozhraní API vyprázdní příslušná data.
Parametr Option určuje chování životopisu, jedno z:
- Opětovné spuštění, což způsobí, že taEF znovu spustí stejný test po restartování
- Pokračujte, což způsobí, že taEF provede další test po restartování.
Původní
Získejte přístup k rozhraním API pro restartování připojením hlavičkového souboru Interruption.h a voláním funkcí v oboru názvů WEX::TestExecution::Interruption. Čtyři možná volání:
using namespace WEX::TestExecution;
Interruption::Reboot(RebootOption::Rerun);
Interruption::Reboot(RebootOption::Continue);
Interruption::RebootCustom(RebootOption::Rerun);
Interruption::RebootCustom(RebootOption::Continue);
Řízen
Zavolejte jednu ze dvou metod ve statické třídě Přerušení v oboru názvů WEX.TestExecution, který se nachází v Te.Managed.dll:
using WEX.TestExecution;
Interruption.Reboot(RebootOption.Rerun);
Interruption.Reboot(RebootOption.Continue);
Interruption.RebootCustom(RebootOption.Rerun);
Interruption.RebootCustom(RebootOption.Continue);
Použití příkazového řádku
Ideální použití této funkce je spuštění testů TAEF, které se potenciálně restartují při Cross Machine Execution nebo prostřednictvím WTT. V těchto případech TAEF umožňuje implicitní provedení restartu, protože nemá narušit váš pracovní tok. Pokud provádíte restartování testů ručně na místním počítači nebo potřebujete přepsat výchozí cestu, kterou taEF používá k ukládání jeho stavu do mezipaměti, budete se muset explicitně přihlásit k restartování testů. Pokud ne, označí se všechny testy restartování jako blokované. Pokud chcete povolit restartování testů při místním spuštění, použijte následující argument příkazu:
Te.exe /rebootStateFile:MyRestartFile.xml
TaEF vytvoří soubor určený k uložení jeho stavu (které testy už byly provedeny, jakýkoli příkaz TAEF nebo možnosti prostředí atd.) a obnoví, odkud po restartování skončil. TAEF zajišťuje opětovné spuštění svého procesu po restartu počítače.
Mějte na paměti, že tato možnost nefunguje na počítačích Arm kvůli odebrání funkce, na které taEF závisí na obnovení testů po restartování (klíč RunOnce).
* Pokud nepoužíváte žádné nekompatibilní funkce spouštění (v současné době paralelní režimy a režimy testů).
Nejčastější dotazy
Pokud zvolím možnost Znovu spustit, zjistím, jestli se test vyvolá poprvé nebo po restartování?
TaEF neposkytuje žádné funkce, které by vám k tomuto účelu byly k dispozici. Účelem možnosti opětovného spuštění je napsat testy, které mohou vyžadovat neurčitý počet restartování na základě stavu počítače (například spuštění služby Windows Update až po dokončení). Zvažte použití skupiny ExecutionGroup a možnosti pokračovat k rozdělení úloh do samostatných testovacích operací, ke kterým dochází v posloupnosti před a po restartování.
Které typy testů TAEF jsou podporované?
Tato funkce je dostupná pro nativní, spravované a skriptovací testy.