关于测试套件

多数软件包都提供了测试套件。在编译完一个软件包后,运行它的测试套件,能基本检查出它是否正确编译了。通过了测试套件的种种测试,说明这个软件包很可能是按照开发者的预想工作的。但是,它不能保证一个软件包没有bug.

有的测试套件显得格外重要。比如,核心工具链软件包的测试套件 -- GCC, Binutils, 和 Glibc ( C 库) -- 是最重要的,这是因为它们对一个系统起着至关重要的作用。不过要注意,GCC 和 Glibc 的测试套件很费时间,尤其是在比较慢的硬件上。

在你随着本书进行下去时,遇到测试套件的时候,我们会告诉你它的重要性,这样你可以作出是否运行它的取舍。

注: 运行 Binutils 和 GCC 的测试套件时遇到的重要问题是 pseudo 终端 (简称PTYs)用光了。症状是非常多的失败测试。有几个原因,比如主系统没有合理的设置 devpts 文件系统等。我们在第五章里会详细地讨论这个问题。