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.
Xcode 26.4 cannot run app-hosted unit tests on physical iOS 16 devices ("Logic Testing Unavailable")
 
 
Q