添加新的测试套件
添加用户定义的测试用例:
- 如果尚未这样做,请为您的测试创建一个新目录。
- 测试目录可以位于任何地方,只要它在项目树中可见即可。默认情况下,C++test 建议测试存储在项目的 tests 目录的子目录中。但是,您可以使用其他位置,只要您相应地修改【测试配置】的 测试套件文件搜索 模式 设置 (在执行> 常规 选项卡中)即可。
- 如果您不想将测试存储在项目目录中,则可以添加一个文件夹,该文件夹链接到文件系统中其他位置存储的文件。执行以下操作:
- 选择文件>新建> 文件夹 (如果这不可用,选择文件> 新建> 其他, 选择 通用>文件夹,然后单击下一步)。
单击 高级 按钮。
启用 链接至文件系统中的文件夹 选项。
输入或浏览到源文件的位置。
点击 完成。
- 如果您不想将测试存储在项目目录中,则可以添加一个文件夹,该文件夹链接到文件系统中其他位置存储的文件。执行以下操作:
- 在项目树中选择您的测试目录。
右键单击选择,然后在快捷菜单中选择新建> 其他 。将打开一个向导。
с.选择Parasoft> C++test> 测试套件, 然后单击下一步。
3。在【测试套件向导】对话框中输入测试套件参数。可用参数有:
- 测试套件名称: 确定测试套件名称。
- 测试套件位置: 确定测试套件位置
- 测试套件文件: 报告测试套件文件的路径。
- 测试套件语言: 确定测试套件是用 C 还是 C++ 实现的。
- 已测试文件: 将测试套件上下文设置为指定的测试源文件。指定的文件将被设置为
CPPTEST_CONTEXT
宏,它将给定的测试套件文件与指定的源文件相关联。- 如果在您启动向导时选择了一个文件,则将在此处指定该文件。
- 如果在启动向导时选择了一个项目,则不会指定任何上下文,并且测试套件将在项目范围内(这意味着只有在运行该项目的所有测试时才会执行它,或者如果它被选为测试文件)。当它被选为测试文件(并且没有上下文)时,C++test 假定它具有项目上下文,并准备项目中的所有文件进行链接。
- 测试套件模式: 确定测试套件是作为包含的测试套件还是作为独立的测试套件实现。C++test 插桩两种类型的测试套件;它可以访问私有/受保护的类成员。
- 包含的测试套件物理包含在生成的测试工具源文件中的一个。“包含的”测试套件与插桩代码组合并编译以形成单个对象文件。所有自动生成的测试套件都包含在测试套件中。可以包含其他头文件,并且可以在原始头文件中定义宏定义。但是,包含的测试套件不需要包含任何头文件,除非使用的类型在原始测试的源文件中不可见。通常,这仅在您修改生成的测试(例如,包含测试工厂等)时才需要。
- 独立的测试套件单独编译并与可测试上下文的测试可执行文件链接。任何其他头文件都必须直接包含在这些测试套件中。可以跟踪包含头文件的覆盖率信息。
4。(可选)如果此时要指定测试用例(即 C++test 在测试套件中注册它们并为测试添加骨架框架),请单击下一步,然后使用控件添加测试用例名称和指定添加它们的顺序。
5。点击 完成。
将测试用例添加到现有测试套件
将新测试用例添加到现有测试套件:
在项目树中选择测试套件文件,或者在编辑器中打开它,然后右键单击所选内容,然后从快捷菜单中选择Parasoft> C++test> 添加测试用例模板。或者,右键单击测试用例资源管理器中的测试套件,然后选择 添加新建> 测试用例模板。
- 输入测试用例的名称。 将添加新的测试用例,并相应地修改测试套件。
- 在编辑器中打开测试套件源文件,输入测试用例定义,并根据需要进行其他修改。您可以
- 使用标准 C 或 C++ 代码、C/C++test API 文档中描述的宏、可用测试功能中描述的例程以及测试用例后置条件宏 中描述的后置条件。
- 内容辅助功能可帮助您添加宏和后置条件。例如,要添加后置条件模板,键入 CPPTEST_POST_CONDITION,将光标放在 N 之后,按 Ctrl + Space,然后选择所需的后置条件。要添加断言模板,键入 CPPTEST_ASSERT,将光标放在 T 之后,按 Ctrl + Space ,然后选择所需的断言。请务必自定义添加的模板。
- 内容辅助功能可帮助您添加宏和后置条件。例如,要添加后置条件模板,键入 CPPTEST_POST_CONDITION,将光标放在 N 之后,按 Ctrl + Space,然后选择所需的后置条件。要添加断言模板,键入 CPPTEST_ASSERT,将光标放在 T 之后,按 Ctrl + Space ,然后选择所需的断言。请务必自定义添加的模板。
- 使用头文件中定义的包含指令和宏定义。
- 使用 #include 指令构建测试可执行文件时,提示 C++test 包含其他文件。
- 通过更改
CPPTEST_CONTEXT
宏来更改测试套件上下文,该宏将给定的测试套件文件与指定的源文件相关联。只能指定一个源文件。如果未指定上下文,则每当执行项目时都会执行测试套件。- 如果在开始执行测试之前在项目树中选择了源文件或目录(例如源文件),C++test 将扫描在测试配置的测试搜索路径中指定的所有测试目录。将执行与所选上下文匹配的所有测试套件。
- 如果选择了整个项目,则将执行测试路径上的所有测试套件。
- 如果选择了测试套件或单个测试,则使用 CONTEXT 宏回溯到与该测试套件相关的源文件。只会执行选定的测试套件。
- 如果使用相对路径,它们必须以 "./” 或 "../” 开头。
4。保存修改后的文件。