我正在从事一个汽车项目,其中有不同的功能不同的模块。每个模块都有一组预定义的API,用于实现其预期的功能。(如果你知道AUTOSAR和它的模块,我说的是相同的)。
我正在开发一个看门狗模块。它的功能和API是预定义的。模块开发包括静态代码和生成的代码(配置)。静态代码是用嵌入式C编写的,它实现了模块的功能。生成的代码由两个文件组成- "Cfg.C“和"Cfg.h”。"Cfg.h“具有宏和预编译选项。"Cfg.c“具有全局变量和常量的值。这些文件是基于XML配置文件生成的。
目前,模块测试是通过用C语言编写手动测试用例,并使用静态代码和生成的代码进行编译来完成的。为每个功能编写一个测试用例。这些测试用例仅由预定义的API调用组成,不使用任何内部API。在执行测试用例时,它将给出结果是通过还是失败。
我的任务是自动化这个模块的测试用例生成和测试。测试用例生成就是生成大量的测试用例来测试功能和所有可能的场景。测试用例生成包括生成测试用例和配置文件,以及使用它们的组合进行测试。
自动化测试用例和执行测试自动化的不同方法有哪些?
测试用例自动化和测试行业中遵循的最佳实践是什么?
行业如何进行模块级测试来验证模块的功能?
在开始时,是否有任何工具可用于上述场景的测试用例自动化和测试自动化。
发布于 2015-10-09 14:35:21
当我编写嵌入式C时,我会使用C++ Boost单元测试框架来测试代码。当然不是在目标上,只是在我的开发PC上。这意味着我必须坚持C语言中既能在目标平台上工作的部分(ARM,用称为KEIL的IDE构建的东西),也能在我的开发PC上工作(Ubuntu,GCC和Make)。
我将每个C模块链接到一个特定于测试的存根模块,该模块实现了所有缺少的符号。单元测试、被测单元和存根将被编译并链接到可执行文件,在代码到达目标硬件之前,该可执行文件可用于TDD、CI和回归测试。这几乎就是简单的单元测试,或者更好的TDD测试。
这是针对在比我所知的适用于汽车的标准更宽松的标准下开发的消费电子产品,所以我猜你必须采用这种方法来匹配你的编码标准。
https://stackoverflow.com/questions/32962533
复制相似问题