函数
GLibtest_init
自:2.16
声明 [src]
void
g_test_init (
int* argc,
char*** argv,
...
)
描述 [src]
初始化GLib测试框架。
这包括播种测试随机数生成器,设置程序名称,并解析与测试相关的命令行参数。
在调用任何其他g_test_*()函数之前应调用此函数。
以下参数被理解
-l:列出测试可执行文件中的可用测试用例。--seed=SEED:提供一个随机数种子,用于通过随机数重现测试运行。--verbose:详细运行测试。-q,--quiet:安静地运行测试。-p PATH:执行给定路径匹配的所有测试。-s PATH:跳过所有匹配给定路径的测试。这也可以用于强制运行否则将被跳过的测试(例如,名称包含“/子进程”的测试)。-m {perf|slow|thorough|quick|undefined|no-undefined}:根据这些测试模式执行测试
perf:性能测试,可能需要很长时间并报告结果(默认不报告)。
slow,thorough:慢且彻底的测试,可能需要相当长的时间并最大限度地提高覆盖率(默认不使用)。
quick:快速测试,应该非常快并且提供良好的覆盖率(默认)。
undefined:测试未定义行为,可能在g_test_trap_subprocess()或g_test_expect_message()下触发编程错误,以检查是否提供了适当的断言或警告(默认)。
no-undefined:避免测试未定义行为。
--debug-log:调试测试日志输出。
已解析的任何参数都将从argv中删除,并根据需要进行调整argc。
支持以下选项
G_TEST_OPTION_NO_PRGNAME:使g_test_init()不调用g_set_prgname()。自2.84以来。G_TEST_OPTION_ISOLATE_DIRS:为每个单元测试创建一个唯一的临时目录,并在单元测试期间将Xdg目录设置为此处。请参阅G_TEST_OPTION_ISOLATE_DIRS。G_TEST_OPTION_NONFATAL_ASSERTIONS:此选项的效果与g_test_set_nonfatal_assertions()相同。自2.84以来。
自2.58以来,如果测试是用G_DISABLE_ASSERT定义编译的,则g_test_init()将打印错误并退出。这是为了防止执行无操作的测试,因为在单元测试中通常(错误地)使用g_assert(),而在编译时加上G_DISABLE_ASSERT则为无操作。请确保您的测试在编译时没有定义G_DISABLE_ASSERT。
自2.16起可用
此功能不直接向语言绑定可用。