Thanks @Christopher_Graham I believe it I was able to do it. However the only difference was that in line 5 I had to run it with sudo…prior to that I was not getting it.
I haven’t run the tests yet to notice the difference but will try. A couple of questions:
Do I need to run these commands every time I restart my computer? Or just the one time that I already did?
So I’ve uninstalled the appium-instruments from global and reinstalled it under my user , and rerun the IWD path but the EnvVariables path remains the same …
The iwd script can only CREATE but not UPDATE the values if they are existing. Sorry, forgot about that part of my adventure. I should’ve logged an issue on GIT so that script can handle CREATE as well as UPDATE. Off to do that now.
You should be seeing a clear failure when it cannot update the currently existing paths:
i think it does not work with older. Cause when we did not have problem with delay before i met same issue! It was fine with 8.X (at that time) but slow with 7.X.
@Christopher_Graham and @Aleksei thanks for helping out.
So this takes care of iOS Simulator. Anything similar we could do on the Android side of things to speed up tests?
Thanks.
I primarily do iOS testing and 99.9% of the time in the simulator as it’s fast and easy. For Android testing I’ve always used real devices as the Android emulator is smash-my-head-against-my-desk slow. Downside is many Android devices drain the battery faster than USB can charge them when executing the tests, even with the display brightness at min. I haven’t really spent enough time with Android to have tackled all of those problems.
@Christopher_Graham on my MAC…the iOS simulator is launched automatically (based on my capabilities) when the tests are running. Is it very similar in Android simulator as well? Is it just a matter of declaring the capabilities and the android simulator (I downloaded the free version of Genymotion) will launch automatically?
Someone mentioned to me that you have to manually launch the android simulator (which would work locally but not on CI)…but they were not so sure about it.
I think that would work just fine locally if I launched Genymotion and then got the UDID. But on a CI machine how would you get the UDID of a simulator? specially if it were a cloud-based CI tool
Btw, would the same also apply to the AVD android Simulator…or was this just for Genymotion?
I could be dead wrong about this (iOS tester here), but does the UDID change on an Android Simulator? On a CI machine I would do my best to set it up so that nothing would change. I really don’t know much about AVD.
I don’t recall if I even ever tried Appium with an Android emulator due to the fact that if I manually launch an Android emulator it takes something like 5+ minutes before the damn thing is up and running VS pretty much instantly on a hardware phone / tablet. I haven’t tried Genymotion and know nothing about it or how it’s different than the supplied Android emulator. Either way, all of the Android stuff should be it’s own thread in the forums as it has nothing to do with IWD which is Apple Instruments specific and not Android related.
I tried run on ios 9.3 iPhone 6s simulator with appium 1.5.2/1.5.3 and plist already set but no luck. Insterestingly the first day when I tried the test ran fast like a charm and our test execution time reduced from 55mins to 12mins. Unfortunately the next after I reported the amazing experiment result to my boss, I failed to make it work on our Jenkins tests. When I went back to run tests on my local machine, the magic also gone. I retried several hours like recheck plist config, reinstall appium, reboot xcode or machine. it still doesn’t get back. I still haven’t figured out what’s wrong.