Flex 持续集成(CI)实践(Hudson)
项目开始后,持续集成会是一个关键的环节,本文针对Flex的开发的持续集成进行了一个实战,这些相关的工具和功能还是很强大的,通过组合这些工具,可以构建一个编译、单元测试、集成测试、代码检查等系列工作的CI服务,为后续的项目持续发展打下一定的基础。 运行Hudsonhttp://hudson-ci.org 上下载文件 执行: java - ja r hudson.war 或
hudson.war也可部署到其他JSP容器(如Tomcat Jetty等) 系统管理 中配置JDK Maven等环境
实例以FlexUnit的内容为例,试验一下持续集成的过程 下载 http://flexunit.org/releases/flexunit-4.1.0-8-4.1.0.16076.zip, 加入本地的SVN中,新的CI项目中设置正确的SVN地址 建立项目,设置代码管理部分
点击“立即构建”可以看到如下的界面,由于这个代码中有两个测试失败的,因此有具体的提示
SampleTest.as屏蔽掉Assert失败的内容,再次运行构建,测试成功
以上可见,整个过程非常简单,构建的信息非常明了 http://code.google.com/p/flexonjava/ Flex On Java这本书第十章有详细的关于视图、模型、服务等的测试 其他参考持续集成除了编译、单元测试外,还包括很多其他类型的自动化工作,如下是一个参考工具 单元和界面测试 FlexUnit http://www.flexunit.org/ mock http://code.google.com/p/mock-as3/ http://github.com/drewbourne/mockolate FlexMonkey http://www.gorillalogic.com/flexmonkey Visual Flex Unit http://code.google.com/p/visualflexunit/ 覆盖率(Code Coverage) http://code.google.com/p/flexcover/ 压力测试(Load Testing) http://labs.adobe.com/wiki/index.php/ Flex_Stress_Testing_Framework 代码规范: 参考规范 http://tinyurl.com/3xphtd FlexPMD http://opensource.adobe.com/svn/opensource/flexpmd/maven-repository/release/com/adobe/ac/flex-pmd/1.2/flex-pmd-all-in-one-bundle-1.2.zip (包括PMD Cpd metrics) 在线查看代码分析结果情况的工具 http://opensource.adobe.com/svn/opensource/flexpmd/bin/flex-pmd-violations-viewer.html 检查工具 http://opensource.adobe.com/wiki/display/flexpmd/FlexPMD 代码重复FlexCPD ?http://opensource.adobe.com/wiki/display/flexpmd/FlexCPD 代码度量FlexMetrics http://opensource.adobe.com/wiki/display/flexpmd/FlexMetrics FlexPMD和Hudson的集成 http://wiki.hudson-ci.org/display/HUDSON/PMD+Plugin http://opensource.adobe.com/wiki/display/flexpmd/How+to+invoke+FlexPMD http://cookbooks.adobe.com/post_Invoke_FlexPMD_with_Maven_on_build_Flex_projects-16066.html
这些工具的CI的步骤: ? 项目pom.xml中加入相关的内容 ? hudson安装对应的插件,设置对应的编译选项,然后构建即可查看相关的结果 FlexPMD - eclipse 插件 参考如下的内容可以在Elcipse中安装使用 http://bbs.9ria.com/viewthread.php?tid=41293 http://opensource.adobe.com/svn/opensource/flexpmd/plugin/trunk/flex-pmd-eclipse-plugin-site (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |