Enabling Automation Test in Poky: Difference between revisions
From Yocto Project
Jump to navigationJump to search
(Added some important details to sanity test automation regarding VNC setup) |
No edit summary |
||
Line 1: | Line 1: | ||
=== Enable Automation Test in Poky === | === Enable Automation Test in Poky === | ||
Currently we have implemented | Currently we have implemented a handful automated sanity test cases in Poky (boot/ssh/dmesg/shutdown). A user can follow the below steps to enable the runtime automation test: | ||
* Make sure your working tree has latest test code. | * Make sure your working tree has latest test code from master. This feature was not part of the 0.9 release (but will be included in 1.0) | ||
* Make sure your machine has | * Make sure your machine has the "expect" package installed. The package is necessary for testing. We will add a recipe for it later. Currently, you need install it by yourself. On Ubuntu host, you can use apt-get to install expect: | ||
<pre> | <pre> | ||
$ apt-get install expect | $ apt-get install expect | ||
Line 22: | Line 22: | ||
%tester ALL=(ALL) NOPASSWD: NOPASSWD: ALL | %tester ALL=(ALL) NOPASSWD: NOPASSWD: ALL | ||
</pre> | </pre> | ||
* Instead of requiring sudo access, you can run the poky-gen-tapdevs script from a build of meta-ide-support or a Poky toolchain install | * Instead of requiring sudo access, you can run the poky-gen-tapdevs script from a build of meta-ide-support or a Poky toolchain install. This is recommended for more security-conscious environments. The script will create and set up networking for one or more tap devices that will be used automatically by the poky-qemu script if detected, and it will no longer require root access. | ||
* Typically, you need a X environment to start QEMU. You can use your desktop's DISPLAY. Or, alternatively, you can install vncserver, and startup a X environment in localhost:x.0. (x can be 1, 2, 3.....n) | * Typically, you need a X environment to start QEMU. You can use your desktop's DISPLAY. Or, alternatively, you can install vncserver, and startup a X environment in localhost:x.0. (x can be 1, 2, 3.....n) | ||
* For the VNC setup, the following xstartup script is known to work for an openSUSE 11.2 host: | * For the VNC setup, the following xstartup script is known to work for an openSUSE 11.2 host: |
Revision as of 18:53, 14 December 2010
Enable Automation Test in Poky
Currently we have implemented a handful automated sanity test cases in Poky (boot/ssh/dmesg/shutdown). A user can follow the below steps to enable the runtime automation test:
- Make sure your working tree has latest test code from master. This feature was not part of the 0.9 release (but will be included in 1.0)
- Make sure your machine has the "expect" package installed. The package is necessary for testing. We will add a recipe for it later. Currently, you need install it by yourself. On Ubuntu host, you can use apt-get to install expect:
$ apt-get install expect
- Edit /etc/sudoers to allow the user run sudo without prompted for a password. For example, you can do like following for user "tester":
$ cat /etc/sudoers # /etc/sudoers # # This file MUST be edited with the 'visudo' command as root. # # See the man page for details on how to write a sudoers file. # .... .... .... %tester ALL=(ALL) NOPASSWD: NOPASSWD: ALL
- Instead of requiring sudo access, you can run the poky-gen-tapdevs script from a build of meta-ide-support or a Poky toolchain install. This is recommended for more security-conscious environments. The script will create and set up networking for one or more tap devices that will be used automatically by the poky-qemu script if detected, and it will no longer require root access.
- Typically, you need a X environment to start QEMU. You can use your desktop's DISPLAY. Or, alternatively, you can install vncserver, and startup a X environment in localhost:x.0. (x can be 1, 2, 3.....n)
- For the VNC setup, the following xstartup script is known to work for an openSUSE 11.2 host:
#!/bin/sh xrdb $HOME/.Xresources xsetroot -solid grey xhost + xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & twm &
- For the VNC setup, you will also want to put the following in ~/.twmrc, which allows windows to be placed automatically.
RandomPlacement
- You need set "IMAGETEST" to "qemu" in build/conf/local.conf
$ cat local.conf ..... # Set IMAGETEST to qemu if you want to build testcases and start # testing in qemu after do_rootfs. IMAGETEST = "qemu" .....
- Then you can run "bitbake poky-image-xxx" (xxx can be minimal, sato, sdk). After the kernel/image are generated, you need run "bitbake poky-image-xxx -c qemuimagetest". It will trigger automation test and you will get the result after a while. :)