1. A method for testing embedded software comprising: Receiving the embedded software; analyzing the embedded software to identify an interlayer interface in the embedded software; associating the identified interlayer interface with one of a plurality of predetermined interface types; and generating test cases for the identified interlayer interface based at least in part on the one of the plurality of predetermined interface types.