To run end-to-end testing locally, you will need cipd access on your machine and drone service account (or direct access to android-provisioning/android-provisioning-apks
gs bucket). You will also need a valid ssh config to connect to the labstation (see ssh config section).
End to end testing is done over ssh tunneling to labstation (dutServer).
ssh -f -N -L 2500:<dut_ip>:22 root@<host>
In ‘common/constants.go’ change the DroneServiceAccountCreds
to the local path to drone service account.
Fill out the input_example.json
to meet your requirements.
./android-provision cli -input input_example.json -output output.json
127.0.0.1
and the port used in the ssh tunnel corresponds to the port in your input file. Passing 127.0.0.1
as the address will automatically start the application in testing mode and use the ssh connection to reach the host.android-provision
service, we are not doing any caching. Instead, apk files are downloaded locally and copied remotely to labstation everytime the service is run. Depending on the size of the apk, this step alone could take 7-10 minutes.Host 127.0.0.1 localhost CanonicalizeHostname yes PreferredAuthentications publickey StrictHostKeyChecking no User root IdentityFile %d/.ssh/testing_rsa