[Interest] Need advice to add tests to an existing, project

Christian Gagneraud chgans at gmail.com
Wed Nov 8 11:02:57 CET 2017


On 8 November 2017 at 13:35, Roland Hughes <roland at logikalsolutions.com> wrote:
> Not that weird really. If this is an embedded system and a well designed
> one, the first layer of "tests" would be the built in diagnostics mode which
> exercises all of the components and blurts out various settings/values.
> Depending on the size of or life dependency on, it could also have a
> complete menu of diagnostic tests a technician can run. Think life support
> machine or surgical robot.

You're right, there's the BIOS POST for example.
PowerPC machines did way better with their "OpenFirmware (tm)", or was is SPARC?
I loved these things, powerful bare-metal shells.

> Back in the days of the VAX 11/750 all of that microcode (what it was called

I know VACOS (VAcuum Cleaner Operated System) but I do not know VAX, sorry! ;)

> then) was on a cassette tape you turned the key to boot from. Whole menu of
> diagnostics. Today we see a good number of systems returning to built in
> test and calibration code.

Yeah, that completely true. But I see these as "system test", not unit test.
I don't think i want to run my system tests from QtC. Sounds like a click bait.
You could argue, that using Boot2Qt with their qemu stuff, you could
achieve that.
But I still think it's the wrong abstraction level.
A simulated Boot2Qt always runs in a x86 vm. It does boot the same
embedded linux distro but it doesn't boot on the same virtualised
hardware. I guess you could tweak the arch in Yocto, maybe... is it
worth?

Anyway, it's an interesting topic, for example are we talking factory
site auto-tests (eg. flash) or customer site auto-test (eg. remote
update)?
How much HW can you emulate/simulate that will make your tests meaningful?

> Oh! Even better example. If you are unfortunate enough to own an inkjet
> printer, when you first power it on it does all of that nozzle flushing,
> head sliding, etc. That same "test" code gets executed when you choose menu
> options to clean/align print heads, etc.

Nice one!

Chris



More information about the Interest mailing list