Translation of Embedded Software API's for Carrying Out Software Testing
When starting the validation process of a product containing embedded software, a scripting language is usually used to write the ramp-up and validation tests. These tests must make use of the embedded APIs within the embedded software which the product runs. Using such a procedure usually requires a much-needed layer of translation between the APIs and the scripting language functions, both in the documentation aspect, and the code aspect. The present solution discloses a method for carrying out a validation process of a product that comprises embedded software, characterized in that a translation layer is automatically implemented to enable linkage between the APIs and the scripting language function, which can save time and minimize human errors while carrying out the process.
1 . A method for carrying out a validation process of a product that comprises embedded software, characterized in that a translation layer is automatically implemented to link between the APIs and the scripting language function.
2 . The method of claim 1 , wherein a process is carried out at said translation layer, wherein said process comprises the steps of:
a) booting/loading the embedded software;
b) requesting instructions for the translation layer;
c) receiving the requested instructions and generating one or more software codes for the translation layer's functions according to the instructions provided; and
d) loading the new software code on top of an existing scripting layer.
3 . The method of claim 2 , wherein upon executing said process, one or more new sets of functions are added to become a part of said scripting layer.
4 . The method of claim 2 , further comprising a step of translating the translation layer's functions into scripting language's constructs.
5 . The method of claim 2 , wherein if a datatype which exists in the embedded software's language does not exist in the scripting layer's language, said datatype will be converted into an appropriate different datatype.
6 . The method of claim 5 , wherein if one or more input/output parameters of the API function are not used and are not required by the scripting layer, said one or more input/output parameters will be hidden for the translation process.
7 . The method of claim 2 , wherein at least one of the translated functions contains a debugging feature.
8 . The method of claim 2 , further comprising a step of adding a wrapper code over the API functions and performing a more complex operation therewith.
9 . The method of claim 1 , wherein said process is automatically executed when a validation environment is uploaded.
10 . The method of claim 1 , further comprising automatically updating said scripting layer by implementing thereat changes associated with API functions.
11 . The method of claim 1 , wherein said process is initiated when the scripting layer accesses the API layer in order to retrieve required information therefrom.