To prepare your device for ubuntu-touch testing and to be able to write and run automated tests on touch images, this is all you need (or have a look at the Touch/Install wiki):
Flash the image for testing and set up the network
Connect device you want to flash with ubuntu touch via USB to your computer and run:
This will just flash your phone with the latest image, after you read and accept the disclaimer.
If you try to stop the download and then start it again, you'll need to remove the previous attempt to download from /home/<username>/Downloads/phablet-flash/<build_no>.
Then you want to set up the wireless on your touch device by copying your wireless configuration to it:
1 phablet-network-setup -i
This will set up the network based on your current wireless networking profile from /etc/NetworkManager/system-connections.
If you are on a desktop computer or you want to use a different configuration for your testing, call phablet-network-setup with -n and provide the configuration file you wish to use.
Verify which image you've got!
If you want to verify which image you have on the device:
Preparing your test environment
Make sure you have the latest image and the latest android-tools-adb from the phablet-team ppa. Install the relevant ppas:
Start running stuff
This command will set up autopilot for you.
phablet-test-run -n -i -p 'qml-phone-shell-autopilot' qml_phone_shell
One thing you can do once you do this, is drop a test, say "test_foo" in phablet's home directory on the phone.
Then you want to connect to the device:
adb shell (to get to the android shell)
After this you are already running commands on the device, then we recommend you install openssh-server to be able to interact with the device through ssh:
1 apt-get install openssh-server
You can now install packages, etc. If you prefer to use ssh instead from this point onwards, you can exit this shell and go back to your main machine. Map the phone port to some random port and off you go:
Then you can just run anything you want.
'phablet-test-run -n test_foo'
The -n is very important. It kills the phone shell before running the test. If you don't do this, your application will be executed in the background and autopilot won't be able to interact with it.
Now get started with Autopilot
This wiki contains all the information you need to install autopilot on your phone and start testing on it, or even better, developing tests for autopilot-touch!
Some other useful commands
- Put a script or a file in your device:
adb push /path/to/file /home/phablet
- No ifconfig available, so you get the ip of the device by using ip
ip addr (no ifconfig available)
- Show all the installed apps:
perl -p -i -e 's/expandable\:\ false/expandable\:\ true/' /usr/share/unity8/Dash/Apps/ApplicationsFilterGrid.qml
- Network configuration on the device
adb shell netcfg
Update apps and show them all on the screen
Run from the host, the following bash script uses adb to enable all the apps on the main screen (it will install them from the repositories, requires network to be setup):