最近在做auto deployment。auto deployment完成后需要运行测试来保证安装完成无误,程序正常工作。

在Agile中,此时应运行acceptance testing。

这里先赞一下wikipedia,对程序开发方面的知识的解释简直是字字珠玑,对Acceptance testing中的解释也不例外:

http://en.wikipedia.org/wiki/Acceptance_testing

  • 定义

Acceptance testing 和 functional testing 是很类似的。二者略有区别,可以去参考我写的《对测试的认识》。

顺便加一句:

A smoke test is used as an acceptance test prior to introducing a build to the main testing process.

  • 在Agile中的作用

在Agile中,acceptance test被赋予了不同的意义和作用

Acceptance Tests/Criteria (in Agile Software Development) are usually created by business customers and expressed in a business domain language. These are high-level tests to test the completeness of a user story or stories 'played' during any sprint/iteration. These tests are created ideally through collaboration between business customers, business analysts, testers and developers, however the business customers (product owners) are the primary owners of these tests. As the user stories pass their acceptance criteria, the business owners can be sure of the fact that the developers are progressing in the right direction about how the application was envisaged to work and so it's essential that these tests include both business logic tests as well as UI validation elements (if need be).

如今很流行的测试框架JBehave,就是用于将非开发人员写的类自然语言的测试用例,翻译成实际的java测试用例。

Acceptance test cards are ideally created during sprint planning or iteration planning meeting, before development begins so that the developers have a clear idea of what to develop. Sometimes (due to bad planning!) acceptance tests may span multiple stories (that are not implemented in the same sprint) and there are different ways to test them out during actual sprints. One popular technique is to mock external interfaces or data to mimic other stories which might not be played out during an iteration (as those stories may have been relatively lower business priority). A user story is not considered complete until the acceptance tests have passed.

也就是说,只有当Acceptance test运行通过后,才认为开发人员完成了在这个sprint中的开发内容。这也就是Acceptance-Test Driven Development的来由。

The acceptance test suite is run against the supplied input data or using an acceptance test script to direct the testers. Then the results obtained are compared with the expected results. If there is a correct match for every case, the test suite is said to pass. If not, the system may either be rejected or accepted on conditions previously agreed between the sponsor and the manufacturer.

The objective is to provide confidence that the delivered system meets the business requirements of both sponsors and users. The acceptance phase may also act as the final quality gateway, where any quality defects not previously detected may be uncovered.

A principal purpose of acceptance testing is that, once completed successfully, and provided certain additional (contractually agreed) acceptance criteria are met, the sponsors will then sign off on the system as satisfying the contract (previously agreed between sponsor and manufacturer), and deliver final payment.

因此作为auto deployment的最后一步,将acceptance test作为最后一关很合理。

原文中列举的List of acceptance-testing frameworks一个都不知道。。。惭愧。。。

Acceptance testing相关推荐

  1. Testing Types - 读书笔记

    看到 Wikipedia 上面有一篇对于软件测试的综述,挺有总结性,做下读书笔记. Wikipedia 的这篇文章,可以通过下面的 URL 访问: http://en.wikipedia.org/wi ...

  2. Sanity Testing 和 Smoke Testing的区别

    Sanity Testing 和 Smoke Testing的区别 Sanity testing 和Smoke Testing是两个非常容易混淆的测试类型. Smoke Testing(冒烟测试) S ...

  3. [ZZ]测试阶段及类型(Testing Phases Types)

    测试阶段及类型: Testing Phases http://www.research.umbc.edu/~cseaman/ifsm698/lect0910.ppt http://www.ics.uc ...

  4. 测试驱动开发 测试前移_测试驱动的开发可能看起来是工作的两倍-但无论如何您都应该这样做...

    测试驱动开发 测试前移 by Navdeep Singh 通过Navdeep Singh 测试驱动的开发可能看起来是工作的两倍-但无论如何您都应该这样做 (Test-driven developmen ...

  5. 2017-09-22 前端日报

    2017-09-22 前端日报 精选 JavaScript 在 V8 中的元素种类及性能优化 [译]异步递归:回调.Promise.Async [译]HTML&CSS Lesson5: 定位 ...

  6. 在持续交付中加入自动化验收测试支持

    自动化验收测试是持续交付测试策略十分关键的一环,它为开发者们洞察系统行为提供了一个重要而不同的视角.Dave Farley提出,保持验收测试持续运行和通过率是开发者们的责任,而不能依靠另外的QA团队去 ...

  7. NDC 2010视频下载:看看其他微软平台程序员们都在做什么

    原文地址:<NDC 2010视频下载:看看其他微软平台程序员们都在做什么> NDC(Norwegian Developers Conference,挪威开发者大会)是一年一度的挪威最大的微 ...

  8. 软件测试中英文词汇汇总

    Acceptance testing : 验收测试 Acceptance Testing:可接受性测试 Accessibility test : 软体适用性测试 actual outcome:实际结果 ...

  9. 项目管理沙龙第七次聚会纪要

    项目管理沙龙第七次聚会纪要 本次沙龙的主题是由NSEC项目组介绍他们的敏捷实践经验.作为公司第一个实施敏捷的项目,他们的成绩给整个公司带来了震动,也是公司其他项目实施敏捷的参考和基础.因为时间是所限, ...

最新文章

  1. vmware workstation 安装esx 启动vt功能
  2. 久其软件怎么样_久其软件助力中国电信顺利完成网络攻防演练
  3. 延时队列实现的几种姿势
  4. 如何击败腾讯_击败股市
  5. ansys workbench 帮助文档在哪_中英对照读ANSYS帮助文档,是怎么玩的?
  6. java 读mdb,使用Java / Jackcess从加密的Access .mdb中读取
  7. 感谢贤心感谢layui
  8. 固定资产标签化带来的便利
  9. 风过,摔死一只ofo小黄猪
  10. Bert 源码(pytorch)超详细的解读
  11. 地理坐标系,投影坐标系区别
  12. torch.diag()
  13. 女生的择偶标准:曾仕强
  14. 基于键盘钩子的dota改键(单线程+DLL)MFC实现(源码+总结)
  15. 用计算机进行会计核算与手工会计核算,计算机会计核算与手工会计核算有哪些异同...
  16. 钉钉实现ISV特殊接口调用
  17. 使用Fileupload组件上传文本和文件
  18. postman报Error: write EPROTO 140600974724440:error:100000f7:SSL routines:OPENSSL_internal:怎么解决
  19. 有限元法的学习(一)
  20. lss文件服务器,百度云音视频直播LSS分发计费如何计算价格?

热门文章

  1. 台式机上如何配置并使用苹果iPhone的耳机麦克风 并且麦克风开启降噪功能
  2. 简易商品展示HTML+CSS
  3. 周鸿祎评互联网大佬编程能力:我可以排前三
  4. Python+Django基于python摄影展示个人相册系统#毕业设计(源码+系统+mysql数据库+Lw文档)
  5. redis数据库的主从、哨兵和cluster模式的实现原理与搭建详解(win10系统)
  6. 华硕FX53VD6700笔记本如何u盘装系统win7教程
  7. 程序员久坐太累,用BTU模组和液晶屏改造了一款智能呼啦圈!
  8. Thomas-Calculus——Infinite Sequences and Series(托马斯-微积分——无穷数列和级数-数列)
  9. 计算机专业中经典书籍(程序猿和大学生必读)
  10. 区块链量化投资系列课程(4) - 动态平衡策略