Xcode 26.4 cannot run app-hosted unit tests on physical iOS 16 devices ("Logic Testing Unavailable")

Summary:

After upgrading to Xcode 26.4, app-hosted XCTest execution on physical devices running iOS 16 fails at test-planning time with "Logic Testing Unavailable." The same project and same device work under Xcode 26.2. The failure reproduces with a standalone minimal Xcode project, which suggests this is an Xcode regression rather than a project-configuration issue.

Environment:

  • Xcode: 26.4 (17E192)
  • macOS: Tahoe 26.4
  • Failing device: iPhone 11 (iPhone12,1), iOS 16.0.3
  • Working comparisons:
    • Xcode 26.2 + same iPhone 11 (iOS 16.0.3): works
    • Xcode 26.4 + iPad Pro 11-inch (4th generation) on iOS 26.3: works

Regression: Yes.

  • Works on Xcode 26.2.
  • Fails on Xcode 26.4.
  • Same project, same signing setup, same physical iOS 16 device.

Minimal reproduction:

A minimal sample project with:

  • one iOS app target
  • one app-hosted unit-test target
  • one UI-test target (for comparison; not required to reproduce)

Steps for the unit-test repro on a physical device running iOS 16:

  1. Build for testing:
xcodebuild -project TestProject.xcodeproj \
  -scheme TestProject-UnitTests \
  -sdk iphoneos \
  -destination 'platform=iOS,id=<DEVICE_UDID>' \
  -derivedDataPath DerivedData-Device-Unit \
  -resultBundlePath Results-Device-Unit-Build.xcresult \
  DEVELOPMENT_TEAM=<TEAM_ID> \
  CODE_SIGN_STYLE=Automatic \
  build-for-testing
  1. Run tests without building:
xcodebuild -project TestProject.xcodeproj \
  -scheme TestProject-UnitTests \
  -sdk iphoneos \
  -destination 'platform=iOS,id=<DEVICE_UDID>' \
  -derivedDataPath DerivedData-Device-Unit \
  -resultBundlePath Results-Device-Unit-Test.xcresult \
  DEVELOPMENT_TEAM=<TEAM_ID> \
  CODE_SIGN_STYLE=Automatic \
  test-without-building

Note: xcodebuild test (combined build and test) also fails with the same error.

Expected result: The hosted unit tests run successfully on the connected physical device, as they do under Xcode 26.2.

Actual result: Step 1 (build-for-testing) succeeds. Step 2 (test-without-building) fails immediately (within ~1 second) with:

2026-03-26 11:23:28.683 xcodebuild[51930:731004]  DVTDeviceOperation: Encountered a build number "" that is incompatible with DVTBuildVersion.
2026-03-26 11:23:28.725 xcodebuild[51930:730966] [MT] DVTDeviceOperation: Encountered a build number "" that is incompatible with DVTBuildVersion.
2026-03-26 11:23:29.239 xcodebuild[51930:730966] Writing error result bundle to /var/folders/jl/knmkq18x4cg_3w087zgpfldm0000gn/T/ResultBundle_2026-26-03_11-23-0029.xcresult
xcodebuild: error: Failed to build project TestProject with scheme TestProject-UnitTests.: Cannot test target “redacted” on “redacted”: Logic Testing Unavailable Logic Testing on iOS devices is not supported. You can run logic tests on the Simulator.

Why this looks like an Xcode regression:

  • The same project and same physical iOS 16.0.3 device work under Xcode 26.2.
  • Under Xcode 26.4, build-for-testing still succeeds, so signing, provisioning, and bundle construction appear valid.
  • The failure happens only when Xcode plans or launches the on-device test run.
  • Before the failure, Xcode 26.4 logs: DVTDeviceOperation: Encountered a build number "" that is incompatible with DVTBuildVersion.
  • A newer physical device running iOS 26.3 works under Xcode 26.4 without this warning.
  • The issue also reproduces with a minimal standalone Xcode project, which makes a project-specific configuration problem unlikely.
  • The Xcode-generated .xctestrun files for the passing Xcode 26.2 case and failing Xcode 26.4 case are structurally equivalent, making an .xctestrun format difference unlikely to be the cause.

I tested Xcode 26.5 beta 1 (build 17F5012f), released on 2026-03-30, and the issue remains unchanged: app-hosted unit tests still fail on the same physical iOS 16 device with "Logic Testing Unavailable".

Xcode 26.4 cannot run app-hosted unit tests on physical iOS 16 devices ("Logic Testing Unavailable")
 
 
Q