1、下面几种白盒测试技术,哪种是最强的覆盖准则()
语句覆盖
条件覆盖
判定覆盖
条件组合覆盖
六种覆盖方法中,覆盖准则由弱到强依次是语句覆盖、判定覆盖(分支覆盖)、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖。
其中,语句覆盖是使得程序中每个语句至少被执行一次;判定覆盖是使得程序中的每个分支至少都通过一次;
条件覆盖是使得判定中的每个条件获得各种可能的结果;
判定/条件覆盖是使得判定中的每个条件取到各种可能的值,并使每个判定取到各种可能的结果;
条件组合覆盖是使得每个判定中条件的各种可能组合都至少出现一次;
好的测试要追求对代码的“覆盖率”,条件组合覆盖对代码的覆盖率最高。
2、软件测试用例包括( ) 输入数据和预期输出结果
3、在软件开发中,我们经常要使用测试用例对程序进行检查,一次成功的测试是指运行测试用例后()
证明程序正确性
发现了程序错误
改正了程序错误
未发现程序错误
4、自底向上集成需要测试员编写驱动程序。请判断这句话的正确与否。 T
自底向上测试是从“原子”模块(即软件结构最低层的模块)开始组装测试,因测试到较高层模块时,所需的下层模块功能均已具备,所以不再需要桩模块。
自底向上集成方法不用桩模块,测试用例的设计亦相对简单,但缺点是程序最后一个模块加入时才具有整体形象,需要开发驱动模块。
5、软件测试的对象包括( )
目标程序和相关文档
源程序、目标程序、数据及相关文档
目标程序、操作系统和平台软件
源程序和目标程序
6、下面不属于软件测试步骤的是
集成测试
回归测试
测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试及发版测试。
• 开始是单元测试,集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。• 集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。
• 确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。
• 系统测试把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。
7、验收测试是由最终用户来实施的。请判断这句话的正确与否。F
错在最终,验收测试有alpha和beta两种,且都由用户来实施,区别在于是否为最终用户
alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内部用户在模拟实际操作环境进行的受控测试
beta测试是由软件的多个用户在一个或多个实际使用环境下进行的测试
8、输入一个字符串,长度不得大于6,第一个必须为字母,首字母必须大写,那么根据黑盒测试中的等价划分技术,得到的无效等价类是:()
{字符串第一个字符为大写,长度>6}
{字符串第一个字符为小写,1<=长度<<6}
{字符串第一个字符为数字,1<=长度<=6}
- 无效等价类:指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。对于具体的问题,无效等价类至少应有一个,也可能有多个。
9、软件测试计划评审会需要参加人员:SQA/项目经理/客户(可选)/配置管理员/测试经理/开发组长/系统分析员
软件质量保证(SQA-Software Quality Assurance)
10、网游的测试内容:
a) 性能
i. 客户端性能
ii. 服务器端性能
1. 服务器
2. 数据库
iii. 网络
b) 功能
i. 从运行完 game.exe 打开游戏界面后可进行的各种操作、玩法
ii. 界面
iii. 音乐
c) 自动化
i. 测试工作组织实施中需要的工具、软件、平台的开发
ii. 自动化的回归测试作用:游戏中基础的、变动不大的、出错率高的、可进行 checklist 重复测试的功能、性能等自动化是一个好方法
iii. 任何时候自动化都取代不了人脑,它只是将一些重复性的劳动从我们测试人员身上去掉,让我们有更多的时间做更有意义的事情,如果你觉得你做一件事情是重复的,且有规律可行的,不防考虑自动化
11、系统测试的16个测试策略:
功能测试、性能测试、压力测试、容量测试、安全性测试、GUI测试、可用性测试、安装测试、配置测试、异常测试,备份测试、健壮性测试、文档测试、在线帮助测试、网络测试、稳定性测试。
12、系统集成测试主要包括以下过程:
1. 构建的确认过程。 2. 补丁的确认过程。 3. 系统集成测试测试组提交过程。 4. 测试用例设计过程。 5. 测试代码编写过程。 6. Bug的报告过程。 7. 每周/每两周的构建过程。 8. 点对点的测试过程。 9. 组内培训过程。
13、软件验收测试分为三类:
正式验收测试;
非正式验收测试:其中包括α测试(由用户、测试人员、开发人员共同参与的内部测试。)
和β测试(内测后的公测,即完全交给最终用户测试。)
14、测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。
TDD得原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD虽是敏捷方法的核心实践,但不只适用于XP(Extreme Programming),同样可以适用于敏感词开发方法和过程。
TDD得基本思路就是通过测试来推动整个开发得进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。
TDD的重要目的不仅仅是测试软件,测试工作保证代码质量仅仅是其中一部分,而且是在开发过程中帮助客户和程序员去除模棱两可的需求。
TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。
优点:在任意一个开发节点都可以拿出一个可以使用,含少量bug并具一定功能的产品。缺点:增加代码量。测试代码是系统代码的两倍或更多。
15、单元测试的测试用例主要根据( )的结果来设计。详细设计
16、在游戏或软件开发完成的初期,由游戏公司或软件公司发送限定的激活码或账号给玩家,由玩家测试并向游戏公司反馈使用情况和存在的问题,以促进游戏的进一步完善的环节称为()。内测
公测:公开测试。其实就是向广大玩家完全公开,注册的账号数量没有限制,到了公测阶段一般来讲初期是免费的,之后随着玩家数量的多少,游戏运营商会在一定时间之后对游戏开始收费。当然,永久免费的游戏除外。 内测:内部测试。经历了封测后,游戏进一步完善。发布出来,让大众玩家可以注册试玩,通过玩家玩后的反应和建议,进一步将游戏的BUG、设置、职业能力等等进行修订。 有的游戏的内测的账号是有限的,比较难注册。一般的游戏内测结束后就把玩家的游戏角色删掉,有的则保留或保留一部分。内测的游戏是免费的。 封测:封闭测试。其版本实为未成熟的,有很多的BUG。在里面玩和正常没分别。就是禁止用户注册,只提供了一些账号分给玩家试玩,如果发现BUG了就一定要告诉官方网站,官方才能进行补丁。
17、边界值法既可以用于黑盒测试用例,也可以用于白盒测试用例。
18、测试设计人员主要负责设计测试用例以及设计测试过程。 制定测试计划是测试经理来做的;评估测试活动是测试经理组织开发人员来进行的。
19、针对手机应用软件的系统测试,我们通常从如下几个角度开展:功能模块测试,交叉事件测试,压力测试,容量测试,兼容性测试,易用性/用户体验测试等.
对手机可以施加的压力测试类型主要有:存储压力、边界压力、 响应能力压力、网络流量压力,没有并发能力
20、假设我们每天80%的访问集中在20%的时间里(峰值),如果每天有300万的pv(网页浏览量),而 我们的单台机器的QPS为58,那么大概需要几台这样的机器:
3台
4台
机器:峰值时间每秒QPS / 单台机器的QPS = 需要的机器
问:每天300w PV 的在单台机器上,这台机器需要多少QPS?
答:( 3000000 * 0.8 ) / (86400 * 0.2 ) = 139 (QPS)
问:如果一台机器的QPS是58,需要几台机器来支持?
答:139 / 58 = 3
21、项目立项前测试人员不需要提交任何工件。请判断这句话的正确与否。T