选择题
1、软件验收测试的合格通过准则是(ABCD)
A 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B 所有测试项没有残余一级、二级和三级错误。
C 立项审批表、需求分析文档、设计文档和编码实现一致。
D 验收测试工件齐全。
2、软件测试计划评审会需要哪些人员参加(ABCD)
A 项目经理
B SQA负责人
C 配置负责人
D 测试组
3、下列关于alpha测试的描述中正确的是(AD)
A alpha测试需要用户代表参加
B alpha测试不需要用户代表参加
C alpha测试是系统测试的一种
D alpha测试是验收测试的一种
4、测试设计员的职责有(BC)
A 制定测试计划
B 设计测试用例
C 设计测试过程、脚本
D 评估测试活动
填空题
1、软件验收测试包括:正式验收测试、alpha测试、beta测试。
2、系统测试的策略有:功能测试、性能测试、可靠性测试、负载测试、易用性测试、强度测试、安全测试、配置测试、安装测试、卸载测试、文档测试、故障恢复测试、界面测试、容量测试、兼容性测试、分布测试、可用性测试。(这个全部都要记下来)
3、设计系统测试计划需要参考的项目文档有:软件测试计划、软件需求工件和迭代计划。
4、对面向过程的系统采用的集成策略有:自顶向下、自底向上。
判断题
- 软件测试的目的是尽可能多的找出软件的缺陷。Y
- Beta测试是验收测试的一种。Y
- 验收测试是由最终用户来实施的。N
- 项目立项前测试人员不需要提交任何工件。Y
- 自底向上集成需要测试员编写驱动程序。Y
- 负载测试是验证要检验的系统的能力最高能达到什么程度。N
- 单元测试能发现约80%的软件缺陷。Y
- 代码评审是检查源代码是否达到模块设计的要求。N
简答题
1、描述软件测试活动的生命周期。
测试周期分为计划、设计、实现、执行、总结。
计划:对整个测试周期中所有活动进行规划,估计工作量、风险安排、人力物力资源,安排进度等;
设计:完成测试方案。从技术层面上对测试进行规划。
实现:进行测试用例和测试规程设计。
执行:根据前期完成的计划、方案、用例、规程等文档,执行测试用例。
总结:记录测试结果,进行测试分析,完成测试报告。
2、区别阶段评审与同行评审。
同行评审目的: 发现小规模工作产品的错误。
同行评审人数: 3-7人,人员必须经过同行评审会议的培训,由SQA指导。
同行评审内容: 内容小,一般文档<40页,代码< 500行。
同行评审时间: 一小部分工作产品完成。
阶段评审时间: 通常是设置在关键路径的时间点上。
阶段评审目的: 评审模块阶段作品的正确性、可行性及完整性。
阶段评审人数: 5人左右,评审人必须是专家,具有系统评审资格。
阶段评审内容: 内容多,主要看重点。
3、简述集成测试的过程。
系统集成测试主要包括以下过程:
①构建的确认过程。
②补丁的确认过程。
③系统集成测试测试组提交过程。
④测试用例设计过程。
⑤测试代码编写过程。
⑥Bug的报告过程。
⑦每周/每两周的构建过程。
⑧点对点的测试过程。
⑨组内培训过程。
4、软件测试的八个基本原则:
用户需求
尽早测试
测试用例
避免自检
避免随意
集群现象
结果全查
保留文档
- 所有的软件测试都应追溯到用户需求。
- 尽早和不断地进行软件测试。
- 在设计测试用例时,应该包括合理的输入与不合理的输入以及相应的预期的输出结果。
- 充分注意测试中的群集现象。
- 程序员应避免检查自己的程序。
- 尽量避免测试的随意性。
- 应当对每个测试结果做全面的检查。
- 保留测试文档,包括测试计划、用例、出错统计和最终分析报告。
5、怎么做好文档测试?
①检查文档的编写是否满足文档编写的目的。
②内容是否齐全、正确。
③内容是否完善。
④标记是否正确。
6、 白盒测试有几种方法?
总体上分为静态方法和动态方法两大类。
静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义。
动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。
7、Alpha测试与beta的区别?
Alpha测试:在系统开发接近完成时对系统的测试,测试后仍然会有少量的设计变更。这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。
Beta测试:当开发和测试完成后所做的测试,最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。
8、比较负载测试、容量测试和强度测试的区别。
负载测试:在一定的工作负荷下,系统的负荷及响应时间。
容量测试:面向数据,目的是通过测试 预先分析出反映软件系统应用特征的 某项指标的极限值,如最大并发用户数、数据库记录数等。
强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。
9、软件的缺陷等级应如何划分?
A类— 严重错误。
由于程序所引起的死机、非法退出;死循环;数据库发生死锁;与数据库连接错误;因错误操作导致的程序中断;功能错误;数据通讯错误。
B类— 较严重错误。
程序错误;程序接口错误;数据库的表、业务规则、缺省值未加完整性等约束条件。
C类— 一般性错误。
操作界面错误,包括数据窗口内列名定义、含义是否一致;删除操作未给出提示;数据库表中有过多的空字段;打印内容、格式错误;简单的输入限制未放在前台进行控制。
D类— 较小错误。
界面不规范;输入输出不规范;长操作未给用户提示;提示窗口文字未采用行业术语;可输入区域和只读区域没有明显的区分标志辅助说明描述不清楚;。
E类—测试建议。
10、您认为做好测试用例设计工作的关键是什么?
以最少的用例在合理的时间内发现最多的问题。
白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。
黑盒测试用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。
11、黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点。
黑盒测试的优点有:
①比较简单,不需要了解程序内部的代码及实现;
②与软件的内部实现无关;
③从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
④基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
⑤在做软件自动化测试时较为方便。
黑盒测试的缺点有:
①不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
②自动化测试的复用性较低。
白盒测试的优点有:
①帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:
①无法覆盖所有情况。程序运行会有很多不同的路径,不可能测试所有的运行路径;
②测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;
③系统庞大时,测试成本会很高。
12、针对以下问题:某一种8位计算机,其十六进制常数的定义是以0x或0X开头的十六进制整数,其取值范围为,7f,7f(不区分大小写字母),如0x13、0x6A、,0x3c。请采用等价类划分的方法设计测试用例。
用例1:0x7F, 覆盖等价类(1)(4)(6)(8)
用例2:-0Xb, 覆盖等价类(1)(4)(6)(8)
用例3:0X0, 覆盖等价类(1)(4)(6)(8)
用例4:0x, 覆盖等价类(1)(7)
用例5:A7, 覆盖等价类(2)
用例6:-1A, 覆盖等价类(3)
用例7:0X8h, 覆盖等价类(1)(5)
用例8:0x80, 覆盖等价类(1)(4)(10)
用例9:-0XaB, 覆盖等价类(1)(4)(9)
13、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。
黑盒测试: 已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。
白盒测试: 是通过对系统内部代码进行检查、分析和测试来验证其内部结构是否满足设计要求。
单元测试: 针对系统中的每个单独模块进行的测试,以验证模块能够正常工作或是否存在任何错误。
集成测试: 将这些单独模块组合起来,将它们与其他模块进行交互并测试系统是否能够正确地工作。
系统测试: 是对整个系统进行测试,以验证其是否符合用户的业务需求和功能需求。
验收测试: 用户接受整个系统前执行的测试,以验证系统是否满足用户所有的需求和期望。是部署软件之前的最后一个测试操作。
联系:
单元测试和集成测试都属于系统测试的一部分,
而验收测试是系统测试的一个子类。
集成测试时单元测试的的逻辑扩展。
14、概括测试用例的基本要素。
答:软件测试用例的基本要素包括测试用例编号、测试标题、测试模块、重要级别、测试环境、测试输入、操作步骤、预期结果。
(1)用例编号:测试用例的编号有一定的规则。
(2)测试标题:对测试用例的描述,测试用例标题应该清楚表达测试用例的用途。
(3)测试模块:指明并简单描述本测试用例是用来测试哪些项目、子项目或软件特性的。
(4)重要级别:定义测试用例的优先级别,可以笼统的分为“高”和“低”两个级别。
(5)测试环境:描述执行测试用例所需要的具体测试环境,包括硬件环境和软件环境。
(6)测试输入:提供测试执行中的各种输入条件。
(7)操作步骤:提供测试执行过程的步骤。
(8)预期结果:提供测试执行的预期结果,预期结果应该根据软件需求中的输出得出。
15、测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是最重要的?
软件测试计划是指导测试过程的纲领性文件。
包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。
其中哪些是最重要的:测试计划编写6要素(5W1H):
why——为什么要进行这些测试;
what—测试哪些方面,不同阶段的工作内容;
when—测试不同阶段的起止时间;
where—相应文档,缺陷的存放位置,测试环境等;
who— 项目有关人员组成,安排哪些测试人员进行测试;
how—如何去做,使用哪些测试工具以及测试方法进行测试
15、您所熟悉的测试用例设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。
1. 等价类划分法:
在等价类划分中,数据被分为若干种等价类,每个等价类代表一组相似的数据。
举个例子,假设我们正在测试一个输入框,此输入框可以接受一个介于1和100之间的整数。我们可以将输入数据分为3个等价类:小于1的数、1到100之间的数、大于100的数。这样,我们只需要测试每个等价类的一组数据,即0、50和101,就可以代表每个等价类中的所有数据。
2. 边界值分析法:
该方法通过确定输入值和输出值的边界来设计测试用例。因为边界条件往往是在软件系统中导致错误的地方,所以边界值分析法可以帮助测试人员有效地捕获这些错误。
例如,假设我们正在测试一个支持邮件发送功能的应用程序,要求用户至少输入3个收件人和至多20个收件人。测试人员可以在边界到达3和20时测试输入,以确保系统正确处理了这些极端情况。
假设我们正在测试一个输入框,此输入框可以接受一个介于1和100之间的整数。测试人员可以在输入框输入到达1和100,以确保系统正确处理了这些极端情况。
3. 错误推测法:
错误推测法是一种根据特定错误模型创建测试用例的方法。该方法可以确保在不同情况下的所有可能出现的错误都被覆盖。
例如,如果我们测试一个售货机,我们可以使用错误推测法来模拟一些错误,如输入错误的货币类型、向售货机中投入硬币过多或过少等。看系统是否正常能处理这些错误输入。
4. 因果图方法:
因果图方法是一种基于流程图的测试方法,该图包含了所有可能的输入和输出,以及系统中其他隐含的因素和变量。这种方法可以确保所有测试用例都覆盖到系统的整个功能。
例如,我们测试一个在线购物网站,使用因果图方法可以帮助我们识别每个功能和组件之间的因果关系,并设计测试用例来覆盖所有功能。从用户登录到选择商品和检查,直到最后的支付和确认订单,每个部分都可以被涵盖在因果图中。
最后的最后,依旧是求点赞、求关注。爱你哦,暑假快乐,各位!!!!