看到 Wikipedia 上面有一篇对于软件测试的综述,挺有总结性,做下读书笔记。

Wikipedia 的这篇文章,可以通过下面的 URL 访问:
http://en.wikipedia.org/wiki/Software_testing

Testing Processing, 这几年的 Agile 大行其道,所有相应的测试流程也有些变化:

1 古老的瀑布开发模式下的测试流程: Traditional waterfall development model

A common practice of software testing is that testing is performed by an independent group of testers after the functionality is developed, before it is shipped to the customer. This practice often results in the testing phase being used as a project buffer to compensate for project delays, thereby compromising the time devoted to testing.

Another practice is to start software testing at the same moment the project starts and it is a continuous process until the project finishes

常用的测试过程是在开发全部完成之后做的,所有这套流程有显著的缺陷:时效性低。通常都拖完了软件项目的进度
另一种方法是从项目开始就做测试,直到项目完成。

所以传统的开发模式下,测试都是不受重视的。(个人理解)

2 敏捷开发模式:Agile or Extreme development model

In contrast, some emerging software disciplines such as extreme programming and the agile software development movement, adhere to a “test-driven software development” model. In this process, unit tests are written first, by the software engineers (often with pair programming in the extreme programming methodology). Of course these tests fail initially; as they are expected to. Then as code is written it passes incrementally larger portions of the test suites. The test suites are continuously updated as new failure conditions and corner cases are discovered, and they are integrated with any regression tests that are developed. Unit tests are maintained along with the rest of the software source code and generally integrated into the build process (with inherently interactive tests being relegated to a partially manual build acceptance process). The ultimate goal of this test process is to achieve continuous integration where software updates can be published to the public frequently.

This methodology increases the testing effort done by development, before reaching any formal testing team. In some other development models, most of the test execution occurs after the requirements have been defined and the coding process has been completed.

BIDW, 数据仓库与商务智能中,对敏捷测试用例比较少,没有先写测试用例的用法(至少在经历的项目中没有发现)。

3 Top-down and bottom-up
Bottom Up Testing is an approach to integrated testing where the lowest level components (modules, procedures, and functions) are tested first, then integrated and used to facilitate the testing of higher level components. After the integration testing of lower level integrated modules, the next level of modules will be formed and can be used for integration testing. The process is repeated until the components at the top of the hierarchy are tested. This approach is helpful only when all or most of the modules of the same development level are ready.[citation needed] This method also helps to determine the levels of software developed and makes it easier to report testing progress in the form of a percentage.

Top Down Testing is an approach to integrated testing where the top integrated modules are tested and the branch of the module is tested step by step until the end of the related module.

In both, method stubs and drivers are used to stand-in for missing components and are replaced as the levels are completed.

无论是哪种模式下的测试流程, 都有一套简单的测试生命周期:A sample testing cycle

Although variations exist between organizations, there is a typical cycle for testing.[46] The sample below is common among organizations employing the Waterfall development model. The same practices are commonly found in other development models, but might not be as clear or explicit.

Requirements analysis: Testing should begin in the requirements phase of the software development life cycle. During the design phase, testers work to determine what aspects of a design are testable and with what parameters those tests work.
Test planning: Test strategy, test plan, testbed creation. Since many activities will be carried out during testing, a plan is needed.
Test development: Test procedures, test scenarios, test cases, test datasets, test scripts to use in testing software.
Test execution: Testers execute the software based on the plans and test documents then report any errors found to the development team.
Test reporting: Once testing is completed, testers generate metrics and make final reports on their test effort and whether or not the software tested is ready for release.
Test result analysis: Or Defect Analysis, is done by the development team usually along with the client, in order to decide what defects should be assigned, fixed, rejected (i.e. found software working properly) or deferred to be dealt with later.
Defect Retesting: Once a defect has been dealt with by the development team, it is retested by the testing team. AKA Resolution testing.
Regression testing: It is common to have a small test program built of a subset of tests, for each integration of new, modified, or fixed software, in order to ensure that the latest delivery has not ruined anything, and that the software product as a whole is still working correctly.
Test Closure: Once the test meets the exit criteria, the activities such as capturing the key outputs, lessons learned, results, logs, documents related to the project are archived and used as a reference for future projects.

**个人理解: 测试方案 -> 测试用例 -> 测试数据 -> 执行测试 -> 测试报告 -> 测试分析
每个步骤当中,都要有数据的收集,形成一整套可以度量的测试 metrics,来提供给测试分析以促进开发的效率与质量**

Testing Process - 读书笔记相关推荐

  1. Testing Types - 读书笔记

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

  2. 《Web Load Testing For Dummie》读书笔记

    <Web Load Testing For Dummie>读书笔记: http://www.automationqa.com/uchome/space.php?uid=89&do= ...

  3. 《Deep Learning With Python second edition》英文版读书笔记:第十一章DL for text: NLP、Transformer、Seq2Seq

    文章目录 第十一章:Deep learning for text 11.1 Natural language processing: The bird's eye view 11.2 Preparin ...

  4. Spring读书笔记——bean创建(下)

    有关Spring加载bean系列,今天这是最后一篇了,主要接上篇对于从Spring容器中获取Bean的一些细节实现的补充. <Spring读书笔记--bean加载>--Spring如何加载 ...

  5. 软件架构设计 温昱著 - 读书笔记

    #读后感#一本实用性很强的架构入门书籍.内容有深有浅,涉及面广,帮我们树立一个架构设计的全局观.  本书已读完,把读后感放在最前面,以下是详细的读书笔记. #读书笔记# 我们将软件架构概念分为两大流派 ...

  6. Linux设备驱动程序 第三版 读书笔记(一)

    Linux设备驱动程序 第三版 读书笔记(一) Bob Zhang 2017.08.25 编写基本的Hello World模块 #include <linux/init.h> #inclu ...

  7. caffe读书笔记1 CIFAR-10在caffe上进行训练与学习

    原文地址:caffe读书笔记1 CIFAR-10在caffe上进行训练与学习-薛开宇作者:残夕云翳 本次学习笔记作用,知道如何在caffe上训练与学习,如何看结果. 1.1使用数据库:CIFAR-10 ...

  8. 《How Tomcat Works》读书笔记(二)

    <How Tomcat Works>读书笔记(二) 这是<How Tomcat Works>第一二章的读书笔记.第一张主要写了一个静态资源处理的web服务器,第二章加了对ser ...

  9. Go语言实战读书笔记

    2019独角兽企业重金招聘Python工程师标准>>> Go语言实战读书笔记 第二章 通道(channel).映射(map)和切片(slice)是引用类型.引用类型的对象需要使用ma ...

最新文章

  1. sqlserver中索引优化
  2. PyTorch基于Apex的混合精度加速
  3. Centos下修改启动项和网络配置
  4. bat 连续读取两行_Redis底层数据结构解析(BAT大厂必问)
  5. 威盾VIACONTROL远程监控注册机及试用手记
  6. 【腐蚀率预测】基于matlab GUI BP神经网络钢筋腐蚀率预测【含Matlab源码 107期】
  7. [论文阅读] | Graph U-Nets
  8. Gephi下载百度云加速,舒服了
  9. 软考计算机硬件知识,软考程序员考点计算机硬件基础知识之存储器简介
  10. OpenFOAM动态加密网格的负载平衡
  11. Python-pip 安装与使用
  12. 从零开始搭建完整的电影全栈系统(六)——影片Api示例、说明及应用
  13. uniapp ios原生插件开发之component
  14. biblatex中参考文献期刊名缩写的实现
  15. android 动画直播,直播动画实现方案一
  16. 感性认识:计算机基本工作原理
  17. 边框样式(border-style)、边框圆角(border-radius)以及媒体查询(@media)
  18. 全国计算机一级上表格怎么做,全国计算机一级考试word表格制作(2003版)
  19. 20155318 《Java程序设计》实验四 (Android程序设计)实验报告
  20. c语言程序设计第五版第三章课后题

热门文章

  1. 在电脑测试c语言编程,C语言电脑编程兴趣班测试题目
  2. 聆听喳倩老师诵读「红楼梦赏析」号首发沙木木君,于二零一九年七月七日编创的新博文
  3. USB-HOST、USB-DEVICE、USB-OTG
  4. 真正的标准化机房长啥样?
  5. 第六章 异常 try-catch-finally 6.2.3
  6. 操作系统真象还原第3章:完善MBR
  7. coffeescript使用的方式汇总
  8. 2021.06.03邮票面值设计
  9. 流放者柯南联机显示无法链接服务器,《流放者柯南》联机疑难问题解答
  10. 紫雨老师接触自然法则的经过与故事