On Tue, 2013-08-27 at 12:11 +0100, Paul Eggleton wrote:
> Hi Darren,
> 
> On Friday 23 August 2013 20:52:41 Darren Hart wrote:
> > On Tue, 2013-08-13 at 12:00 +0100, Paul Eggleton wrote:
> > > Automated testing on real hardware is something that a lot of us do
> > > already, but the likelihood is that we've all been coming up with our own
> > > solutions for this, so it would be really great if we could have a single
> > > working solution to cover the generally applicable use cases. As a start
> > > though it would be interesting to hear from people who have existing test
> > > setups or who are generally interested in this area. I'd like to hear
> > > feedback on the following:
> > >  * What hardware setup do you use for automated testing?
> > 
> > I am starting to put something together using a customized 19" rack
> > along the lines of those used by OSADL for their real-time farm:
> > 
> > https://www.osadl.org/Test-Rack.test-rack.0.html
> > 
> > This is a poor man's BladeCenter for embedded boards in that it provides
> > a common interface to each board for the rack infrastructure. The board
> > specific stuff sits on the trays themselves. The trays are easily
> > removable to take a board to a desk for hands-on work.
> > 
> > A smart-switch, web-power strip, and serial concentrator feed into a
> > "gateway server" where services like conmux glue it all together.
> 
> All makes sense.
> 
> > >  * Do you use any software to manage the hardware? Does this include any
> > > existing open source tools?
> > 
> > conmux
> > dnsmasq
> > udev (for static usb uart naming)
> > 
> > The testrack has some early-stage tools to support it, but I'm still
> > sorting those out and they aren't particularly robust for initial setup
> > quite yet.
> 
> Having a standard way to set up the software side for this kind of 
> infrastructure would certainly be worthwhile I think. One tricky part would 
> perhaps be supporting variations of infrastructure hardware; doing some 
> searches I haven't found a completely definitive open source project for 
> controlling remotely accessible power strips for example, although there are 
> a 
> few scattered projects for doing that with varying levels of recent 
> maintenance.
> 
> > >  * What would you like to see in a common framework to enable this kind of
> > > testing?
> > 
> > To simplify the board management you allude to above, I believe a pull
> > model, rather than a push, is a better architecture.
> > 
> > Your builders can complete builds and inject test records into a
> > database with a priority. The boards sit in a
> > boot/check-db/deploy-test-img/reboot-to-test-image/run-tests loop and
> > push the results back to the database. They select tests based on
> > priority, and the builder doesn't have to do anything at all to manage
> > the boards. This also decouples the builder from the test
> > infrastructure.
> 
> Interesting. This would present some challenges with the way the automated 
> tests are currently defined; there's nothing unsolvable that precludes them 
> being run outside of the build environment but they will have to be run 
> somewhere that has python and any required modules installed, presumably an 
> intermediate machine rather than the target machine itself (the latter would 
> not be impossible; but if we did do it that way you couldn't test an image 
> that didn't have python in it.)

A new test-image will need to be created regardless, I think including
python is reasonable for the general case. For things like tiny, I
suspect we would have a customized test-suite anyway, possibly written
in C.

> 
> We'd also need to come up with a standard definition for the results database 
> and tools to generate reports out of it, but that's something that will 
> likely 
> be needed regardless of the model used for running tests, especially when it 
> comes to recording the results from ptest.

Agreed.

-- 
Darren Hart
Intel Open Source Technology Center
Yocto Project - Linux Kernel


_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto

Reply via email to