B.S.
B.S.

Reputation: 21726

XCode Continuous Integration

I use new XCode Continuous Integration service running on Mac OS X 10.9. with using Mac OS X Server.

So I created new bot with testing target: Run tests on All Simulators (Without any devices)

After integration I receive such an error:

Integration failed. The bot was unable to find or use one of the devices on which it is configured to integrate.

How can this problem be solved? I do not want to connect any devices to server for integration testing.

Thanks in advance,

Upvotes: 5

Views: 1883

Answers (2)

possen
possen

Reputation: 9266

This is similar in description, upgrading to Xcode 7.3 and the latest OS X Server, I was getting this error.

Bot Issue for MB Bot (build service error) Integration #69 of MB Bot Open in Xcode: xcbot://P3P4/botID/e6fd861f04bdb3ae4b3d731a1f0c4f9f/integrationID/cf7e287759d2045e134163c25b01518a

Assertion: Could not test because no devices or simulators were available. File: (null):(null)

Introduced 1 integration ago

After digging into this a bit, and trying the "Fix..." button and installing all the different simulators for older OS versions to no avail on the server. Finally, I found that it was doing the checkout but immediately failing before it started building. Disabling the tests allowed it to compile. Then I noticed that the Build Configuration in the Bot configuration Perform Test Action, was set to Use Schema Settings, and that the scheme was older. After changing this in the schema, the diff looked like this in the Schema file.

- version = "1.3"> + version = "1.7">

This seems to have fixed the problem. This is probably a rarer situation, but thought I would post this answer if someone ran into a similar problem as it took the span of several days to figure out.

Upvotes: 0

seeker12
seeker12

Reputation: 731

Does the app you're testing support all devices? Try setting up the bot for "Specific Devices" and choose a simulator you have built to. Also make sure current code changes are pushed to the repository the Xcode server pulls from.

EDIT 11/19/13

  1. On your server machine, make sure you have the latest Xcode release installed (currently 5.0.2).

  2. Open Xcode and configure the Preferences, in Downloads, to install the command line tools, and be sure you have downloaded/installed a Simulator you want to test against. If you're building for iOS 6.1, for example, you'll need to install the simulator.

  3. In your Mac OS X Server Xcode admin panel, in the "Builds" section, make sure you choose that Xcode app version. The server will use that Xcode app to do the builds.

  4. When you edit the bot settings, where you configure which devices to test with, choose "Specific Devices" and choose a simulator you have successfully built to on your development machine, for example, choose the iPad Retina (6.1), or whatever your app supports.

If a specific simulator device does not appear in the list of Selected Devices, the simulator is probably not installed on your server machine. See step 2 above.

(Hope this helps)

Upvotes: 1

Related Questions