软件测试之构建测试---BVT
1. 构建的基本流程:
a. 开发人员在他们的个人计算机上编写源代码文件
b. 他们将编写好的文件存放在一个统一集中的地方,构建组将所有的源代码编译成可以在计算机上运行的二进制文件,且用安装工具把各种需要安装到服务器上的文件包装成可以安装到不同平台的软件包。
c. 组合成一个产品
构建的过程就好比一个组装生产线,源代码文件就像是各种大小配件,被存储在一个大仓库里,源代码中,有些在构建过程中还需要再加工。
2. 构建过程:

3. 构建生产线时,软件开发部门,特别是构建测试团队需要考虑什么?
a. 储存源代码的“仓库”
b. 可以反复生产的“流水线”
c. 快速简单的测试以保证产品可以更全面深入地测试和利用系统备份技术来分享测试环境
4. 源代码是构建过程的基础,如何将源代码放入安全可靠的地方?
一般来讲,源代码会被存放在数据库里,运用版本控制系统管理源代码。
5. 版本控制系统概述
它用来帮助我们记录文件更改的过程及细节,一般基于客户端/服务端结构,可以同时为多个开发人员提供服务。

6. 版本控制系统的功能有哪些?
创建新文件、提取文件、存入新版本文件、协调或控制多人对同一个文件的同时修改、记录文件的修改历史且供查询。
7. 构建产品的前提是什么?
建立构建的环境。
8. 在建立构建的环境时需要考虑哪些因素?
a. 选择构建使用的服务器
b. 选择构建环境平台
c. 构建所需要的软件或工具
9. 软件开发流程:
a. 开发人员编写软件代码,将源代码交给构建组进行构建
b. 构建组将源代码文件做成可以安装的软件产品,再交给测试组进行测试
c. 测试组将测试时发现的问题反馈给开发组
d. 开发组修改代码,再将修改后的代码交给构建组来进行新版本的构建

10. 在设计构建的过程时,一般还要考虑到整体构建及部分构建的需要,设计部分构建逻辑的关键是?
每个源代码文件与构建步骤时间的关系,一般版本控制系统都支持查询阶段间源代码文件的变化,这保证了部分构建的可行性。
11. 自动化部分构建过程:

12. 部分构建组合的好处有哪些?
a. 如果有关源代码自上一次构建没有改变,构建可以被跳过,使整体构建时间缩短
b. 部分构建之间如果没有前后顺序的关系,可以让它们同时运行来缩短构建的时间
c. 部分构建所产生的二进制代码可以直接应用到测试环境来快速检验新的产品功能,测试若通过,部分构建代码会进入下一个版本的测试产品
13. 如何避免让构建过程称为开发的瓶颈?
缩短构建时间和减少构建过程中的问题,如实施自动化构建。
14. 自动化构建的好处?
a. 保证软件开发过程中能定制比较灵活的构建时间表
b. 确保每一次构建过程的一致性,没有因为认为的错误而引入产品的缺陷
15. 自动化构建程序的一般性原则:
a. 在源代码文件改变时,不需要构建程序的改变,即使有不可避免的改变,也应使改变过程尽量容易、简单
b. 避免把输出或输入的相关参数直接写死在构建代码中,这样,在构建的环境改变时不需要改变构建程序
c. 经常需要改变的一些变量采用属性文件统一管理,需要改变时只需修改属性文件中的参数值(如*.properties文件,或者*.xml文件)
d. 使用Template文件和XSLT,在构建运行时依据构建需要生成构建程序文件,减少在更改构建程序文件方面的投入
16. 软件构建的频率如何确定?
根据软件测试的需要来确定。在敏捷开发模型的环境下,提供频繁的测试产品非常关键。最大可能地保证构建的频率是软件敏捷开发模型中的一个很必要的保证。
17. 什么是构建测试?--Build Verification Test
构建测试也称为构建可接受性测试(Build Acceptance Test),一般是在每一个测试产品生成之后,由构建测试团队执行一组最基本的测试用例,来确定做成的测试产品的质量是否达到可以交到各个测试组来进行更全面、更深入的各项测试的要求。
构建测试主要从功能的角度对构建测试产品进行验证,构建测是成功执行时其他测试开始的前提条件,高效的构建测试可以提高整个团队的测试效率。
18. 构建测试的测试用例是如何选择的?
构建测试的测试用例基本都是功能测试用例,相对比较简短,应着重于产品的最基本、最重要的功能,选择原则:
a. 只测试最重要,最基本的功能
b. 只测试已经测试过且相对稳定的用例
19. 构建测试有什么作用?
a. 让开发人员马上知道新版本的源代码是否可以被成功地构建成软件产品
b. 帮助测试团队避免把时间浪费在不稳定的或者根本不工作的测试产品上
20. 构建测试的步骤:
a. 安装测试产品及需要的其他软件
b. 进行产品所需要的系统配置
c. 测试几个最基本的产品功能
21. 构建测试的内容?
构建测是还包括对构建过程本身的检验,主要内容包括:
a. 确认构建是否包括了源代码文件新的改变
b. 检验构建的日志是否有报错
c. 最后产品文件的大小是否有异常等
22. 构建测试示意图:

23. 构建测试环境时的步骤?
a. 采用一些能实现系统配置自动化的工具,作为构建测是的一部分,自动安装所有构建测是需要的软件。
b. 使用一些系统备份和恢复工具:
i. 备份安装好的构建测试所需软件的系统
ii. 备份构建环境本身
24. 构建测试的目的是什么?
检验测试产品构建过程是否成功完成,构建出的产品是否具有可测性。
25. 什么是静态测试?
静态测试针对源文件直接做测试分析,发现问题,适用于在源文件中就能发现问题的情形。
26. 常见的静态测试用例有哪些?
语法及拼写检验,网页亲和力检验,Java/Java EE最佳实践或用户化的规则检验
27. 全自动静态测试示意图:

软件测试之构建测试---BVT的更多相关文章
- [转载]软件测试之Web测试经典总结
转载自:软件测试之Web测试经典总结 基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且, ...
- 软件测试之WEB测试经典总结
在Web工程过程中,基于Web系统的测试.确认和验收是一项重要而富有挑战性的工作.基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览 ...
- 《Google软件测试之道》测试开发工程师
拖延了将近半年的草稿,断断续续的写完了.之前草草翻看完这本书,关注点主要在TE上,而关于SET的部分则只是浏览,最近后知后觉,又翻出了这本书,重新看了一遍,又有新收获. 就说说Google的SET是如 ...
- 《Google软件测试之道》基础
<Google软件测试之道>,一直听朋友讲起这本书,出于琐事太多,一直没机会拜读,最近部门架构觉得我们IT部门的技术太low,就给我们挑选了一些书籍,让我们多看看... 个人的一种学习习惯 ...
- 《Google软件测试之道》【PDF】下载
<Google软件测试之道>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382198 内容介绍 每天,Google都要测试和发布 ...
- 《Google软件测试之道》简介
<Google软件测试之道>,一直听朋友讲起这本书,出于琐事太多,一直没机会拜读,最近部门架构觉得我们IT部门的技术太low,就给我们挑选了一些书籍,让我们多看看... 个人的一种学习习惯 ...
- 《Google软件测试之道》摘录
以下是最近看的一本书<Google软件测试之道>里的一些摘录,收获很多. 1.讨论测试开发比并没有什么意义,如果你是一名开发人员,同时也是一名测试人员,如果你的职位头衔上有测试的字样,你的 ...
- 《Google软件测试之道》- Google软件测试介绍
<Google软件测试之道>- Google软件测试介绍 2015-05-21 目录 1 质量与测试 2 角色 3 组织结构 4 爬.走.跑 5 测试类型 相关链接 与Micro ...
- 《Google 软件测试之道》摘录
最近刚刚看完<Google 软件测试之道>,受益颇多,遂记录下: 只有在软件产品变得重要的时候质量才显得重要 第一章:谷歌软件测试介绍 角色介绍 SWE(Software Engineer ...
随机推荐
- Backbone.js Wine Cellar 教程
中文版: http://rd.189works.com/article-74541-1.html http://www.189works.com/article-74542-1.html http:/ ...
- [leetcode] Min Stack @ Python
原题地址:https://oj.leetcode.com/problems/min-stack/ 解题思路:开辟两个栈,一个栈是普通的栈,一个栈用来维护最小值的队列. 代码: class MinSta ...
- PayPal 高级工程总监:读完这 100 篇文献,就能成大数据高手
原文地址 开源(Open Source)对大数据影响,有二:一方面,在大数据技术变革之路上,开源在众人之力和众人之智推动下,摧枯拉朽,吐故纳新,扮演着非常重要的推动作用:另一方面,开源也给大数据技术构 ...
- 10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”.任何技术都是为了满足人的生产生活需要而产生的.具体到小小的一个手机,里面蕴含的技术也是浩如烟海,是几千年来人类科技的结晶,单个人穷其一生也未必能掌 ...
- 寻找倒数第K个结点
#include<stdio.h> #include<iostream> using namespace std; /** * 找到链表中的倒数第k个节点 */ //定义结构体 ...
- Scala 深入浅出实战经典 第51讲:Scala中链式调用风格的实现代码实战及其在Spark中应用
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-64讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...
- nodejs express 框架解密4-路由
本文档是基于express3.4.6 express 的路由是自己去实现的,没有使用connect中的路由中间件模块. 1.在如何创建一个app那篇中,我们提到了路由, //router //路由 t ...
- TextView使用SpannableString设置复合文本(转)
TextView通常用来显示普通文本,但是有时候需要对其中某些文本进行样式.事件方面的设置.Android系统通过SpannableString类来对指定文本进行相关处理,具体有以下功能: 1.Bac ...
- eclipse连接远程hadoop集群开发时权限不足问题解决方案
转自:http://blog.csdn.net/shan9liang/article/details/9734693 eclipse连接远程hadoop集群开发时报错 Exception in t ...
- 在Oracle Linux Server release 6.4下配置ocfs2文件系统
① 安装ocfs-tools-1.8 如果是使用RedHat Enterprise Linux 6.4,也可以安装ocfs-tools-1.8的,只是要插入Oracle Linux Server re ...