19.1.1测试套件脚本

使用Autotest生成测试或验证套件相当容易。整个验证套件保存在要处理的文件中自动,本身在引擎盖下使用GNU M4,以生成一个独立的Bourne shell脚本,然后分发。两者都没有自动也不需要GNU M4安装程序结束。

验证套件的每个测试都应该是某个测试组的一部分。A类试验组是一系列相互交织的测试一起执行,通常是因为组中的一个测试创建数据同一组中稍后的测试需要读取的文件。复杂测试组会使以后的调试更加繁琐。最好是每个测试组只保留几个测试。理想情况下只有一个测试每个测试组。

对于除最简单的包之外的所有包测试套装.at不能完全保存所有测试源,因为它们通常更容易保存在单独的文件中。每个单独的文件都包含一个测试组,或一系列测试组,它们都解决了一些常见的问题软件包中的功能。在这种情况下,测试套装.at仅初始化验证套件,有时还初始化健康检查,在列出之前包括所有其他测试的语句文件夹。特殊文件包装.m4,包含如果找到,将自动包含包裹的标识。

一个方便的替代方案是转移所有全球问题(本地Autotest宏、基本健康检查和AT_INIT(初始化)调用)到文件中本地.at和制作测试套装.at是一个简单的列表m4_包括子测试的s套房。在这种情况下,生成整个测试套件或其中的部分只是选择自动命令行论据。

Autotest生成的验证脚本按惯例称为测试套件。运行时,测试套件执行每个测试依次分组,每个测试只生成一个摘要行,以说明是否特定测试成功或失败。在所有测试结束时,总结计数器被打印出来。每个测试保留一个调试目录失败的组(如果有):这些目录被命名为测试套件.dir/nn个,其中nn个是的序列号测试组,包括:

在理想情况下,没有一个测试失败,因此没有调试目录被留下来进行验证。

实践中经常会出现验证中的个别测试套件需要从配置过程中获取信息。提供了所有验证套件通用的一些信息通过文件atconfig(atconfig配置),由自动创建AC_配置_测试目录。有关您的测试环境特别需要,您可以准备一个可选的名为的文件atlocal.in语言,由实例化AC_配置文件.配置过程产生atconfig(atconfig配置)在本地在这两个输入文件中,这两个生成的文件是由自动读取测试套件脚本。

这是一个显示文件之间关系的图表。

准备要分发的软件包时使用的文件:

[程序包.m4]-->。\子文件-1.at->。[当地时间]-->+...         \                  \子文件-i.at-->--测试套件.at-->--autom4te*-->测试套件...         /子文件-n.at->'

用于配置软件包的文件:

.-->atconfig(自动配置)/[atlocal.in]-->配置状态*--<\`-->[本地]

测试套件执行期间创建的文件:

atconfig-->..-->测试套件.log\                  />--测试套件*--</                  \[atlocal]->“`-->[testsuite.dir]