XCUITest Testlerini Karşıya Yükleme için Hazırlama
Önemli
Visual Studio App Center 31 Mart 2025'te kullanımdan kaldırılıyor. Tamamen kullanımdan kaldırılana kadar Visual Studio App Center'ı kullanmaya devam edebilirsiniz ancak geçiş yapmayı düşünebileceğiniz birkaç önerilen alternatif vardır.
Destek zaman çizelgeleri ve alternatifleri hakkında daha fazla bilgi edinin.
Bu kılavuz, XCUITest testlerini App Center Test'e yüklemek üzere hazırlama yönergelerini sağlar.
Test hizmeti gereksinimleri
- Xcode >= 9.4.1
- iOS >= 9.0
Test hizmeti sınırlamaları
- Uygulamalar veya sistemin geri kalanı aracılığıyla etkileşimler değil, yalnızca karşıya yüklenen uygulama test edilebilir.
Test için Derleme
App Center'da test çalıştırmak için uygulamanızı ve bir XCUITest paketi oluşturmanız gerekir. Uygulama proje dizininizin kökünden aşağıdaki iki komuttan birini çalıştırın:
# 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
büyük olasılıkla başlıklı PROJECT_NAME.xcodeproj
bir .xcodeproj
dosyaya işaret etmelidir. kullanıyorsanız .xcworkspace
yerine kullanın -workspace
-project
. YOUR_APP_SCHEME
uygulamanızı derlemek için kullandığınız düzen olmalıdır. Varsayılan olarak, genellikle uygulamanızın adıdır.
xcrun, uygulamanızı ve dizine DerivedData/Build
bir XCUITest paketi oluşturur. Uygulamanız ve XCUITest paketiniz dizinde DerivedData/Build/Products/Debug-iphoneos/
bulunur.
xcrun xcodebuild -list
Testleri App Center'a Yükleme
Bir test paketi hazırlandıktan sonra testlerinizi karşıya yüklemek ve çalıştırmak için bir test çalıştırması ayarlayın.
Aşağıda XCUITest paketinizi App Center Test'e nasıl yükleyebileceğini gösteren bir örnek verilmiştir.
# 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
App Center'a test göndermeye ilişkin somut bir örnek için app center'a test gönderen bu kabuk betiğine bakın.
Ek Ekran Görüntüleri ve Test Adımları
Her test yönteminin sonunda, test raporu için otomatik olarak bir ekran görüntüsü alınır. Her ekran görüntüsü App Center Test Raporu'nda ayrı bir Test Adımı olarak görüntülenir.
Aktiviteler
Apple'ın Activities
kullanarak test kodunuzu gruplandırarak test yöntemi için ek etiketler ve ekran görüntüleri oluşturabilirsiniz. Daha fazla bilgi için bkz . Testleri Etkinliklerle Alt Bölümlere Gruplandırma.
Test kodunu bir Etkinlikte sarmalama kod parçacığı
[XCTContext
runActivityNamed:title
block:^(id<XCTActivity> _Nonnull activity) {
// test code
}];
XCTContext.runActivity(named: title) { (activity) in
// test code
}
El ile Ekran Görüntüleri
Her Activity
birinin sonundaki test raporu için otomatik olarak bir ekran görüntüsü oluşturulur. XCUIScreen kullanarak ekran görüntüsü Activity
alıp XCTAttachment ile ek oluşturup geçerli Activity
öğesine ekleyerek bir ekran görüntüsü kaydedebilirsiniz. Bu ekran görüntüsü, sonundaki Activity
varsayılan ekran görüntüsü yerine App Center Test Raporları'nda görüntülenir.
Etkinlikte ekran görüntüsü oluşturmak ve eklemek için kod parçacığı
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)