Aracılığıyla paylaş


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_XCODEPROJbüyük olasılıkla başlıklı PROJECT_NAME.xcodeprojbir .xcodeproj dosyaya işaret etmelidir. kullanıyorsanız .xcworkspaceyerine 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 Activitieskullanarak 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 Activitybirinin 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 Activityvarsayı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)