Příprava testů XCUITest pro nahrání
Důležité
31. března 2025 je naplánované vyřazení sady Visual Studio App Center. I když můžete Visual Studio App Center dál používat, dokud nebude plně vyřazený, existuje několik doporučených alternativ, na které můžete zvážit migraci.
Přečtěte si další informace o časových osách podpory a alternativách.
Tato příručka obsahuje pokyny pro přípravu testů XCUITest pro nahrání do testu app Center.
Požadavky na testovací službu
- Xcode >= 9.4.1
- iOS >= 9.0
Omezení testovací služby
- Testovat lze pouze nahranou aplikaci, nikoli interakce prostřednictvím aplikací nebo zbytku systému.
Sestavení pro testování
Pokud chcete spustit test v App Center, musíte sestavit aplikaci a sadu XCUITest. Z kořenového adresáře projektu aplikace spusťte jeden z následujících dvou příkazů:
# How to build a xcodeproj
rm -rf DerivedData
xcrun xcodebuild build-for-testing \
-configuration Debug \
-project YOUR_XCODEPROJ \
-sdk iphoneos \
-scheme YOUR_APP_SCHEME \
-derivedDataPath DerivedData
YOUR_XCODEPROJ
by měl odkazovat na .xcodeproj
soubor s názvem .PROJECT_NAME.xcodeproj
Pokud použijete , použijte .xcworkspace
-workspace
místo -project
. YOUR_APP_SCHEME
by mělo být schéma, které používáte k sestavení aplikace. Ve výchozím nastavení je to obvykle název vaší aplikace.
Xcrun sestaví vaši aplikaci a sadu XCUITest do DerivedData/Build
adresáře. Vaše aplikace a sada XCUITest se budou nacházet v adresáři DerivedData/Build/Products/Debug-iphoneos/
.
xcrun xcodebuild -list
Nahrání testů do App Center
Jakmile je sada testů připravená, nahrajte a spusťte testy dalším nastavením testovacího spuštění .
Tady je příklad, jak můžete sadu XCUITest nahrát do nástroje App Center Test.
# Upload your test to App Center
appcenter test run xcuitest \
--app "APP_ID" \
--devices "DEVICE_SET_ID" \
--test-series "main" \
--locale "en_US" \
--build-dir DerivedData/Build/Products/Debug-iphoneos
Konkrétní příklad odeslání testů do App Center najdete v tomto skriptu prostředí, který odesílá testy do App Center.
Další snímky obrazovky a testovací kroky
Na konci každé testovací metody se pro sestavu testu automaticky vytvoří snímek obrazovky. Každý snímek obrazovky se zobrazí v testovací sestavě App Center jako samostatný testovací krok.
Aktivity
Další popisky a snímky obrazovky pro testovací metodu můžete vygenerovat seskupením testovacího kódu pomocí Apple Activities
. Další informace najdete v tématu Seskupování testů do dílčích kroků s aktivitami.
Fragment kódu pro zabalení testovacího kódu do aktivity
[XCTContext
runActivityNamed:title
block:^(id<XCTActivity> _Nonnull activity) {
// test code
}];
XCTContext.runActivity(named: title) { (activity) in
// test code
}
Ruční snímky obrazovky
Snímek obrazovky se automaticky vygeneruje pro testovací sestavu na konci každého Activity
. Snímek obrazovky můžete nahrát v jiném bodě v rámci snímku Activity
obrazovky tak, že pořidíte snímek obrazovky pomocí XCUIScreen, pak vytvoříte přílohu s XCTAttachment a přidáte ho do aktuálního Activity
. Tento snímek obrazovky se zobrazí v testovacích sestavách App Center místo výchozího snímku obrazovky na konci .Activity
Fragment kódu pro vygenerování a připojení snímku obrazovky v aktivitě
XCUIScreenshot *screenshot = [[XCUIScreen mainScreen] screenshot];
XCTAttachment *attachment;
attachment = [XCTAttachment attachmentWithScreenshot:screenshot];
[attachment setLifetime:XCTAttachmentLifetimeKeepAlways];
[activity addAttachment:attachment];
let screenshot = XCUIScreen.main.screenshot()
let attachment = XCTAttachment(screenshot: screenshot)
attachment.lifetime = .keepAlways
activity.add(attachment)