分类: 项目管理
2009-09-06 09:46:00
问题十二:BUG管理工具的跟踪过程
用BugZilla为例子
测试人员发现了BUG,提交到Bugzilla中,状态为new,BUG的接受者为开发接口人员
开发接口将BUG分配给相关的模块的开发人员,状态修改为已分配
开发人员和测试确认BUG,如果是本人的BUG,则设置为接收;如果是别的开发人员的问题,则转发出去,由下一个开发人员来进行此行为;如果认为不是问题,则需要大家讨论并确认后,拒绝这个BUG,然后测试人员关闭此问题。
如果开发人员接受了BUG,并修改好以后,将BUG状态修改为已修复,并告知测试在哪个版本中可以测试。
测试人员在新版本中测试,如果发现问题依然存在,则拒绝修改;如果已经修复,则关闭BUG。
问题十二:您认为在测试人员同开发人员的沟通过程中,如何提高沟通的效率和改善沟通的效果?维持测试人员同开发团队中其他成员良好的人际关系的关键是什么?
尽量能有面对面的沟通,如果做不到,那么尽量能直接通过电话沟通,如果只能通过Email等非及时沟通工具的话,强调必须对特性的理解深刻以及能表达清楚。
一是真诚,二是团队精神,三是在专业上有共同语言,当然也可以通过直接指出一些小问题,而不是进入BUG Tracking System来增加对方的好感。
问题十三:在您以往的测试工作中,最让您感到不满意或者不堪回首的事情是什么?您是如何来对待这些事情的?
某次性能测试覆盖不足,造成系统崩溃。
问题十四:你对测试最大的兴趣在哪里?为什么?
最大的兴趣就是测试有难度,有挑战性!做测试越久越能感觉到做好测试有多难。曾经在无忧测试网上看到一篇文章,是关于如何做好一名测试工程师。一共罗列了11,12点,有部分是和人的性格有关,有部分需要后天的努力。但除了性格有关的1,2点我没有把握,其他点我都很有信心做好它。
刚开始进入测试行业时,对测试的认识是从无忧测试网上了解到的一些资料,当时是冲着做测试需要很多技能才能做的好,虽然入门容易,但做好很难,比开发更难,虽然当时我很想做开发(学校专业课我基本上不缺席,因为我喜欢我的专业),但看到测试比开发更难更有挑战性,想做好测试的意志就更坚定了。
我觉得做测试整个过程中有2点让我觉得很有难度(对我来说,有难度的东西我就非常感兴趣),第一是测试用例的设计,因为测试的精华就在测试用例的设计上了,要在版本出来之前,把用例写好,用什么测试方法写?(也就是测试计划或测试策略),如果你刚测试一个新任务时,你得花一定的时间去消化业务需求和技术基础,业务需求很好理解(多和产品经理和开发人员沟通就能达到目的),而技术基础可就没那么简单了,这需要你自觉的学习能力,比如说网站吧,最基本的技术知识你要知道网站内部是怎么运作的的,后台是怎么响应用户请求的?测试环境如何搭建?这些都需要最早的学好。至少在开始测试之前能做好基本的准备,可能会遇到什么难题?需求细节是不是没有确定好?这些问题都能在设计用例的时候发现。
第二是发现BUG的时候了,这应该是测试人员最基本的任务了,一般按测试用例开始测试就能发现大部分的bug,还有一部分bug需要测试的过程中更了解所测版本的情况获得更多信息,补充测试用例,测试出bug。还有如何发现bug?这就需要在测试用例有效的情况下,通过细心和耐心去发现bug了,每个用例都有可能发现bug,每个地方都有可能出错,所以测试过程中思维要清晰(测试过程数据流及结果都得看仔细了,bug都在里面发现的)。如何描述bug也很有讲究,bug在什么情况下会产生,如果条件变化一点点,就不会有这个bug,以哪些最少的操作步骤就能重现这个bug,这个bug产生的规律是什么?如果你够厉害的话,可以帮开发人员初步定位问题。
问题十五:你的测试职业发展目标是什么?
测试经验越多,测试能力越高。所以我的职业发展是需要时间累积的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年累积测试经验,按如何做好测试工程师的11,12点要求自己,不断的更新自己改正自己,做好测试任务。
问题十六:你自认为测试的优势在哪里?
有韧性
有能力面对挑战
有信心做好每一件事情
有比较好的教育背景
从以前的经理处都得到了很好的评价表明我做的很好
问题十七:当开发人员说不是BUG时,你如何应付?
如果确实是自己理解错误,则承认错误,没什么大不了
如果是需求不明,请项目经理补充清楚
如果双方理解不一致,且都不能互相说服,则请项目经理判断。
问题十八:你为什么想离开目前的职务?
问题十九:你对我们公司了解有多少?
问题二十:你找工作时,最重要的考虑因素为何?
工作的性质和内容是否能让我发挥所长,并不断成长。
问题二十一:为什么我们应该录取你?
您可以由我过去的工作表现所呈现的客观数据,明显地看出我全力以赴的工作态度。
问题二十二:请谈谈你个人的最大特色。
我的坚持度很高,事情没有做到一个令人满意的结果,绝不罢手。
问题二十三:一个测试工程师应具备那些素质和技能?
问题二十四:集成测试通常都有那些策略?
自上而下,自下而上,平面集成
问题二十五:测试结束的标准是什么?
从微观上来说,在测试计划中定义,比如系统在一定性能下平稳运行72小时,目前Bug Tracking System中,本版本中没有一般严重的BUG,普通BUG的数量在3以下,BUG修复率90%以上等等参数,然后由开发经理,测试经理,项目经理共同签字认同版本Release。
如果说宏观的,则是当这个软件彻底的消失以后,测试就结束了。
问题二十六:软件验收测试除了alpha,beta测试以外,还有哪一种?
第三方验收测试
问题二十七:为什么选择测试这行?
最开始么,公司安排的,然后么,干一行爱一行,发现测试中间还是有很多东西需要学习的,再就是测试中有很多东西值得改进和研究。
问题二十六:为什么值得他们公司雇用?
用自己的经验和其他同事一起发现更多的问题,同时不同行业的观点可以互相借鉴。
问题二十七:如果我雇用你,你能给部门带来什么贡献?
分享我的测试经验和测试技能,提高测试部门技术水平
intellect
1、 请就“欧洲见闻录”猜一小说名字。
2、 将2吨冰变成水,最快的方法是什么?
3、 加热会凝固的东西是什么?
4、 房间内有三盏灯,房外有三个开关,在房子外面看不到里面的东西。你只能进门一次,问:你怎么判断哪个开关控制哪个灯?
Test
1、 您认为做好测试计划工作的关键是什么?
我觉得这个问题的解决方案不是不写,而是想办法写得更好,更有实效性,执行性。这个是问题的关键。
一个好的测试计划是用来计划测试的,指导整个测试过程。所以一个好的测试计划一定是可以指导测试的,就是对整个测试过程中的人力,时间,资源,策略,范围的一个说明。
作为一个测试计划来讲,核心的三个要素是时间,资源,范围。(这句话摘自微软
的软件测试培训材料),时间就是什么时候做以及要花多久做,资源就是你要调用的人力、机器等资源,范围是你要测试的东西以及测试重点。除以上提到的3项之外,还有比较重要的项目有策略(具体就是怎么测)、风险控制(一旦有问题采取什么应急措施)等项目。
要把一个计划做得很有实用性,按照笔者的经验,要注意以下几个方面:
a. 上面提到的三要素不能少
b. 测试策略一定要交待清楚,就是大概怎么测试
c. 需要其他人员(部门)协调的,要交待清楚
d. 在估计测试所需的时间、人力及其它资源时,尽量做到客观、准确、留有余地,特别是估计开发时间和debug时间,以及要对自己的执行用例速度,回归速度心里有数
e. 测试计划中每个阶段要明确表明,并且测试阶段的输入、输出文档要清楚
f. 测试计划中的时间段不宜太长(最好以day为单位),太长就比较模糊,不好度量,不好check
g. 一定要有风险控制,要不然计划缺乏可执行性
h. 计划写完之后不是装在兜里,要组织PM和Dev进行评审
i. 要不断更新计划,记住:每个计划都是动态的,不是一成不变的
2、 什么是软件质量保证 其主要任务是什么?
软件质量保证(SQA)是建立一套有计划,有系统的方法,来向管理层保证拟定出的标准、步骤、实践和方法能够正确地被所有项目所采用。
软件质量保证的目的是使软件过程对于管理人员来说是可见的。它通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。软件质量保证组在项目开始时就一起参与建立计划、标准和过程。这些将使软件项目满足机构方针的要求。
3、 什么是测试用例 什么是测试脚本 两者的关系是什么?
4、 软件的安全性应从哪几个方面去测试?
用户认证安全的测试要考虑问题:
1. 明确区分系统中不同用户权限
2. 系统中会不会出现用户冲突
3. 系统会不会因用户的权限的改变造成混乱
4. 用户登陆密码是否是可见、可复制
5. 是否可以通过绝对途径登陆系统(拷贝用户登陆后的链接直接进入系统)
6. 用户推出系统后是否删除了所有鉴权标记,是否可以使用后退键而不通过输入口令进入系统
系统网络安全的测试要考虑问题
1. 测试采取的防护措施是否正确装配好,有关系统的补丁是否打上
2. 模拟非授权攻击,看防护系统是否坚固
3. 采用成熟的网络漏洞检查工具检查系统相关漏洞(即用最专业的黑客攻击工具攻击试一下,现在最常用的是 NBSI 系列和 IPhacker IP )
4. 采用各种木马检查工具检查系统木马情况
5. 采用各种防外挂工具检查系统各组程序的客外挂漏洞
数据库安全考虑问题:
1. 系统数据是否机密(比如对银行系统,这一点就特别重要,一般的网站就没有太高要求)
2. 系统数据的完整性(我刚刚结束的企业实名核查服务系统中就曾存在数据的不完整,对于这个系统的功能实现有了障碍)
3. 系统数据可管理性
4. 系统数据的独立性
5. 系统数据可备份和恢复能力(数据备份是否完整,可否恢复,恢复是否可以完整)
5、 面向对象的测试用例设计有几种方法 如何实现?
6、 软件产品质量特性是什么?
功能性:适应性、准确性、互操作性、依从性、安全性
可靠性:成熟性、容错性、以恢复性
可使用性:易理解性、易学习性、易操作性
效率:时间特性、资源特性
可维护性:易分析性、易变更性、稳定性、易测试性
可移植性: 适应性、易安装性、遵循性、易替换性
7、 软件测试的评审结果有哪些:
8、 描述软件测试的过程,其中有那些工作要做?
软件测试过程是一种抽象的模型,用于定义软件测试的流程和方法。众所周知,开发过程的质量决定了软件的质量,同样的,测试过程的质量将直接影响测试结果的准确性和有效性。软件测试过程和软件开发过程一样,都遵循软件工程原理,遵循管理学原理。
随着测试过程管理的发展,软件测试专家通过实践总结出了很多很好的测试过程模型。这些模型将测试活动进行了抽象,并与开发活动有机的进行了结合,是测试过程管理的重要参考依据。
9、 给你一个网页,应该从哪些方面考虑写测试用例
界面测试
主要页面元素:(输入框等)
界面测试技术:页面走查,兼容性测试(分辨率)
界面测试要素:直观,一致,灵活,舒适性
功能测试
白盒:
黑盒:
正确性
可用性
边界条件
性能
压力测试
错误恢复
安全性
兼容性
性能测试
10、 如何提高bug report的技巧?
组织structure:小心谨慎并且详细的记录
重现reproduced:必须检查问题是否可重现。如果错误不重现要写明是偶然发生的。一个好的处理原则是在编写BUG report前反复尝试3次。
隔离isolated:隔离错误。
归纳generalized:对常见的错误或问题进行归纳总结和思考。
对比compare
总结summarizes:在bug report的第一行写上错误的总结是非常关键的。
精简condense:bugreport写完要进行修改,做到精简和准确。
消除歧义disambiguate:不要有二义性。
中立neutralize:不要攻击开发人员。
检查review。
11、 SQA与tester的区别是什么?
SQA重点是对软件开发过程进行监督、管理、控制
tester 重点是对开发出的产品进行检查
12、 测试计划包含哪些内容?
测试目标和发布条件
待测产品范围
测试方法描述
测试进度表
测试资源和相关程序经理和开发工程师
配置范围和测试工具
此外还应列出测试中可能会面临的风险及测试的依赖性,即测试是否依赖某个产品或某个团队。
Unix:
1、 在/temp目录下查找文件名以abc开始的文件
find /temp -name “abc*” -print
2、 chmod 755 /usr/devos 是什么意思
3、 Q. How to remove directory with files?
A. rm -rf directory_name
4、 chown wuxh hello 把文件hello的属主修改为用户wuxh
5、 Q. How to remove directory with files?
A. rm -rf directory_name
6、 . Q. How can you see all mounted drives?
A. mount –l
7、 How do you check for processes started by user 'pat'?
A. ps -fu pat (-f -full_format u -user_name )
8、 请说一说用vi编辑文本的一些命令和它们的作用。
进入vi的命令
vi filename :打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次编辑
移动光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左移一个字至字首
e或E :光标右移一个字j至字尾
) :光标移至句尾
( :光标移至句首
}:光标移至段落开头
{:光标移至段落结尾
nG:光标移至第n行首
n+:光标下移n行
n-:光标上移n行
n$:光标移至第n行尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
0:(注意是数字零)光标移至当前行首
$:光标移至当前行尾
屏幕翻滚类命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。
插入文本类命令
i :在光标前
I :在当前行首
a:光标后
A:在当前行尾
o:在当前行之下新开一行
O:在当前行之上新开一行
r:替换当前字符
R:替换当前字符及其后的字符,直至按ESC键
s:从当前光标位置处开始,以输入的文本替代指定数目的字符
S:删除指定数目的行,并以所输入文本代替之
ncw或nCW:修改指定数目的字
nCC:修改指定数目的行
删除命令
ndw或ndW:删除光标处开始及其后的n-1个字
do:删至行首
d$:删至行尾
ndd:删除当前行及其后n-1行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
Ctrl+u:删除输入方式下所输入的文本
搜索及替换命令 :
/pattern:从光标开始处向文件尾搜索pattern
?pattern:从光标开始处向文件首搜索pattern
n:在同一方向重复上一次搜索命令
N:在反方向上重复上一次搜索命令
:s/p1/p2/g:将当前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:将文件中所有p1均用p2替换
选项设置
all:列出所有选项设置情况
term:设置终端类型
ignorance:在搜索中忽略大小写
list:显示制表位(Ctrl+I)和行尾标志($)
number:显示行号
report:显示由面向行的命令修改过的数目
terse:显示简短的警告信息
warn:在转到别的文件时若没保存当前文件则显示NO write信息
nomagic:允许在搜索模式中,使用前面不带“""”的特殊字符
nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
mesg:允许vi显示其他用户用write写到自己终端上的信息
最后行方式命令
:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下
:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下
:n1,n2 d :将n1行到n2行之间的内容删除
:w :保存当前文件
:e filename:打开文件filename进行编辑
:x:保存当前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:执行shell命令command
:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指
定n1,n2,则表示将整个文件内容作为command的输入
:r!command:将命令command的输出结果放到当前行 。
Sql
1、 谈谈数据库日志测作用。
2、 备份还原数据库是怎么进行的。
3、 查询名字为两个字并且姓“李”,后面where后该怎么写。
4、 为表添加一个外键的命令: