Appium GRID. Identify device that does not run e2e tests - grid

I have 3 available devices in Grid. Is it possible to get ONE of 3 devices that is not busy with e2e test?

Related

Automating Mobile App Accelerometer Data Testing

I am trying to create a test automation for my mobile app and I need to be able to simulate various accelerometer readings which would happen while the user is using the app.
I originally thought using ADB with and android emulator would work. However the command that is documented to work does not.
$ ./adb shell sensor set acceleration 1:1:1
/system/bin/sh: sensor: inaccessible or not found
Is there a specific software version or emulator or hardware which i need to use to enable the above command?
Can I do similar type tests with an iphone?
you are using the wrong command, sensor set accelerometer is an emulator console command for which you have to use ./adb emu sensor set acceleration 1:1:1 command.
This will help you understand, https://helpmanual.io/help/adb/

Executing KW in parallel in robotframework

Use case
I have many mobile devices connected , i need to make connection to each devices and open dialer on them and then perform some actions using Appium.
I have keyword which can do this task for me.
for example , i have keyword
Start dialer on devices
The limitation is that, this KW will run on each device one by one,
a single device takes approximately 3 minutes.
So if 5 devices are connected , this will be 15 minute task.
is there any way by which i can execute the KW in parallel and save some time.
We use pabot for running test suites in parallel which is really helpful:
https://github.com/mkorpela/pabot
You will need to change your command when running Robot Tests to use pabot instead of robot
There are several async libraries implement for robot framework. Perhaps you can take a look at Here or Here

Parallel execution of ios test cases using IOS simulator on appium

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.
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
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.
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.

When I try to Port Sample Android app into Blackberry 10 Dev Alpha simulator I Get Error

Connecting 192.168.176.128 to ADB failed!
Please check if the Android player was fully started when you got this error. If not, you can either increase the Android player launch timeout on the BlackBerry->BlackBerry Android Development Tools preference page or wait until the Android player is fully started and try again.
This means that Eclipse, or more specifically the BlackBerry Android tools plugin for Eclipse, could not connect to the ADB (Android Debug Bridge) service on the BlackBerry device.
There are a number of reasons for this:
The Android Runtime and associated services including ADB did not load in time. The default timeout is 5 seconds and if you have not run any Android apps on your BlackBerry it will take more like 20 seconds to load the first time.
The Android Runtime has crashed. In which case you will need to reboot your device. My preferred method for this is a '3 finger reset' which means hold down the power button, volume up and volume down buttons for 10 seconds in order to do a full reset.

how to run ipad phone gap app on device and send it to others

I have a ipad phone gap app i want that app should also run on my clients device how may do this as we do normal by adhoc distribution and send ipa file but this is an phonegap app so how may send this and run on any device.
You may use Test flight (http://testflightapp.com) to distribute enterprise ad-hocs, or you can use phonegap build (http://build.phonegap.com) and then send the generated qr codes to your clients, so they can install the builds.

Resources