4

Hi i want to run ios test cases parallel using IOS simulator on appium. I know MAC restricts as only one simulator will be up, but is there a backdoor entry i can make them in parallel , i don't want to use grid because of some reasons , so is there a way to run ios test cases parallel on IOS simulator.

And if i run two appium servers with different port and address at a time only one ios simulator will be up ,as it shutdowns the other one.

I am using 1.6.4 appium server and Xcode 8+.

Any help is very much appreciated.

Monis Majeed
  • 1,358
  • 14
  • 21
  • This will help you for parallel run. You have to Configure Different port number in WDA . https://www.youtube.com/watch?v=ThcDudhMnqw . – arul christopher Aug 07 '17 at 11:29

3 Answers3

1

Here is what I did and it worked for me:

Run the first server with standard address and port by running appium

And the second one with custom port and custom WebDriver Agent port:

appium -p 4722 --webdriveragent-port 8100

This way the phones will have different WebDriver Agents to control them.

Make sure to pass it within capabilities!

======EDIT======

If you have issues with running two emulated devices here is a tutorial which worked for me as well: https://www.youtube.com/watch?v=0aS_zEYvQY4

  • This will definitely help in opening simulators using command line , but in my case simulators will be opened by appium ,which checks and kills before appium makes the simulator up – Monis Majeed Aug 18 '17 at 09:37
0

I anyone else lands here I managed to solve running multiple emulators on one MaC. You need to also specify different webdriver ports when you start your appirum server:

appium --address [your-appirum-server-ip-address] --port [random-free-port] -bp [different-random-free-port]-cp [another-random-free-port] --full-reset --webdriveragent-port [finally-yet-another-random-free-port]

e.g. appium --address 10.8.0.3 --port 4874 -bp 6004 -cp 9004 --full-reset --webdriveragent-port 10004

then set the capabilities on your test script to connect to different ports and the majic will happen.

Ali Rad
  • 159
  • 1
  • 6
  • Could you provide more information? Do we need to run appium command from different terminals on the same Mac? appium server ip is the ip of the system where we are running the command or there is some hub running? How to set the capabilities? What we need to change? – Sun Shine Mar 14 '18 at 00:03
  • Yes you need to start one appium server for each simulator you want to run. So if you want 3 simulators then you need to get three appium servers running on your machine. You can start these via different terminals as one way of achieving this. ip address can be local host. but you need a different port and a different webdriveragent-port for each appium server you start. Can you run one simulator on your machine? if yes then just start three an follow instructions above. hope this helps. – Ali Rad Mar 15 '18 at 21:30
-1

There is no way. Only one simulator can be up. If you have two Macs, you can copy the .xcodeproj file and run them side by side on the two computers.

Derek Kaplan
  • 138
  • 9