2010-06-14 55 views
1

什么是开发人员检查代码的最佳过程,安装程序由构建工程师创建并发布到QA以测试安装程序。安装程序的单元测试

如果安装程序没有Dev的单元测试,应该发布到QA。如果dev做了一些修改,那么他们应该等到QA报告错误。或者,如果安装程序第一次被授予开发单元测试,并且一旦他们签署,那么只有它应该发布到QA?

回答

1

是否需要与安装程序集成?也就是说,安装程序的新版本可能需要由dev进行更改吗?

我的猜测是安装程序和代码之间有集成,因此需要集成测试。似乎有理由认为Dev应该参与其中。

所以:

确定在何处进行集成测试的责任在于:如果与构建工程师,然后从他们发布给QA。如果与Dev一起,那么先给Dev,然后再发给QA。

1

下面是一个博客条目的链接,该博客条目描述了一个将单元测试添加到WiX安装程序的自定义操作的新项目。虽然这是非常具体的实现,但它可能会为您提供有关向您的安装程序添加单元测试的指针。

http://www.joyofsetup.com/2010/02/08/introducing-lux-declarative-unit-testing-for-custom-actions/

作为一般原则,我会说你怎么测试彻底您的安装应该是有多少人会被安装产品的功能。如果您在公司内部编写供内部使用的软件,并且有10台机器,那么我会说只是确保基本工作进行了测试。如果您的产品将发布到全球,并且您预计有数百个用户,请测试该过程的每个可能方面。这种情况下的任何安装程序错误将是一个巨大的问题。

+0

整洁的文章关于勒克斯。希望在编写Windows安装程序时我已经拥有了这个功能。 – 2010-06-14 07:46:20

+0

我不确定Lux的使用频率如何,但它确实出现在wix网站上; http://wix.sourceforge.net/manual-wix3/lux.htm。一位用户发布了关于2011.10的问题,http://www.mentby.com/Group/wix-users/lux-unit-test-does-not-call-my-ca.html。也可能有这个(不受支持的)代码使用的示例; http://scrumpeak.codeplex.com/wikipage?title=How%20to%20use%20ScrumPeak&referringTitle=Home。 – AnneTheAgile 2012-10-03 22:56:22

3

我这样做的时代,我的方法是让建筑工程师完全脱离这个过程。我自动构建安装程序,作为自动化构建的相同脚本的一部分。构建工程师负责自动构建,而不是编写和遵循清单。 (如果您可以编写构建过程的清单,那么您可以自动构建过程,如果您不能为构建过程编写清单,则您没有业务发布软件。)

开发人员可以构建整个在他们的私人开发环境中发布,并测试他们认为合适的任何方式(我推荐使用带有快照的虚拟机)。一旦开发人员感到高兴,他们将代码提交给SCM存储库。持续集成引擎(Hudson,CruiseControl等)监视存储库并启动集成构建。一旦集成构建完成,就可以将结果发送给QA进行测试。如果您依赖于需要特殊许可软件构建的安装程序,则不必为每个开发人员购买授权副本,只需获取CI服务器的许可证,并让开发人员在构建完成后从CI服务器获取安装程序构建。

如果你想有更多的进程(不寒而栗),那么让开发人员承诺开发分支,由开发分支生成构建的CI服务器监视开发分支。只有开发人员测试开发分支的版本。一旦开发团队对结果满意,来自开发分支的变更将被提升(合并)到主分支,并由CI服务器监控,以生成QA发布。

我甚至在有(私人)开发者分支的环境中工作,这些分支流入团队开发分支,流入到集成分支,流入分支分支,每个分支都有一个评审委员会来确定何时促进从一个分支到下一个分支的变化。这是疯了,恕我直言,但质量保证工作人员喜欢它 - 质量保证工作人员长期聘用来监督这一过程。