我正在讨论测试你正在构建的软件包,特别是那个用init.d生成一个守护进程和/或一个软件包的软件包。
你是否登录某种chroot?您是否创建了虚拟化发行版并将其拆除?如何测试运行时依赖项和测试套件,而不会在下次运行测试时弄乱你的dev机器?
答案 0 :(得分:2)
虚拟机,在测试后重置为“干净”状态,将是最简单的。 VMWare和Parallels“Snapshot”功能非常适用于此..
您将安装Debian或Ubuntu,然后拍摄快照(VMware和Parallels的操作方法)。 然后,您将安装包并测试安装,使用和删除它。
完成后,恢复到您拍摄的快照(比完全重新安装要快得多)是微不足道的。
答案 1 :(得分:0)
chroots通常用于包测试。
答案 2 :(得分:0)
我在开发软件包时亲自使用自己的机器。如果您使用较旧的发行版进行打包,则这是不可能的,但如果您的包装代码有大量流失,则比使用任何其他解决方案要快得多。
要测试包构建,您需要使用基于chroot的工具,如pbuilder,cowbuilder或sbuild。这可以确保程序包的构建正确依赖于目标分发。
您可以在chroot中测试某些软件,但网络守护程序之类的东西会与主机上运行的其他守护程序发生冲突。
如果您的软件包集很复杂,那么您可以使用的最佳测试环境是支持快照的VM软件。您需要使用目标分发创建虚拟化环境并在其上安装包。使用快照,您可以将操作环境重置为安装后状态。
您只能使用一个快照,但VirtualBox支持多个快照,这为复杂测试提供了额外的灵活性。