首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >管理安装包

管理安装包
EN

Software Engineering用户
提问于 2015-11-30 15:38:35
回答 1查看 84关注 0票数 1

我正在研究我们目前创建安装包的方法,坦率地说,这是一个很大的人为错误范围的混乱。

我们目前使用InstallShield,但是为了使文件为包做好准备,在发布时有大量的复制和粘贴,而且我们从来没有完全确信所有的文件/依赖项都包含在安装程序中。

有人知道从工作流和工具的角度来管理这个过程的任何标准方法吗?

也就是说,在每次提交到源代码管理之后,我们应该更新安装程序吗?

EN

回答 1

Software Engineering用户

回答已采纳

发布于 2015-11-30 16:49:38

为了使文件为包做好准备,在发布时有大量的复制和粘贴。

当涉及到“复制/粘贴”文件时,几乎没有什么是你不能将其编码到脚本中的(您必须选择脚本语言,也许是操作系统的shell脚本语言--让我猜猜,它的more -可能是一种更现代的脚本语言,比如Powershell或Python,不管您喜欢什么)。如果您需要在此过程中操作文件(例如,增加版本号或在文件中更改GUID ),请为您创建一些工具。

大多数现代安装程序框架(我猜也是Installshield )将允许您自动创建包。因此,所有这些步骤都可以包含在CI服务器上的构建过程中,就像您已经在那里实现的标准编译构建一样。让服务器运行自动打包的频率取决于您自己,这肯定取决于您的软件需要多长时间的过程,以及如果构建的这一部分中断,您需要多快的反馈。

我们从来没有完全确信所有的文件/依赖项都包含在安装程序中。

在某个地方,您需要测试安装,这包括安装后运行程序。您必须决定是否也需要自动化流程的这一部分,或者手动测试是否足够(这可能取决于您的部署频率和依赖项更改的频率)。如果您决定自动化安装测试,则可以在应用程序中提供"UI免费测试模式“。当激活此模式时,它只检查是否满足所有所需的依赖项(并写入一个日志文件,如果不满足则返回错误代码)。这将是您的CI服务器可以检查的东西。

但是,如果您希望始终在清洁的类似于生产的环境(而不是在类似开发的环境)中测试安装,那么最后一步可能需要一些努力。在这里,使用虚拟机可能是一种可能的方法。你必须决定是否值得为你的处境付出努力。

票数 5
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/303931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档