软件测试面试题整理及答案

  1.      问:你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决。
  2.      问:给你一个网站,你如何测试?
  3.      问:在搜索引擎中输入汉字就可以解析到对应的域名,请问如何用LoadRunner进行测试。
  4.      问:一台客户端有三百个客户与三百个客户端有三百个客户对服务器施压,有什么区别?
  5.      问:软件都有多少种分类?
=================参考答案===============

1、  答案如下:

a)         首先,将问题提交到缺陷管理库里面进行备案。

b)        然后,要获取判断的依据和标准:

                        i.              根据需求说明书、产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是否确认的直接依据;

                      ii.              如果没有文档依据,可以根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷;

                    iii.              根据用户的一般使用习惯,来确认是否是缺陷;

                     iv.              与设计人员、开发人员和客户代表等相关人员探讨,确认是否是缺陷;

c)         合理的论述,向测试经理说明自己的判断的理由,注意客观、严谨,不参杂个人情绪。

d)        等待测试经理做出最终决定,如果仍然存在争议,可以通过公司政策所提供的渠道,向上级反映,并有上级做出决定。

 

2、  答案如下:

a)         首先,查找需求说明、网站设计等相关文档,分析测试需求。

b)        制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:

                        i.              功能性测试

                      ii.              界面测试

                    iii.              性能测试

                     iv.              数据库测试

                       v.              安全性测试

                     vi.              兼容性测试

c)         设计测试用例:

                        i.              功能性测试可以包括,但不限于以下几个方面:

  1. 链接测试。链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回等。
  2. 提交功能的测试。
  3. 多媒体元素是否可以正确加载和显示。
  4. 多语言支持是否能够正确显示选择的语言等。

                      ii.              界面测试可以包括但不限于一下几个方面:

  1. 页面是否风格统一,美观
  2. 页面布局是否合理,重点内容和热点内容是否突出
  3. 控件是否正常使用
  4. 对于必须但为安装的空间,是否提供自动下载并安装的功能
  5. 文字检查

                    iii.              性能测试一般从以下两个方面考虑:

  1. 压力测试
  2. 负载测试
  3. 强度测试

                     iv.              数据库测试要具体决定是否需要开展。数据库一般需要考虑连结性,对数据的存取操作,数据内容的验证等方面。

                       v.              安全性测试:

  1. 基本的登录功能的检查
  2. 是否存在溢出错误,导致系统崩溃或者权限泄露
  3. 相关开发语言的常见安全性问题检查,例如SQL注入等。
  4. 如果需要高级的安全性测试,确定获得专业安全公司的帮助,外包测试,或者获取支持

                     vi.              兼容性测试,根据需求说明的内容,确定支持的平台组合:

  1. 浏览器的兼容性
  2. 操作系统的兼容性
  3. 软件平台的兼容性
  4. 数据库的兼容性

 

d)        开展测试,并记录缺陷。合理的安排调整测试进度,提前获取测试所需的资源,建立管理体系(例如,需求变更、风险、配置、测试文档、缺陷报告、人力资源等内容)。

 

e)         定期评审,对测试进行评估和总结,调整测试的内容。

 

3、  答案如下:

a)         建立测试计划,确定测试标准和测试范围

b)        设计典型场景的测试用例,覆盖常用业务流程和不常用的业务流程等

c)         根据测试用例,开发自动测试脚本和场景:

                        i.              录制测试脚本

  1. 新建一个脚本(Web/HTML协议)
  2. 点击录制按钮,在弹出的对话框的URL中输入”about:blank”。
  3. 在打开的浏览器中进行正常操作流程后,结束录制。
  4. 调试脚本并保存。可能要注意到字符集的关联。

                      ii.              设置测试场景

  1. 针对性能设置测试场景,主要判断在正常情况下,系统的平均事务响应时间是否达标
  2. 针对压力负载设置测试场景,主要判断在长时间处于满负荷或者超出系统承载能力的条件下,系统是否会崩溃。

                    iii.              执行测试,获取测试结果,分析测试结果

 

4、  答案如下:

a)         300个用户在一个客户端上,会占用客户机更多的资源,而影响测试的结果。

b)        线程之间可能发生干扰,而产生一些异常。

c)         300个用户在一个客户端上,需要更大的带宽。

d)        IP地址的问题,可能需要使用IP Spoof来绕过服务器对于单一IP地址最大连接数的限制。

e)         所有用户在一个客户端上,不必考虑分布式管理的问题;而用户分布在不同的客户端上,需要考虑使用控制器来整体调配不同客户机上的用户。同时,还需要给予相应的权限配置和防火墙设置。

 

5、  答案如下:

根据功能的不同,电脑软件可以粗略地分成四个层次:

1、  最贴近电脑硬件的是一些小巧的软件。它们实现一些最基本的功能,通常“固化”在只读存储器芯片中,因此称为固件。

2、  系统软件包括操作系统和编译器软件等。系统软件和硬件一起提供一个“平台”。它们管理和优化电脑硬件资源的使用。

3、  支持软件。包括图形用户界面、软件开发工具、软件评测工具、数据库管理系统、中间件等。

4、  应用软件种类最多,包括办公软件、电子商务软件、通信软件、行业软件,游戏软件等等。

 

posted @ 2022-03-01 15:11  laoluoits  阅读(2596)  评论(0编辑  收藏  举报