|
2#
楼主 |
发表于 2018-3-14 13:37:49
|
只看该作者
4. 分别创建测试计划与测试详细规格、测试用例
应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试
过程的测试用例放到独立创建的测试用例文档或测试用例管理数据库中。测试计划和测试详细规格、
测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,
而测试详细规格、测试用例是完成测试任务的具体战术。
08. 您所熟悉的测试用例设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例
设计工作中的应用。
1.等价类划分
划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错
误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部
输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的
输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情
况:有效等价类和无效等价类.
2.边界值分析法
边界值分析方法是对等价类划分方法的补充。测试工作经验告诉我,大量的错误是发生在输入或
输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查
出更多的错误.
使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应
着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等
价类中的典型值或任意值作为测试数据.
3.错误推测法
基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.
错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他
们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现
的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为 0 的情况.
输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子
作为测试用例.
4.因果图方法
前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的
联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组
合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的
组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形
式来考虑设计测试用例. 这就需要利用因果图(逻辑模型). 因果图方法最终生成的就是判定表. 它适
合于检查程序输入条件的各种组合情况.
09. 请以您以往的实际工作为例,10. 详细的描述一次测试用例设计的完整的过程。
就说最近的这次网站功能的测试吧
首先:得到相关文档(需求文档和设计文档),理解需求和设计设计思想后,想好测试策略(测
试计划简单点就OK 了),考虑到测试环境,测试用例,测试时间等问题。
第二步:设计测试用例,测试策略是:把网站部分的功能点测试完,然后在进行系统测试(另外
个模块呢有另一个测试人员负责,可以进行联调测试),网站模块的测试基本是功能测试和界面测试
(用户并发的可能性很小,所以不考虑):这次的网站的输入数据呢是使用数据库中的某张表记录,
如果表中某一数据记录中新加进来的(还没有被处理的,有个标志位),网站启动后会立刻去刷那张
表,得到多条数据,然后在进行处理。处理过程中,会经历3 个步骤,网站才算完成了它的任务。有
3 个步骤呢,就可以分别对 这 3 个步骤进行测试用例的设计,尽量覆盖到各种输入情况(包括数据库中
的数据,用户的输入等),得出了差不多50 个用例。界面测试,也就是用户看的到的地方,包括发送
的邮件和用户填写资料的页面展示。
第三步:搭建测试环境(为什么这个时候考虑测试环境呢?因为我对网站环境已经很熟了,只有
有机器能空于下来做该功能测试就可以做了),因为网站本身的环境搭建和其他的系统有点不同,它
需要的测试环境比较麻烦,需要web 服务器(Apache,tomcat ),不过这次需求呢,网站部分只用到
了tomcat,所以只要有tomcat 即可
第四步:执行测试
11. 您以往是否曾经从事过性能测试工作?如果有,12. 请尽可能的详细描述您以往的性能测试
工作的完整过程。
是的,曾经做过网站方面的性能测试,虽然做的时间并不久(2 个月吧),当时呢,是有位网站
性能测试经验非常丰富的前辈带着我一起做。
性能测试类型包括负载测试,强度测试,容量测试等
负载测试:负载测试是一种性能测试指数据在超负荷环境中运行,程序是否能够承担。
强度测试: 强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况
容量测试:确定系统可处理同时在线的最大用户数
在网站流量逐渐加大的情况下,开始考虑做性能测试了,首先要写好性能测试计划,根据运营
数据得出流量最大的页面(如果是第一次的话,一般是首页,下载页,个人帐户页流量最大,而且
以某种百分比),
Web 服务器指标指标:
* Avg Rps: 平均每秒钟响应次数=总请求时间 / 秒数;
* Successful Rounds:成功的请求;
* Failed Rounds :失败的请求;
* Successful Hits :成功的点击次数;
* Failed Hits :失败的点击次数;
* Hits Per Second :每秒点击次数;
* Successful Hits Per Second :每秒成功的点击次数;
* Failed Hits Per Second :每秒失败的点击次数;
* Attempted Connections :尝试链接数;
13. 您在从事性能测试工作时是否使用过一些测试工具?如果有,请试述该工具的工作原理,
并以一个具体的工作中的例子描述该工具是如何在实际工作中应用的。
14. 您认为性能测试工作的目的是什么?做好性能测试工作的关键是什么?
15. 在您以往的工作中, 一条软件缺陷(或者叫 Bug )记录都包含了哪些内容?如何提交高
质量的软件缺陷(Bug )记录?
16. 您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug )的管理?
如果有请结合该工具描述软件缺陷(Bug )跟踪管理的流程。
17. 您认为在测试人员同开发人员的沟通过程中如何提高沟通的效率和改善沟通的效果?
24.维持测试人员同开发团队中其他成员良好的人际关系的关键是什么?
18. 在您以往的测试工作中最让您感到不满意或者不堪回首的事情是什么?您是如何来对待
这些事情的?
19. 在即将完成这次笔试前, 您是否愿意谈一些自己在以往的学习和工作中获得的工作经验
和心得体会?(可以包括软件测试、过程改进、软件开发或者与此无关的其他方面)
20. 你对测试最大的兴趣在哪里?为什么?
最大的兴趣就是测试有难度,有挑战性!做测试越久越能感觉到做好测试有多难。曾经在无忧
测试网上看到一篇文章,是关于如何做好一名测试工程师。一共罗列了 11,12 点,有部分是和人
的性格有关,有部分需要后天的努力。但除了性格有关的 1,2 点我没有把握,其他点我都很有信
心做好它。
刚开始进入测试行业时,对测试的认识是从无忧测试网上了解到的一些资料,当时是冲着做测
试需要很多技能才能做的好,虽然入门容易,但做好很难,比开发更难,虽然当时我很想做开发(
学校专业课我基本上不缺席,因为我喜欢我的专业),但看到测试比开发更难更有挑战性,想做好
测试的意志就更坚定了。
不到一年半的测试工作中,当时的感动和热情没有减退一点(即使环境问题以及自身经验,技
术的不足,做测试的你一定也能理解)。
我觉得做测试整个过程中有 2 点让我觉得很有难度(对我来说,有难度的东西我就非常感兴趣
),第一是测试用例的设计,因为测试的精华就在测试用例的设计上了,要在版本出来之前,把用
例写好,用什么测试方法写?(也就是测试计划或测试策略),如果你刚测试一个新任务时,你得
花一定的时间去消化业务需求和技术基础,业务需求很好理解(多和产品经理和开发人员沟通就能
达到目的),而技术基础可就没那么简单了,这需要你自觉的学习能力,比如说网站吧,最基本的
技术知识你要知道网站内部是怎么运作的的,后台是怎么响应用户请求的?测试环境如何搭建?这
些都需要最早的学好。至少在开始测试之前能做好基本的准备,可能会遇到什么难题?需求细节是
不是没有确定好?这些问题都能在设计用例的时候发现。
第二是发现 BUG 的时候了,这应该是测试人员最基本的任务了,一般按测试用例开始测试就能
发现大部分的bug,还有一部分bug 需要测试的过程中更了解所测版本的情况获得更多信息,补充
测试用例,测试出bug 。还有如何发现bug ?这就需要在测试用例有效的情况下,通过细心和耐心
去发现bug 了,每个用例都有可能发现bug,每个地方都有可能出错,所以测试过程中思维要清晰(
测试过程数据流及结果都得看仔细了,bug 都在里面发现的)。如何描述bug 也很有讲究,bug 在
什么情况下会产生,如果条件变化一点点,就不会有这个bug,以哪些最少的操作步骤就能重现这个
bug,这个bug 产生的规律是什么?如果你够厉害的话,可以帮开发人员初步定位问题。
|
|