Main Content

本页采用了机器翻译。点击此处可查看英文原文。

sltest.CodeImporter.SandboxSettings 类

命名空间: sltest.CodeImporter

C 代码测试的沙盒设置

自 R2021a 起

描述

使用 sltest.CodeImporter.SandboxSettings 类的对象为 C 代码单元测试配置沙箱。创建 sltest.CodeImporter 对象也会创建具有默认值的 SandboxSettings 对象。当 sltest.CodeImporter 对象的 TestType 设置为 IntegrationTest 时,SandboxSettings 对象不适用。

属性

全部展开

沙盒生成模式,指定为以下值之一:

  • "GenerateAggregatedHeader" — 对于单个 C 代码源文件,生成一个包含最小、聚合的头文件和未定义符号的桩件的沙箱。头文件包含编译所需的符号。

  • "GeneratePreprocessedSource" — 生成一个包含 C 代码源文件预处理版本的沙箱,并为未定义的符号创建桩件。

  • "UseOriginalCode" — 使用原始 C 代码生成沙箱,无需任何修改。但是,如果代码有未定义的符号,CodeImporter 就会创建桩件文件。

属性:

GetAccess
public
SetAccess
public

是否将指定的源文件复制到沙盒中,指定为数字或逻辑 1 (true) 或 0 (false)。当 CopySourceFiles1true 时,

  • 如果 ModeGenerateAggregatedHeader,则 CodeImporter 将指定的源文件复制到沙盒 src 文件夹。

  • 如果 ModeUseOriginalCode,则 CodeImporter 分别将所需的头文件和源文件复制到沙盒 includesrc 文件夹。

  • 如果 ModeGeneratePreprocessedSource,则忽略 CopySourceFiles 设置。

属性:

GetAccess
public
SetAccess
public

是否从代码文件中删除编译指示,指定为数字或逻辑 1 (true) 或 0 (false)。当 RemoveAllPragmatrue1 时,

  • 如果 ModeGenerateAggregatedHeader,则 CodeImporter 会从聚合头文件中删除所有 #pragma 实例。

  • 如果 ModeGeneratePreprocessedSource,则 CodeImporter 会从预处理源中删除所有 #pragma 实例。

  • 如果 ModeUseOriginalCode,则忽略 RemoveAllPragma

属性:

GetAccess
public
SetAccess
public

是否删除生成的头文件中的所有全局变量定义并用外部声明替换它们,指定为数字或逻辑 1 (true) 或 0 (false)。RemoveVariableDefinitionInHeader 仅适用于 GenerateAggregatedHeader 模式。当 RemoveVariableDefinitionInHeadertrue1 时,

  • 如果 ModeGenerateAggregatedHeader,则在聚合头文件中替换全局变量定义。

  • 如果 ModeGeneratePreprocessedSourceUseOriginalCode,则忽略 RemoveVariableDefinitionInHeader

注意

如果您要导入的源文件中多次包含包含全局变量定义的源文件或头文件,请将 RemoveVariableDefinitionHeader 设置为 true1。向导中对应的设置是 Remove variable definition in header file

属性:

GetAccess
public
SetAccess
public

示例

全部折叠

更改沙盒模式和变量定义头设置。

codeimport_obj = sltest.CodeImporter('myCodeTest');
codeimport_obj.CustomCode.SourceFiles = {'myCode1.c','myCode2.c'};

codeimport_obj.SandboxSettings.Mode = "GeneratePreprocessedSource";
codeimport_obj.SandboxSettings.RemoveVariableDefinitionInHeader = true;

版本历史记录

在 R2021a 中推出