Clarification: xcodebuild can *build* without a specific device, but cannot run tests. This is an important distinction. If your tests care about hosting simulator, this matters. It’s just that mine never do.
(And I still think choosing a random simulator is a totally reasonable default)