ImageVerifierCode 换一换
格式:DOC , 页数:61 ,大小:1.33MB ,
资源ID:1273844      下载积分:30 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1273844.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于敏捷软件开发方法的Web2.0网站开发——测试驱动方法的应用---毕业论文.doc)为本站会员(滴答)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于敏捷软件开发方法的Web2.0网站开发——测试驱动方法的应用---毕业论文.doc

1、 本 科 毕 业 论 文 基于敏捷软件开发方法的 Web2.0 网站开发 测试驱动方法的应用 The Web 2.0 website development based on Agile programming Application of Test Driven Development 姓 名: 学 号: 学 院:软件学 院 系:软件工程 专 业:软件工程 年 级: 指导教师: 年 月 摘 要 敏捷软件开发方法是这几年来软件工程发展的最新成果。 敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。 测试驱动开发 是 敏捷开发的最佳实践之一,所谓的测试驱动开发,其重心不在 Test,而在于 D

2、evelopment, 测试驱动开发并不是一种测试技术,而是一种富有新意的软件开发方法。 本文主要探讨了测试驱动的软件开发方法在 Ruby On Rails 项目中的应 用,切实运用测试驱动开发方法来驱动整个拼客网的开发。 在拼客网的开发过程中,我们运用测试驱动中的单元测试来完成模型类的构建,从而设计完成数据库的架设;运用功能测试实现对控制器从需求到设计再到编码的整体流程的驱动;最后通过对整个项目的工作流程进行集成测试,既验证了项目的功能,也对项目的需求的完成情况进行了检验。 经过实践,发现当熟练运用测试驱动开发方法进行项目的开发后,虽然没有明显的节省开发的时间,但是 少了 前期繁琐的需求的搜

3、集与整理, 项目整体框架的 设计 ,还是令我们雀跃不已。 测试驱动代表着一种截然不同的软件开发方 法,当习惯了测试驱动开发的思维后,就能够在项目的开发中灵活的进行运用。 测试驱动开发提倡测试先行,因此能够尽早、尽可能地发现项目中潜在的错误,这就降低了后期修改代码错误的代价 和风险 。 关键词 敏捷软件开发;测试驱动开发; Rails Abstract Over the years, the latest achievement of the software engineering is Agile programming. Agile programming is a people-cent

4、ered, iterative, step-by-step development methodology. Test Driven Development is one of the best practices of agile programming, test driven development is not focus on testing, but the development, it is not a testing technique, but an innovative software development methodology. This article disc

5、usses the test driven development methodss applications in the Ruby On Rails projects, effective use of test driven development to drive the whole development of pin ke web. In the process of developing the pin ke web, we use unit testing to drive the construction of model, and then completed the fr

6、amework of the database; we make use of functional testing to drive the process of controller from the demand to design until coding ; finally, testing the work of the entire project by integration testing, it not only verify the function of the project, but also examine the completion of the demand

7、 of the project. It has been found that when we are skilled in testing driven development, although the duration of development isnt obviously reduced,but without the cockamamie process to collect and sort the requirements at the beginning.Testing driven development stands for a completely different

8、 software development means.When we are familiar with this method,we can use it flexibly during the project development.This method calls for testing firstly.By this means, developers can find potential faults as early as possible.It is better to reduce the risk of reworking the inaccurate code. Key

9、 words: Agile programming; Test Driven Development; Rails 目 录 第一章 引言 .1 1.1 研究的背景 .1 1.2 本文的主要工作 .3 第二章 测试驱动开发方法介绍 .4 2.1 测试驱动定义 .4 2.2 测试驱动的本质 .5 2.3 测试驱动的优势 .7 2.4 测试驱动的不足 .8 第三章 测试驱动开发的过程 . 10 3.1 测试驱动开发的流程与模式 . 10 3.1.1 测试驱动开发流程 . 10 3.1.2 测试驱动开发模式 . 12 3.1.2.1 相互独立的测试 . 12 3.1.2.2 测试列表 . 13 3.1

10、.2.3 测试优先 . 13 3.1.2.4 断言优先 . 14 3.1.2.5 测试数据 . 14 3.1.3 小结 . 14 3.2 测试驱动在基于敏捷开发的拼客网站的实践 . 15 3.2.1 项目简介及初始需求 . 15 3.2.2 测试环境的搭建 . 16 3.2.3 模型类的测试驱动 . 19 3.2.4 控制器的测试驱动 . 24 3.2.5 应用程序的测试驱动 . 31 3.2.6 小结 . 38 第四章 结束语 . 39 参考文献 . 41 致 谢 . 42 Contents Chapter 1 Introduction .1 1.1 Background .1 1.2 Co

11、ntent .3 Chapter 2 Introduction to TDD .4 2.1 Definition of TDD.4 2.2 Essence of TDD.5 2.3 Advantage of TDD .7 2.4 Lack of TDD.8 Chapter 3 TDD Process . 10 3.1 TDD Processes and Models. 10 3.1.1 TDD Processes. 10 3.1.2 TDD Models . 12 3.1.2.1 Isolated Test. 12 3.1.2.2 Test List . 13 3.1.2.3 Test Fir

12、st . 13 3.1.2.4 Assert First . 14 3.1.2.5 Test Data. 14 3.1.3 Summary. 14 3.2 Practice TDD . 15 3.2.1 Project Profiles and Initial Demand. 15 3.2.2 Construct Test Environment . 16 3.2.3 TDD Apply to Model. 19 3.2.4 TDD Apply to Controller . 24 3.2.5 TDD Apply to Application. 31 3.2.6 Summary. 38 Cha

13、rpter 4 Conclusions . 39 References . 41 Acknowledgements . 42 基于敏捷软件开发方法的 Web2.0 网站开发 测试驱动方法的应用 1 第一章 引言 1.1 研究的背景 在社会信息化程度不断提高的今天,一个高效的软件开发过程对于软件开发人员来说是至关重要的,决定着开发是痛苦的挣扎,还是不断进步的喜悦。现今的 软件 行业, 从提出需求到开发部署的周期越来越短 ,而且客户的需求是随时变化的,因此如果仍采用原先繁琐冗长的传统 开发方式,前期文档的正确与详尽对后期项目的架构和功能的实现的正确与否起决定作用,显然是无法适应如此多变的需求的。

14、于是,软件开发者也在不断探索着新的软件开发方法,希望能使软件开发更加简单有效,在这种大前提下,敏捷开发应运而生。 敏捷软件开发是一个开发软件的管理新模式,用来替代以文件驱动开发的瀑布开发模式。敏捷开发避免了传统瀑布方式的弊端,主要是吸收了各种新型开发模式的 “ 动态 ” 特性,关注点从文档 转 到开发者,管理方式也从工厂的流水线到团队的自我放松式的组织。强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付 新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。 敏捷软件开发 包括极限编程 (eXtr

15、eme Programming,XP)、 Scrum、 动态系统开发方法 (Dynamic System Development Method,DSDM)、 自适应软件开发(Adaptive Software Development,ASD)、 Crstal 方法 、特征驱动开发 ( Feature- Driven Development, FDD) 、实用程序设计 等,其中最重 要的是极限编程。 1这些方法可满足对不同于文档驱动的、严格的软件开发过程的新方法的需求。 敏捷 软件开发过程 与传统软件开发过程的不同之处 有 4 个: ( 1) 个体的交互胜过过程与工具; ( 2) 可以工作的软件

16、胜过面面俱到的文档; ( 3) 客户合作胜过合同谈判; ( 4) 响应变化胜过 遵循 计划。 随着 敏捷开发 的运用越来越广泛 , 作为敏捷软件开发的核心的 测试驱动, 也基于敏捷软件开发方法的 Web2.0 网站开发 测试驱动方法的应用 2 越来越受到人们的关注 ,并成功运用于实际的项目开发中 。测试驱动开发 (Test Driven Development),简称 TDD,由 KentBeck 提出的一种软件开发方式。它以不断地测试推动 代码的开发,既简化了代码,又保证了软件质量。 测试驱动开发理论最初源于 对这些问题的思考 ( 1) 如果我们能够在编写程序代码之前先进行测试方案的设计 ,

17、 会怎样 ? ( 2) 如果我们保证除非没有这个功能 将导致测试失败 , 否则就不在程序中实现该功能 , 会怎样 ? ( 3) 换一个角度 , 如果当侧试时发现必须增加某项功能才能够通过测试时 , 我们就增加这一功能 , 会怎样 ? 大师们通过带着这些问题的实践 , 发现这的确是一个提高软件代码质量 , 使得效率得到保障的一个很好出发点。以这样的思路进行软件开发 , 可以保证程序中的每一项功能都有测试来验证它是正确的 , 而且每当功能 被无意修改时 ,测 试程序会发现。同时 , 也使我们获得了一个新的观察点 , 从对程序调用者有利的视角来观察我们的程序 , 这使得我们在关心程序功能的本身还能够

18、对接口予以足够的关注 , 使得其更容易被调用 。 另外这种思路下的代码将变得更加易于调用 , 也就必须使其与其它代码保持 低耦 合性。并且 , 当你想复用这些模块时 , 测试代码给出了很好的示例。这一切 , 使得软件开发工作的质量一下子变得有保障了。 传统软件工程界一直存在这样的看法 : 程序员不应该测试自己的代码 , 原因之一是程序员在代码开发中形成的思维定势将导致测试的盲区 ; 其次是从心理学的角度看 , 个人很难否决自己努力完成的工作成果。这样 , 专业的测试团队的出现成为可能 , 在现代软件开发过程中 , 专业测试团队的介入 , 使得软件的质量得到了相当程度的保障 。 测试因此成为对软

19、件质量保证的最后哨卡 , 其地位也日渐重要。 尽管在传统测试理论中 , 测试几乎已经伴随了整个开发周期 , 但更多的情况是 : 至少在项目开始集成之前 , 测试是基本不存在的 , 测试通常是在集成阶段开始进入的 , 测试人员就不得不在这个时候 再 来面对可能的模块质量问题、 模块设计问题以及其他许多早在那之前就应该已经解决的问题。 而软件工程的研究显示 : 在软件开发周期的越早期 发现错误 , 那个错误将带来的损失将越小 , 后期的修改费用会成指数级上升。 基于敏捷软件开发方法的 Web2.0 网站开发 测试驱动方法的应用 3 显然,采用测试驱动开发方式,让程序员 在开发 功能代码之前就先编写

20、测试用例, 以测试来驱动软件设计的进行, 通过 频繁地 进行 测试 , 不仅 完成整个项目功能代码的编写工作,也 提前挖掘出项目中可能存在的问题, 减少后期修改 bug的费用 ,提高工作的效率。 测试驱动开发改变了编码的过程 , 并且这种改变不仅是可能的 , 同时也是值得去做的。 在开发的顺序上 , 采用先编写测试 ,再编写代码来满足测试的方法,并在开发过程中不断地通过运行测试代码来获得所开发的代码与所要求的结 果之间的差距 , 在实际中有非常好的效果 ,在这个过程中, 测试工作不再是单纯的测试 , 而成为设计的一部分。 1.2 本文的主要工作 本文的主要工作在于 通过实现一个 web2.0 的拼客网站的开发,来 研究测试驱动在敏捷开发方 法 中所起的作用。 Ruby on Rails 是一种解释型的方便快捷的面向对象的脚本语言,利用 Ruby 语言和 Rails 的强大功能,可以使 Web 开发更加轻松自如。该项目主要是基于敏捷的开发方式, 采用 Ruby on Rails 这种 Web应用程序 框架,运用测试驱动的方法 来进行开发的 。通过将测试驱动技术运用于项 目的开发中,从实践中研究测试驱动开发方法对于软件开发的各个阶段的影响,更加深刻的体会测试驱动的开发方法的优点及其存在的缺点。

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。