您使用什么来自动测试 Debian 软件包的安装和更新?

您使用什么来自动测试 Debian 软件包的安装和更新?

我正在使用 Debian repo(基于 reprepro)来安装 Wheezy 和自定义软件包。我会不时修改自定义软件包,并在不同的系统上手动测试它们,例如:

  • 测试 a) 安装新版本的 Debian 软件包
  • 测试 b) 在已安装同一 Debian 软件包的旧版本的系统上更新 Debian 软件包
  • 测试 c) 卸载新版本的 Debian 软件包

通常,我会在三台不同的服务器上运行这些测试。

由于定制的 Debian 软件包的数量不断增长,手动测试过程占用了我的越来越多时间。

因此,我正在寻找一个可以自动化测试的现有测试框架。此外,如果这个测试框架支持在容器/虚拟机内运行这些测试(例如使用快照,这样我们就可以一遍又一遍地开始),那就太好了。此外,我希望在测试完成后能得到一份完整的报告。

我知道我不是这个星球上唯一一个寻找这种工具的人。但是,使用 Google 和此网站上的搜索功能找不到解决方案。我找到了“autotest”,但我不确定这个工具是否适合我。

那么 - 您使用什么来自动测试 Debian 软件包的安装和更新?

请注意,我不是寻找一个测试包构建的工具(例如 Jenkins、Hudson)。

如果这个问题与 serverfault 上已经存在的条目重复,我深感抱歉。如果是这样,如果您能告诉我正确的页面,我会很高兴。

编辑:Debian 项目似乎正好使用了我所寻找的东西:

编辑 #2:看来 debci 正是我所寻找的(见上面的链接)。我会看看这个工具并在这里分享我的经验。不过,如果您能分享您为此特定目的使用的工具,我会很高兴。

答案1

您正在寻找的工具是皮尤零件, 不是德布西

debci 用于在“已安装”条件下运行软件包的测试套件,因此也会检查安装情况。但是,安装失败时它不会报告红色“失败”,只会报告黄色警告“暂时失败”,例如当 zsh 在 BinNMU 之后无法卸载时。 看DEP 8了解此类测试套件的外观描述。

piuparts 会比较检查软件包安装、删除和升级是否成功、修改的“conffiles”和剩余文件。查看所有官方 Debian 软件包的 piuparts 结果https://piuparts.debian.org/

但是,如果您的软件包中至少有一个具有符合 DEP-8 标准的测试套件,那么您可能希望在您的软件包上同时运行 debci 和 piuparts。

相关内容