+ @linaro-android
+ @linaro-validation

On 27 July 2012 09:32, YongQin Liu <yongqin.liu@linaro.org> wrote:


On 13 July 2012 11:19, Michael Hudson-Doyle <michael.hudson@linaro.org> wrote:
YongQin Liu <yongqin.liu@linaro.org> writes:

> Hi, All
>
> Here just some thought about the implementation of  black-box test.
> If you have any ideas, or something I missed, please give a comment.
> Anything will be appreciated.

Thanks for sending this.

> ------------------------------------------------------------
> *Glue between lava and android*
> In android there is  a directory /data/blackbox_tesxt/, under it are TODO,
> TESTING, DONE 3 direcories.
>
>    - TODO:  the flags for test that need to run will be put here
>    - TESTING:  the flags for test that are running will be put here.
>    normally, there should be only one entry.In the future will be more
>    entries when we support test execution via thread

Do we actually want to support running more than one test at once?  It
doesn't seem like a super good idea to me.

Yeah, seems support only one test once  is more realistic now.
If so, seems we just need one  action that will do install/run/wait/get_result


>    - DONE:  the flags for test that have been completed  will be put here
>
> About the entry format,  will use JSON or just key/value pair. but need to
> have the following two features
> 1. one item to indicate the command to run
> 2. other items used for pass information between android test tool and lava
> job
>
> *Black-box test framework on Android*
> On android, a test framework will check the entries in TODO, and run the
> command indicated in the entry.
> Before the test is start to run, the framework will put the entry to
> TESTING, and after test finished will put the entry to DONE.
> when run the test command, this framework will run the command and pass the
> entry file as parameter.
>
> The black-box test framework in android mainly do:
> 1. invoked after boot up and home screen is displayed.
>     also charge for prepare the test environment like unlock screen,
> disable suspend
> 2. charging for invoking test command and changing the status of the each
> test
>
> *Framework on LAVA*
>
> Will have 2 actions
> 1. install_black-box_test

Will this action have a list of tests to install?
I'd like to install one test with one action.
as I described in another mail. 

> 2. wait_black_test_finish
>     will loop to check until there is no entry in TODO and TESTING
>     also will check if the test framework is running, if it is not in ps
> and there are still test to be run, will invoke it to run.
>     show the output of the running test

Do we want to reboot between tests?
I think this can be done out the lava-dispatcher like the system-reboot on android-build now. 


Thanks,
Yongqin Liu