<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>

<sect1 id="prepare-abouttestsuites">
  <?dbhtml filename="abouttestsuites.html"?>

  <title>关于测试套件</title>

  <!--para>Most packages provide a test suite. Running the test suite for a
  newly built package is a good idea because it can provide a <quote>sanity
  check</quote> indicating that everything compiled correctly. A test suite
  that passes its set of checks usually proves that the package is
  functioning as the developer intended. It does not, however, guarantee
  that the package is totally bug free.</para-->
  <para>多数软件包提供测试套件，
	  一般来说，为新构建的软件包运行测试套件是个好主意，
	  这可以进行一次 <quote>完整性检查</quote> ，从而确认所有东西编译正确。
	  如果测试套件中的所有检验项目都能通过，
	  一般就可以证明这个软件包像开发者期望的那样运行。
	  然而，这并不保证软件包完全没有错误。</para>

  <!--para>Some test suites are more important than others. For example,
  the test suites for the core toolchain packages&mdash;GCC, Binutils, and
  Glibc&mdash;are of the utmost importance due to their central role in a
  properly functioning system. The test suites for GCC and Glibc can
  take a very long time to complete, especially on slower hardware, but
  are strongly recommended.</para-->
  <para>某些软件包的测试套件比其他的更为重要。
	  例如，组成核心工具链的几个软件包 &mdash; GCC、Binutils 和 Glibc
	  的测试套件就最为重要，因为这些软件包在系统的正常工作中发挥中心作用。
	  GCC 和 Glibc 的测试套件需要运行很长时间，特别是在较慢的硬件上，
	  但我们仍然强烈推荐运行它们。</para>

  <note>
    <!--para>Experience has shown that there is little to be gained from running
    the test suites in <xref linkend="chapter-temporary-tools"/>. There can be
    no escaping the fact that the host system always exerts some influence on
    the tests in that chapter, often causing inexplicable failures. Because
    the tools built in <xref linkend="chapter-temporary-tools"/> are temporary
    and eventually discarded, we do not recommend running the test suites in
    <xref linkend="chapter-temporary-tools"/> for the average reader. The
    instructions for running those test suites are provided for the benefit of
    testers and developers, but they are strictly optional.</para-->
    <para>经验表明，在 <xref linkend="chapter-temporary-tools"/>
		中运行测试套件几乎没有意义。在这一章中，
		我们无法绝对避免宿主系统对测试过程的影响，
		这往往导致不可避免的失败结果。再加上由于
		<xref linkend="chapter-temporary-tools"/> 中的工具是临时的，
		最终会被丢弃，我们不建议一般读者在
		<xref linkend="chapter-temporary-tools"/> 中运行测试套件。
		尽管我们为测试人员和开发人员考虑，提供了运行这些测试套件的方法，
		但它们绝对不是必须运行的。</para>
  </note>

  <!--para>A common issue with running the test suites for Binutils and GCC
  is running out of pseudo terminals (PTYs). This can result in a high
  number of failing tests. This may happen for several reasons, but the
  most likely cause is that the host system does not have the
  <systemitem class="filesystem">devpts</systemitem> file system set up
  correctly. This issue is discussed in greater detail at
  <ulink url="&lfs-root;lfs/faq.html#no-ptys"/>.</para-->
  <para>在运行 Binutils 和 GCC 的测试套件时，最普遍发生的问题是虚拟终端
  (PTY) 被耗尽，这会导致大量测试出现失败结果。
  这种现象有多种可能原因，但最常见的原因是宿主系统没有正确设置
  <systemitem class="filesystem">devpts</systemitem> 文件系统。
  关于这个问题的更多细节在
  <ulink url="&lfs-root;lfs/faq.html#no-ptys"/> 中进行了讨论。</para>

  <!--para>Sometimes package test suites will fail, but for reasons which the
  developers are aware of and have deemed non-critical. Consult the logs located
  at <ulink url="&test-results;"/> to verify whether or not these failures are
  expected. This site is valid for all tests throughout this book.</para-->
  <para>一些软件包的测试套件总是失败，但开发者已经知道失败原因，
	  并判定这些失败并不重要。参照 <ulink url="&test-results;"/>
	  中的构建日志，来检查这些失败是否符合预期。
	  本书中的所有测试都可以在该网址查询。</para>

</sect1>
