I have created a virtualised Mac machine where I am running the latest Xcode version 16.4 with macOS Sequoia as the base image.
While running XCTest tests, I am observing a clear difference in behaviour between virtualised and non-virtualised setups.
Below is the command I am using to run the tests:
/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -xctestrun /Users/ltuser/290103613/xcui.xctestrun -destination "platform=iOS Simulator,id=79A5F8CC-4A2E-4C91-895D-AE97E25CB824,arch=arm64,OS=18.0" test-without-building "-only-testing:ClassName/MethodName/testName" -derivedDataPath /Users/ltuser/290103613/Archive -verbose IDELogLevel=debug IDETestLogLevel=debug ONLY_ACTIVE_ARCH=YES
Observed Issue
On virtualised hosts:
- Every XCTest is executed twice
- This happens for both passed and failed tests
- The behaviour is consistent across all virtualised machines
On non-virtualised (bare-metal) Macs:
- Tests execute only once, as expected
Debugging Steps Taken
- Multiple destination suspicion
Initially, I noticed the following warning:
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:iOS Simulator, id:0FFB9082-94AB-4D0A-A731-CC4452BDD4E7, OS:17.0, name:iPhone 15 }
{ platform:iOS Simulator, id:0FFB9082-94AB-4D0A-A731-CC4452BDD4E7, OS:17.0, name:iPhone 15 }
This raised suspicion that tests might be running twice due to multiple matching destinations.
- Destination narrowed down
I then explicitly restricted the destination to a single simulator UDID, after which:
- The warning disappeared
- However, the issue still persists
- Tests continue to run twice on virtualised hosts
Version Comparison
- Xcode 16.4 + macOS Sequoia (virtualised) → Tests run twice
- Xcode 15.x (same setup otherwise) → Tests run once
Questions
- Has anyone else faced this issue with Xcode 16.x on virtualised macOS?
- Is this a known issue with Xcode 16 + Virtualisation?
- Is there any recommended workaround or configuration change to avoid duplicate test execution?
I am currently blocked on this issue and would appreciate confirmation on whether this is an Xcode or virtualisation-related problem.
Thank you.