Instruments automation trace only allows one target connection?
Asked Answered
E

3

61

I've created a simple javascript for my iOS app that I'd like to run simultaneously on multiple iOSDevices connected via USB to one host Mac machine. Launching instruments connected to an iPhone from the command line works fine but if I attempt to launch a second instruments connected to an iPad, the first instruments session hangs.


Upon terminating the first instruments session, I get one of more of the following lines printed:

Stopped: Script stopped due to device being disconnected

After extensive research on the subject, with no results on the phrase, I've been trying to read into what is meant by Apple's Instruments Guide:

When you choose All Processes, Attach to Process, or Choose Target from the Target menu, Instruments sets the default target for all instruments to the program you choose. There are occasions, however, when you might want to set a different target for each instrument. You might want to sample two different programs at the same time, for example, using the Sampler instrument. If you have some instruments that are capable of tracing all processes, you might want them to do just that while single-process instruments sample just one process.

I'm wondering if the Automation.tracetemplate is a single-process only instrument and that if another process is started with the same Automation trace then the first is usurped.

Any advice would be grateful as this is a major block for running our time intensive automation tests over multiple iOSDevices.


Update 27 Mar 2012

The following is from an email received after submitting a bug to Apple on the matter (developer.apple.com/bugreporter):

I heard back from a UI Automation engineer. UI Automation is a single process Instrument. As such, you cannot use it simultaneously on multiple devices.

Episiotomy answered 13/3, 2012 at 20:29 Comment(2)
Maybe it is possible to run instruments by a different user on another device?! Lets say user1 is running instruments in simulator. User2 is running instruments on iPad1 etc.. Maybe this would work..Brittaney
This answer may be usefullDilworth
N
2

You could try installing OS X in a virtual machine, and having two instances of the virtual machine running simultaneously. I know that might not be what you are looking for, but it should work.

Nocti answered 13/8, 2013 at 20:42 Comment(0)
R
1

Try to connect all your devices to a Mac OS X server then try if that fails get the device to pass it to the other one and then pass to the mac

Ronnaronnholm answered 20/8, 2013 at 22:47 Comment(0)
G
1

You cannot run UI Automation simultaneously on multiple devices. Interestingly, even Xcode 5 bots seem to have this same limitation. :-/

Grouper answered 19/11, 2013 at 18:50 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.