用户名 密码 联盟服务 关于我们 联系方式 收藏本站
返回网站首页 PgMP认证,美国项目管理协会高端项目管理认证!大型项目与项目群管理Program Management全球权威认证


网站登录:会员 企业 专家 服务商
企业服务:PMP培训  内训课 公开课
工 具 箱:发表文章 提问题 发案例
首页动态 | 文库 | 下载 | 书架 | 访谈 | 专栏 | 专题 | 人才 | 培训 | 软件 | PMC 互动:活动 | 案例 | 问答 | 论坛 | 博客 | 圈子 
应用:基础工程软件制造活动研发  认证:PMPNPDPACPPgMPIPMPP2ISPMPIMCP建造师MPM  特色:热点奖项

PMI-ACP®认证

适合敏捷开发项目
敏捷项目管理最佳实践

网络课程

PMI-PBA®认证

重视项目商业分析
商业价值与需求分析能力

网络课程

NPDP®认证

产品管理国际认证
全球产品管理最佳实践

网络课

PMP®认证

单项目管理经典指南
年轻项目经理首选

北京 | 直播 | 录播

PgMP®认证

大型复杂项目全球标准
定位高级项目管理层

网络班

PfMP®认证

链接战略与项目
实现组织资源投资回报

全球直播

软考项目管理

信息系统项目管理师
系统集成项目管理工程师

计划 | 报名 | 经验

敏捷项目管理ACP认证培训
国际产品经理NPDP认证

游戏项目中的自动化测试和持续集成

作者:51cmm   提交人:XO[51cmm]   属性:提交人转载   发布时间:2005/6/16   点击:7720   【收藏本文

关于测试的疑问:我们真的可以节省时间么?项目管理论坛

多数情况下,一个开发团队想要在开发过程中使用自动化测试,大多数成员都会对它抱以质疑的态度。毕竟,与其花这点时间写测试用例,还不如去写逻辑和引擎 的代码。根据我们在游戏和其他领域的工作中使用自动化测试的经验来看,编写测试代码会额外增加30%工作量。初看,在时间和资金上这也许是很大的开销,然而,你要意识到这样做,省去了人工测试所花费的时间。项目经理博客

自动化测 试可以看作在开发前期投入,在开发过程中赢利。大多数的代码修改,包括Bug修改,都可能会引入更多问题导致程序宕机。所以,理论上说,一旦代码有所改变,就必须测试所有可能被影响的代码。自动化测试无需人工干预就可以完成,它们缩短了开发过程。而且由于自动化测试可以简单快速的发现修改的代码是否能有效地运行,因此也就鼓励开发者优化和改进现有的代码。项目管理者联盟

对我们来说,自动化测试帮助开发者编写更稳定和可靠的代码。哪怕是一开始对它抱有怀疑态度的开发成员也欣赏它所提供早期反馈的特性,在开发过程中,它也可以更早的 发现Bug。开发者的工作压力和负荷随着项目的开展日益加大,尽早的发现和解决Bug也可以避免给开发关键时期带来额外的压力。转自项目管理者联盟

在开发Vision引擎的时候,我们收集了一些数据来研究为提高代码稳定性而实施自动化测试的有效性。2001年早期,全部依靠人工测试的引擎第一个 release版本开发完成,尽管我们已经进行了很全面的测试,但是每个月,我们的在线技术支持数据库依然会收到上百个来自客户的Bug报告。2001年 9月,我们对已有的引擎功能和新增的特征实施自动化测试。这样,即使我们现在的工作量很大,开发进展也很正常,每月Bug报告的数量锐减(现在大概是5到10个)。项目经理博客

必须强调,这些图表只是反映了单元测试用例数量和每月Bug数量两者之间的相互关系,不能将它理解为必然的因果关系。当然,从2001年到2004年,我们在如何编写健壮的代码上学到了很多,在这段时间内,开发团队的人数变动频频,但是,这些明显的差异足以说明稳定性的提升部分归功于使用了自动化测试。 项目管理者联盟


游戏中自动化测试的局限性 项目管理论坛

尽管使用自动化测试对于游戏开发来说获益匪浅,但是也有其局限之处。显然,很难用它来测试游戏的平衡性,也不太可能用它来测试游戏性和画面的美观性。在这几年里,我们总结了一些编写自动化测试的要点,重点如下:PgMp.mypm.net

*测试最重要的模块(比如,最复杂和最常用的)。对那些最有可能出问题或者不会破坏原先设计的重构任务进行自动化测试,性价比最高。项目管理者联盟

*当上层功能性测试难以进行的时候,把精力集中在不同的子系统上。例如,你也许不能通过自动化测试来验证AI系统是否正常工作,但你可以测试当一个怪兽的体力低于一定数值的时候,它是否会“投降”。项目管理者联盟

*用压力测试来验证你的代码的强壮性。如果你的游戏在极端条件下运行的很好,比如,每秒有2000个怪兽出生和死亡,一个场景中同时放入500个有真实物理特性的物体,一幅地图轮流载入200次,那么玩家作一些异常操作时,宕机的可能性就会小很多。项目管理者联盟

*在修改Bug前,也为它编写测试用例。这样的话,可以确保这些Bug在今后的版本中不会重现。项目管理者联盟

*回归测试。例如,图像或状态比较的话,使用指定的测试场景要比使用产品地图更容易维护。如果你认为测试用产品数据可能会经常变动,那么你最好使用小的测试场景。否则,不断的生成新的参考数据会使得开发团队产生疲倦和厌烦的情绪。www.mypm.net

* 测试用例越简单越好,不要奢望有非常大的覆盖面。搭建一个易维护和可扩展的自动化测试是一个长期的任务。一般来说,“底层”代码,例如算术、碰撞检测和渲染,更容易进行自动化测试,对于游戏性和完整的游戏测试来说,还是需要经过QA人员亲自测试。当然,QA部门的注意力也要从技术转移到与游戏性相关的问题上去。“到A房间后,因为通风口前面的箱子太高了,所以出不去”这样的报告就会取代“当我的角色转动的时候,屏幕上出现了很多扭曲的三角面”。项目管理者联盟

持续集成项目管理者联盟

在一个复杂的软件项目中引入自动化测试,你会发觉运行它也需要一定的时间,我们看到的一些项目甚至需要几个小时。如果让开发者在他们的开发用机上运行的话,测试会完全占用他们的机器,影响工作,那么结果就是他们不去运行测试用例,很显然,没有被运行的用例是没有任何价值的。

解决方法就是搭建一台或多台专用的自动化测试机。它同时还运行版本管理软件(Subversion/CVS/Perforce),一旦发现提交了新代 码,那么代码就会被Check out并编译,测试用例也会自动运行。最后,系统会将测试结果报告以email的形式自动发送给最近提交代码的开发者。项目管理者联盟

完全自动化、重复的 build和测试过程,这种过程每天运行多次,在极限编程中,我们把它称为:持续集成。为了更好的实行持续集成,像 Cruise Control或者Anthill这样的开源代码工具可以将版本管理软件和自动build工具,例如ANT,整合起来。使用这样的工具, 可以很轻松的搭建适合自己的持续集成系统。项目管理者联盟

我们发现搭建专用持续集成服务器使得开发过程变得更顺畅,开发者可以更专注于自己的工作。与此同时,测试可以被很好的运行,一旦提交了错误的代码,持续集成系统会自动通知开发者和项目经理,因此开发者也可不必为此分心。自动化,自动化!项目管理者联盟

自动化测试和持续集成的使用为我们在游戏和工具的开发上带来了极大的收益。例如,持续集成服务器根据Wiki中的变化,每天自动生成CHF (windows帮助文件)文件。而且,使用ANT和CruiseControl来制作软件自动分发包会非常容易。这样一来,用最新的代码(或最新的 tag)创建一个完整的分发包就是举手之劳。项目管理者联盟

自动化过程中的自 动化测试执行,例如测试框架中的常规单元和回归测试,他们不是用来检查错误,而是用在相同环境下得到测试结果来衡量和比较引擎的性能(系统配置的结果以 XML文件格式存放在版本管理软件系统上)。如果当前的结果比参考结果差很多,那么测试失败,反之,它就成为了新的参考结果。转自项目管理者联盟

性能测试是一种特殊的回归测试。当引擎代码被重构,我们通过它来确保修改不会降低引擎原有的性能。这样,就迫使我们时刻关注代码的运行效率和对代码的优化工作,可以避免遇到在实际运行中,速度突然变慢的现象发生。www.mypm.net

结论

根据我们的经验,使用自动化测试和持续集成可以使开发团队工作更有效而开发出更好、稳定、简单的软件。而且,减少人工测试也可以减少开发团队的压力和工作负荷,可以在开发过程中尽早的发现Bug。项目管理者联盟

当然,自动化测试不会使你的游戏想当然成为畅销品。但毋庸置疑,它会使各类开发人员甚至玩家活得更自在。 training.mypm.net


<<上一页 1 2 3 下一页>>
项目管理者联盟PMP认证中心
[发表评论]
本站热点
· 华师大CTO学院:科创生态建设与创新项
·宏发电声江玫瑰谈PgMP:“下好一盘棋”
·PgMP:交付能力与创造未来的项目管理方
·开放讲座|《项目组合管理与PfMP认证》
·开放讲座|项目组合管理与PfMP认证
·开放讲座|PgMP:项目管理思维与方法论
·开放讲座|《项目组合管理与PfMP认证》
·网络讲座|《项目组合管理与个人职业发展》
·开放讲座|《项目组合管理与PfMP认证》
栏目说明
    《文库》栏目为项目管理者联盟网站核心栏目,收录了十大行业项目管理文章5000余篇,囊括了项目管理五个阶段、九个知识领域的相关文章,是广大项目管理爱好者学习的知识库,欢迎大家发表原创文章、转贴文章,或直接发给编辑。须联盟会员且登陆后才能发表文章。
敏捷项目管理ACP培训
项目管理活动
活动QQ群:531390275
免费积累PDU,仅500人

2022年项目管理活动计划
2021活动精彩回顾
原创排行榜
 项目管理评论杂志 311 高扬 106
 乔东 100 项目管理 84
 高国伟 61 人月神话 60
 张为 59 郭致星 52
 蒋昕炜 46 肖杨 38
 曾伟强 37 潘德有 36
搜索文章
关键词:
行  业:
团 队   成 本   风 险   进 度
沟 通   采 购   质 量   合 同
更多>> 专题集锦

企业项目化管理

PMO实践与应用

如何处理项目客户关系

更多:
经理访谈
更多:
个人专栏

王树文

赵春明

高国伟

更多:
项目管理者联盟特刊
联盟特刊是对网站会员发行的内部刊物,刊物内容包括:案例及分析等,得到了会员好评。
电子期刊:
特刊下载:
2017合刊  2016合刊  2015合刊 
2014合刊  2010合刊  2009合刊 
2008合刊  2004合刊  2005合刊 
2006合刊  2007合刊       
施工企业管理
《施工企业管理》创刊于1986年1月,中国施工企业管理协会主办,是反映施工企业管理杂志。
浏览往期:
建造师杂志
《建造师》杂志由清华国际工程项目管理研究院主办,是中国面向建设企业管理人的高端杂志。
浏览往期:
更多>> 推荐文章
09-02·项目集管理:构想一种不同.
08-17·项目经理“催活儿”的正确.
08-17·建筑工程项目管理中施工现.
08-17·进阶项目经理必备的复盘方.
08-17·项目管理协会PMI发布新人才
08-17·互联网大厂项目经理面试的.
08-17·项目经理要如何提高自己的.
08-17·管理改进中几个确实有用的.
08-17·项目经理提升职场能力的20.
06-14·项目经理搭建团队,需要看.
06-14·5A学员董雏:PMP取证重要,
06-14·成功管理能源项目的技巧和.
06-14·拥抱敏捷—计划发布与冲刺
06-14·从PMP到PgMP :不畏浮云遮.
06-14·这30+项目管理工具,优秀项
06-14·深度剖析项目管理五大痛点.
关于联盟 | VIP会员 | 培训服务 | PMP认证 | PgMP认证 | 刊物出版 | 沙龙会议 | 人才服务 | 广告投放 | 联系我们 | 友情链接

项目管理者联盟 版权所有 | 京ICP备10055250号-11 | 京公网安备 11010202009440号

如转载本站文章,必须于文章开头处注明转自“项目管理者联盟”,并注明原作者
PMI,Project Management Professional, OPM3, PMBOK, PMP,PgMP,PfMP,PMI-ACP,PMI-PBA
and the PMI Registered Education Provider logo are registered trademarks of the Project Management Institute, Inc.