Add test infrastructure for components

@crdlc R?