The LaTeX Project logoThe LaTeX Project

按主题分类的出版物:回归测试支持

LaTeX 发布工作流程和 LaTeX 开发格式



来自 TUG 2018 年会议(巴西里约热内卢)

带我飞向月球:使用 Lua 进行 (La)TeX 测试(以及更多内容)(幻灯片)

自 LaTeX 团队成立以来,测试一直很重要,多年来,为内核创建了一套复杂的测试文件。在过去的四分之一世纪里,运行测试的方法随着团队工作方式的变化而变化。

近年来,Lua 作为所有 TeX 系统中的脚本语言的可用性意味着它已成为支持这项工作的自然选择。以此为驱动力,团队开发了 l3build 以自动运行测试。在核心工作的基础上,l3build 已发展成为提供一种可靠发布软件包(和 LaTeX 内核)的强大方法。

在这里,我将了解我们测试方法的背景,然后再展示 Lua 如何以及为何在此处为我们工作。

IMPA 在 YouTube 上录制的演讲视频:带我飞向月球:使用 Lua 进行 (La)TeX 测试(以及更多内容)



自动化 LaTeX(3) 测试

讨论我们使用 l3build 和 Travis-CI 为 LaTeX3 源代码设置的持续集成测试。现在我们也使用它来持续测试 LaTeX2e 源代码!


l3build — 现代 Lua 测试套件,用于 TeX 编程

回归测试是任何中等复杂程度的编程环境中重要的工具。它们允许程序员对他们的代码进行广泛的更改,同时确保以前工作正常的功能仍然有效。广泛的回归测试套件一直是维护和开发 LaTeX2e 和 LaTeX3 的重要组成部分。回归测试套件通常由许多单独的文件组成,这些文件包含一个或多个被测代码的可测试单元。可测试单元可以是具有预期结果的特定计算、一系列逻辑测试,或者——特别是对于基于 TeX 的代码——排版并旨在实现某种特定格式的材料。在代码开发期间以及任何新代码发布到公众之前,可以编译此测试套件,以确保对代码的任何更改都不会引入错误或更改与以前版本相比的行为。当报告代码中的错误时,演示该错误的最小示例通常会形成它们自己的测试文件,表明该错误已修复并且不会再次发生。由于基于 TeX 的代码至少在三种不同的“模式”(mouth、stomach 和 output)下运行,因此回归测试比简单地断言某些编程逻辑的结果更复杂。作为 LaTeX3 项目工作的一部分,已编写了一个新的基于 Lua 的测试环境,以支持正在进行的开发。该测试环境在 2014 年波特兰 TUG 会议上提出,适合一般 TeX 社区使用。



来自 TUG 2014 年会议(美国波特兰)

用于 TeX 编程的现代回归测试套件(幻灯片)



LaTeX2e 的回归测试套件

一篇描述过去几年为 LaTeX 构建的回归测试套件的文章。它描述了一些历史,并概述了我们从中获得的结果。


按主题分类的出版物

在每个主题下,您都会找到 LaTeX3 项目发布的关于相关主题的相关文章和论文,以及指向其会议演示视频的链接。

按年份分类的出版物

按年份分类的出版物页面上给出了按年份排序的所有出版物的另一种视图。

项目成员和其他人的书籍

我们认为有用的书籍列表在书籍页面上给出。通过本网站购买文档,您可以支持项目成员的志愿者工作,以保持 LaTeX 对您有用。