添加新的测试套件
要添加用户定义的测试用例:
- 如果尚未这样做,请为测试创建一个新目录。
- 测试目录可以位于任何地方,只要它在项目树中可见即可。默认情况下,C++test 希望将测试存储在项目的 tests 目录的子目录中。然而,您可以使用不同的位置,只要相应地更改测试配置的 测试套件文件搜索 模式 设置(在 执行> 常规 选项卡中)。
2.打开测试套件向导,如下所示:
- 选择项目树中 tests 目录。
选择 Parasoft> 向导> 创建新的测试套件。将打开一个向导。
3.在【测试套件向导】对话框中输入测试套件参数。可用参数y有:
- 测试套件名称:确定测试套件的名称。
- 测试套件位置:确定测试套件的位置。
- 测试套件文件:报告测试套件文件的路径。
- 测试套件语言:确定测试套件是用 C 还是 C++ 实现的。
- 测试文件:将测试套件上下文设置为指定的经过测试的源文件。指定的文件将被设置为
CPPTEST_CONTEXT
宏,该宏将给定的测试套件文件与指定的源文件相关联。- 如果在启动向导时选择了文件,则将在此处指定该文件。
- 如果在启动向导时选择了项目,那么没有上下文将被指定,并且测试套件将在项目范围内(这意味着只有当项目的所有测试都运行时,或者它被选择为测试文件时,它才会被执行)。当它选择为测试文件时(不包含 CONTEXT),C++test 假设它有项目上下文,并准备项目中要链接的所有文件。
- 测试套件模式:确定测试套件是作为包含的测试套件实现的,还是作为独立的测试套件实现的。C++test 测试两种类型的测试套件;它可以访问 private/protected 类成员。
- 包含的测试套件实际上包含在生成的测试工具源文件之一中。包含的测试套件与插装的代码结合在一起,并被编译成一个单一的目标文件。所有自动生成的测试套件都包括在测试套件中。可以包括其他头文件,并且可以在原始头中定义宏定义。然而,包括的测试套件不需要包含任何标头,除非使用的类型在原始测试的源文件中不可见。通常,这只有在您修改生成的测试时才需要(例如,包括一个测试工厂等等)。
- 独立的测试套件是单独编译的,并与可测试上下文的测试可执行文件链接在一起。所有其他标头必须直接包含在这些测试套件中。可以跟踪包含标题的覆盖信息。
4.(可选) 如果您想在此处指定测试用例(例如,如果 C++test 将它们注册到测试套件中,并为测试添加骨架框架,单击 下一步,然后使用控件来添加测试用例名称,并指定添加它们的顺序。
5.单击 完成。
添加测试用例到现有测试套件
要添加测试用例到现有测试套件:
在项目树中选择测试套件文件,或在编辑器中将其打开,选择 Parasoft> C++test> 测试套件> 添加测试用例模板。 或者,右键单击测试用例资源管理器中的测试套件,并选择 新建> 测试用例模板。
- 输入测试用例名称。 将添加新的测试用例,并相应地修改测试套件。
- 在编辑器中打开测试套件源文件,输入测试用例定义,并根据需要进行其他修改。您可以...
- 使用标准的 C 或 C++ 代码、 C++test API 文档中描述的宏、 可用测试函数中描述的常规和 测试用例后置条件宏中描述的后置条件。
- 使用头文件中定义的 include 伪指令和宏定义。
- 使用 #include 指令构建测试可执行文件时,提示 C++test 包括其他文件。
- 通过更改
CPPTEST_CONTEXT
宏来更改测试套件的上下文,该宏将给定的测试套件文件与指定的源文件相关联。只能指定一个源文件。如果未指定上下文,则在执行项目时将执行测试套件。- 在开始执行测试之前,在项目树(例如,资源文件)中选择了源文件或目录时,C++test 会扫描【测试配置】的测试搜索路径中指定的所有测试目录。所有匹配所选上下文的测试套件都将被执行。
- 如果选择了整个项目,则将执行测试路径上的所有测试套件。
- 如果选择了一个测试套件或单个测试,则使用 CONTEXT 宏回溯到与此测试套件相关的源文件。仅执行所选的测试套件。
- 如果使用相对路径,则它们必须以“./”或“ ../”开头。
4.保存修改后的文件。