软件测试面试问题汇总

01.您认为做好测试用例设计工作的关键是什么?

白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果
黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题

 

02. 测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是最重要的?
  软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。


测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试测试策略和测试方法(最好是能先评审)

 

03. 您认为做好测试计划工作的关键是什么?

  1. 明确测试的目标,增强测试计划的实用性

  编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找出软件潜在的缺陷。因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确

  2.坚持“5W”规则,明确内容与过程

  “5W”规则指的是“What(做什么)”、“Why(为什么做)”、“When(何时做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”规则创建软件测试计划,可以帮助测试团队理解测试的目的(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(When),指出测试的方法和工具(How),给出测试文档和软件的存放位置(Where)。


  3.采用评审和更新机制,保证测试计划满足实际需求

测试计划写作完成后,如果没有经过评审,直接发送给测试团队,测试计划内容的可能不准确或遗漏测试内容,或者软件需求变更引起测试范围的增减,而测试计划的内容没有及时更新,误导测试执行人员。

  4. 分别创建测试计划与测试详细规格、测试用例

  应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试过程的测试用例放到独立创建的测试用例文档或测试用例管理数据库中。测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。

 

04:你找工作时,最重要的考虑因素为何?

  工作的性质和内容是否能让我发挥所长,并不断成长。

05:为什么我们应该录取你?

  您可以由我过去的工作表现所呈现的客观数据,明显地看出我全力以赴的工作态度。

06:请谈谈你个人的最大特色。

  我的坚持度很高,事情没有做到一个令人满意的结果,绝不罢手。


07. 你的测试职业发展是什么?

  测试经验越多,测试能力越高。所以我的职业发展是需要时间累积的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年累积测试经验,按如何做好测试工程师的11,12点要求自己,不断的更新自己改正自己,做好测试任务。

08. 你自认为测试的优势在哪里?

  优势在于我对测试坚定不移的信心和热情,虽然经验还不够,但测试需要的基本技能我有信心在工作中得以发挥。

软件开发网 www.mscto.com


09. 你以前工作时的测试流程是什么?

  公司对测试流程没有规定如何做,但每个测试人员都有自己的一套测试流程。我说下我1年来不断改正(自己总结,吸取同行的方法)后的流程吧。需求评审(有开发人员,产品经理,测试人员,项目经理)->需求确定(出一份确定的需求文档)->开发设计文档(开发人员在开始写代码前就能输出设计文档)->想好测试策略,写出测试用例->发给开发人员和测试经理看看(非正式的评审用例)->接到测试版本->执行测试用例(中间可能会补充用例)->提交bug(有些bug需要开发人员的确定(严重级别的,或突然发现的在测试用例范围之外的,难以重现的),有些可以直接录制进TD)->开发人员修改(可以在测试过程中快速的修改)->回归测试(可能又会发现新问题,再按流程开始跑)。

 

10.测试结束的标准是什么?

  用例全部测试。

  覆盖率达到标准。
缺陷率达到标准。

  其他指标达到质量标准

 

白盒测试和黑盒测试是什么?什么是回归测试?

单元测试、集成测试、系统测试的侧重点是什么?

设计用例的方法、依据有那些?

集成测试通常都有那些方法?

你用过的测试工具的主要功能、性能及特点?

一个缺陷测试报告的组成有哪些?

软件功能测试都有哪些方面需要注意?

软件测试项目从什么时候开始?为什么?

简述一下缺陷的生命周期

软件测试流程是什么?

软件开发的流程是什么?

软件测试的组成人员及各自的任务?

怎样才能做好软件测试?

测试的模块是如何划分?

测试报告的主要内容有哪些?怎么写?

这个问题该怎么回答呀?

 

1、你发现了一个软件缺陷,但开发人员认为不是,就是不改程序,你如何处理?

2、你面试过哪些公司,为什么没有被录用?

 

 

 

 

测试人员在软件开发过程中的任务是什么? (5分) 

  1. 在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录? (6分)
  1. 黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点 (5分)
  1. 根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。 (5分) 
  1. 根据自己的理解什么是测试用例和测试计划,设计一个测试用例应当从哪几方面考虑?(10分) 
  1. 什么是软件质量保证?软件质量保证人员与开发人员的关系如何? (10分)

四、测试设计题

  1. 输入三个整数,判断三个整数能否构成一个三角形,请用黑盒测试方法中的一种设计出相应的测试用例并详细说明所使用的黑盒测试方法。(11分)
  1. 根据一下界面,编写相应的测试用例。(10分)

 

 

测试人员的能力模型应该从以下六个方面来看,其中,首当其冲的是行业及业务知识。软件是一个行业,但软件所服务的不止一个行业,金融、电信、石油等各行各业莫不涵盖其中,因此,对于软件测试人员来说,具备一定的行业及业务知识是非常重要的。

 

 

测试人员的能力模型

 

 

图:测试人员的能力构成模型


就产品知识而言,分为广度和深度。就是不仅要了解模块、产品,还要了解整个解决方案,甚至于有的测试人员对于产品的理解能达到开发的层面上,包括产品的整个架构、后台的脉络等等。如果能达到这个程度,那么在和开发人员进行交流时是非常有话语权的。

基础理论。测试是产品质量的最后一关,过来一个问题,你有没有能力给客户一个结果?这是一个什么问题?如果基础技术不过关,就会很被动。
项目管理。对于初级的测试工程师并不要求,但随着工作年限的提高,必须要有这部分的能力。
最后一点是企业文化,为什么企业文化对测试有影响?每个公司都有每个公司的企业文化,但是测试本身要求每个人都具有责任心。


测试人员的能力维度——测试能力

初级——了解客户的主要业务逻辑;能够按照测试用例进行测试,并发现产品的问题;能编写基本的测试用例,遵循测试流程。

中级——理解客户主要的业务逻辑;能够做为Feature Owner定义Feature的测试策略;对Feature工作有一定的影响力。能结合测试理论和需求进行测试设计;测试执行过程中有一定的Trouble-Shooting能力、一定的探索性测试能力、一定的客户支持能力。
高级——深入理解客户的业务逻辑;能定义复杂Feature或Release的测试策略,可以承担Release Owner;能根据客户业务逻辑和产品知识评审测试用例;精通测试理论;在测试执行过程中有能力进行深入的探索性测试;有能力及时调整测试策略;很强的Trouble-Shooting能力。对Feature或Release有一定的影响力;较强的客户支持能力。
专家级——精通业务逻辑、产品架构及解决方案;探索性测试专家;测试理论专家;行业标准专家;能够为产品经理或客户提出建议、想法,或提供咨询。

  1. 请列出软件测试流程和你所理解的开发流程 
  2. 测试分为哪几种测试,怎么去理解这几种测试?兼容性测试需要注意哪些方面 
  3. 用例设计方法有哪些 
  4. 描述软件测试活动的生命周期,问题级别怎么定义?报告中需要体现哪些内容? 
  5. 怎么整理测试?怎么样才能做好测试? 
  6. Python 如果定义一个函数? 
  7. Python 面试题,请写出一段Python代码实现删除一个list里面的重复元素 
  8. Python如何copy一个文件? 
  9. 查询mysql中abc库中user表中age=25的记录,并统计 

10. url命令,ab命令的使用各自用于什么测试

url命令用于http测试,ab命令用于压力测试

ab命令网络服务器 ab命令是Apache的Web服务器的性能测试工具,它可以测试安装Web服务器每秒种处理的HTTP请求。

 语法 ab(选项)(参数)

选项

-A:指定连接服务器的基本的认证凭据; -c:指定一次向服务器发出请求数; -C:添加cookie; -g:将测试结果输出为“gnuolot”文件; -h:显示帮助信息; -H:为请求追加一个额外的头; -i:使用“head”请求方式; -k:激活HTTP中的“keepAlive”特性; -n:指定测试会话使用的请求数; -p:指定包含数据的文件; -q:不显示进度百分比; -T:使用POST数据时,设置内容类型头; -v:设置详细模式等级; -w:以HTML表格方式打印结果; -x:以表格方式输出时,设置表格的属性; -X:使用指定的代理服务器发送请求; -y:以表格方式输出时,设置表格属性。

参数 主机:被测试主机。

 最近更新的命令 screen speedtest-cli clockdiff ntpdate dnf nethogs hping3 trap let ifstat blkid ipcrm openssl chage dstat cut ssh-copy-id ssh-agent ssh-add hexdump systemctl pfctl jwhois du tar iconv xclip ltrace seq nano
 

1、请根据”V”模型分别概述测试人员在软件的需求定义阶段、设计阶段、编码阶段、系统集成阶段的工作任务及其相应生成的文档?

11. 需求定义阶段:根据项目需求提取测试需求 并形成测试需求文档,根据提取的测试需求和项目计划进行测试计划的拟定,测试计划文档,设计:根据测试需求拟订测试方案并形成测试方案文档;根据测试方案制定测试用例,并形成测试用例文档,编码阶段:执行测试并完善测试用例文档,系统集成阶段:测试总结报告,阶段问题统计报告,测试问题报告


一、基础理论
1、软件测试的结束标准是什么?

测试计划中所有规定的测试内容和回归测试都已经运行完成
或根据上级主管对测试结果的意见,就可以结束本次测试
2、一套完整的测试应该由哪些阶段组成?分别阐述一下各个阶段。

计划阶段、设计阶段、白盒单元、白盒集成、黑盒单元、黑盒集成、系统测试、回归测试、验收测试
一套完整的测试应该由五个阶段组成:
1)测试计划首先,根据用户需求报告中关于功能要求和性能指标的规格说明书,定义相应的测试需求报告,即制订黑盒测试的最高标准。以后所有的测试工作都将围绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试时间及测试资源等。
2)测试设计将测试计划阶段制订的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择适当的测试用例(测试用例选择的好坏将直接影响测试结果的有效性)。
3)测试开发建立可重复使用的自动测试过程。
4)测试执行执行测试开发阶段建立的自动测试过程,并对所发现的缺陷进行跟踪管理,测试执行一般由单元测试、组合测试、集成测试、系统联调及回归测试等步骤组成,测试人员应本着科学负责的态度,一步一个脚印地进行测试。
5)测试评估结合量化的测试覆盖域及缺陷跟踪报告,对于应用软件的质量和开发团队的工作进度及工作效率进行综合评价。
3、什么是缺陷报告?

缺陷报告是描述软件缺陷现象和重现步骤地集合。软件缺陷报告Software Bug Report (SBR)或软件问题报告Software Problem Report (SPR)
4、缺陷报告的作用

缺陷报告是软件测试人员的工作成果之一,体现软件测试的价值
缺陷报告可以把软件存在的缺陷准确的描述出来,便于开发人员修正
缺陷报告可以反映项目/产品当前的质量状态,便于项目整体进度和质量控制
软件测试缺陷报告是软件测试的输出成果之一,可以衡量测试人员的工作能力
5、缺陷报告的要点

标题(Title)
简洁、准确、完整、反映缺陷本质、方便查询
前缀 + 标题正文,标题正文采用结果和动作,或者现象和位置的方式表达
步骤(Steps)
可复现、完整、简洁、准确
按数字编号
实际结果(Actual results)
准确、详细描述软件的现象和特征
期望结果(Expected results)
准确、丰富、有理有据
平台(Platforms)
准确
截图(Screenshots)
准确反映缺陷特征
注释(Notes)
关于缺陷的辅助说明

6、软件测试缺陷报告的“5C”原则

内容准确(Correct):
每个组成部分的描述准确,不会引起误解
步骤简洁(Concise):
只包含必不可少的信息,不包括任何多余的内容
内容清晰(Clear):
每个组成部分的描述清晰,易于理解
结构完整(Complete):
包含复现该缺陷的完整步骤和其他本质信息
风格一致(Consistent):
按照一致的格式书写全部缺陷报告

7、缺陷的二八定理

在分析、设计、实现阶段的复审和测试工作能够发现和避免80%的缺陷,而系统测试又能找出其余缺陷中的80%,最后的4%的缺陷可能只有在用户大范围、长时间使用后才会暴露出来。
8、软件测试的流程

制订测试计划、设计测试用例、实施测试、提交缺陷报告、测试总结 。
9、测试计划的目的是什么?测试计划的内容都包括什么?其中哪些是最重要的?

测试计划的目的:编写软件测试计划的目的是指导测试组成员进行工作和让测试组以外的项目成员了解测试工作的。

测试计划的内容:测试目的和测试项目简介、测试参考文档和测试提交文档、术语和定义、测试策略、确定测试内容、资源、测试进度、测试员的职责与任务分配、项目通过或失败的标准、暂停和重新启动测试的标准、风险和问题等。
最重要的:测试策略、确定测试内容、资源、测试进度、测试员的职责与任务分配、项目通过或失败的标准
10、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。

黑盒测试:把测试对象当成一个黑盒子,测试人员完全不考虑逻辑结构和内部特性,只依据程式的需求说明书来检查程式的功能是否满足它的功能说明。
白盒测试:把测试对象当成一个透明的盒子,允许测试人员利用程序内部逻辑结构及相关信息,设计或选择测试用例,对程式所有逻辑路径进行测试。
单元测试:白盒测试的一种,对软件设计中的单元模块进行测试。
集成测试:在单元测试的基础上,对单元模块之间的连接和组装w进行测试。
系统测试:在所有都考虑的情况下,对系统进行测试
11、Alpha 测试与beta 测试的区别
首先我们来看一下二者的概念:   

alpha测试是在用户组织模拟软件系统的运行环境下的一种验收测试,由用户或第三方测试公司进行的测试,模拟各类用户行为对即将面市的软件产品进行测试,试图发现并修改错误。

    Beta测试是用户公司组织各方面的典型终端用户在日常工作中实际使用beta版本,并要求用户报告异常情况,提出批评意见。 

再次,我们来看一下他们的区别:   

区别:两者的主要区别是测试的场所不同。Alpha测试是指把用户请到开发方的场所来测试,beta测试是指在一个或多个用户的场所进行的测试。

Alpha测试的环境是受开发方控制的,用户的数量相对比较少,时间比较集中。而beta测试的环境是不受开发方控制的,谁也不知道用户如何折磨软件,用户数量相对比较多,时间不集中。一般地,alpha测试先于beta测试执行。通用的软件产品需要较大规模的beta测试,测试周期比较长。如果产品通过了beta测试,那么就可以正式发行了。

测试工程师笔试题

一、计算机知识(30分)

1、 在Linux系统中,一个文件的访问权限是755,其含义是什么?

修改文件权限
首先讲修改文件的所有权,使用 chown 和 chgrp 命令:
chown new_user file or directory:修改文件或目录的所有者。
chgrp new_group file or directory:修改文件或目录的所属组。
这里需要注意的是:普通用户不能将文件或目录的所有权交与他人,只有 root 有这一权限。但是普通用户有权改变文件或目录的所属组。

由于每类用户的权限都是由 rwx 三位组成,因此可以用三个八进制数字表示文件的访问权。一个八进制数字可以用三个二进制数字表示,那么与其对应,权值为 4 的位对应 r,权值为 2 的位对应 w,权值为 1 的位对应 x。对于一类用户,将这三位与其对应的权值相乘求和,就可以得出对该类用户的访问权限。

比如 chmod 764 a.txt,它表示对于文件的所有者,具有对该文件读、写、执行的权限。对于文件所属组的用户,拥有读、写的权限。对于其他用户,只有读权限。

755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。

2、 Linux中,如何从root用户切换到普通用户?

su user1 切换到user1,但切换后的当前目录还是root访问的目录

su – user1 切换到user1,并且当前目录切换到user1的根目录下(/home/user1/)

3、 简述一下C/S模式和B/S模式的区别?

c/s 是客户端/服务器 架构

b/s 是浏览器/服务器 架构

C/S模式有以下特点:

1.C/S模式将应用与服务分离,系统具有稳定性和灵活性

2.C/S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性

3.由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快

4.在C/S模式中,作为客户机的计算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂

B/S模式有以下特点:

1.系统开发、维护、升级方便

每当服务器应用程序升级时,只要在服务器上升级服务应用程序即可,用户计算机上的浏览器软件不需要修改,系统开发和升级维护方便

2.B/S模式具有很强的开放性

在B/S模式下,用户通过通用的浏览器进行访问,系统开放性好

3.B/S模式的结构易于扩展

由于Web的平台无关性,B/S模式的结构可以任意扩展,可以从包含一台服务器和几个用户的小型系统扩展成为拥有成千上万个用户的大型系统

4.用户使用方便

B/S模式的应用软件都是基于Web浏览器的,而Web浏览器的界面是类似的。对于无用户交换功能的页面。用户接触的界面都是一致的,用户使用方便

4、 Windows操作系统中PATH环境变量的作用是什么?

PATH是Windows操作系统环境变量,PATH作用是用户在命令行窗口执行一个命令,则在PATH变量设置的目录下依次寻找该命令或对应的执行文件,若找到,则执行,若没有找到,则命令行窗口返回无效命令。

5、 TCP和UDP有什么区别?

TCP-有连接,所以握手过程会消耗资源,过程为可靠连接,不会丢失数据,适合大数据量交换

TCP(传输控制协议):

1)提供IP环境下的数据可靠传输(一台计算机发出的字节流会无差错的发往网络上的其他计算机,而且计算机A接收数据包的时候,也会向计算机B回发数据包,这也会产生部分通信量),有效流控,全双工操作(数据在两个方向上能同时传递),多路复用服务,是面向连接,端到端的传输;

2)面向连接:正式通信前必须要与对方建立连接。事先为所发送的数据开辟出连接好的通道,然后再进行数据发送,像打电话。

3)TCP支持的应用协议:Telnet(远程登录)、FTP(文件传输协议)、SMTP(简单邮件传输协议)。TCP用于传输数据量大,可靠性要求高的应用。

UDP(用户数据报协议,User Data Protocol)

1)面向非连接的(正式通信前不必与对方建立连接,不管对方状态就直接发送,像短信,QQ),不能提供可靠性、流控、差错恢复功能。UDP用于一次只传送少量数据,可靠性要求低、传输经济等应用。

2) UDP支持的应用协议:NFS(网络文件系统)、SNMP(简单网络管理系统)、DNS(主域名称系统)、TFTP(通用文件传输协议)等。

总结:

TCP:面向连接、传输可靠(保证数据正确性,保证数据顺序)、用于传输大量数据(流模式)、速度慢,建立连接需要开销较多(时间,系统资源)。

UDP:面向非连接、传输不可靠、用于传输少量数据(数据包模式)、速度快。

 

6、 DNS是什么?它是如何工作的?

参考答案:

域名解析服务。用于将域名解析为IP,或反和将IP解析为域名。

客户机可指定DNS服务器来解析,或用本机hosts文件进行解析。

7、 说出4种及以上常用的操作系统及其主要的应用范围(微软的操作系统除外)。 参考答案:

Linux(Red Hat、SUSE、Debian、Trubo Linux):主要用于搭建各类服务器

MAC OS:苹果机的操作系统,用于图像处理

Unix(AIX:IBM服务器的专用操作系统;

Solaris:Sun操作系统;FreeBSD、NetBSD)

8面向对象程序设计有哪些特点?

参考答案:

面向对象程序设计以需求当中的数据作为中心,来进行设计,具有良好的代码重用性。 封装性:也叫数据隐藏,用户无需知道内部工作流程,只要知道接口和操作就可以的,C++中一般用类来实现封装。

继承性: 一种支持重用的思想,在现有的类型派生出新的子类,例如新型电视机在原有型号的电视机上增加若干中功能而得到,新型电视机是原有电视机的派生,继承了原有电视机的属性,并增加了新的功能。

多态性:指在一般类中定义的属性或行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

动态联编:指一个计算机程序自身彼此关联的过程,按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。

9、一条软件缺陷记录都包含哪些内容?

参考答案:

bug编号

bug发现人

bug发现时间

bug状态

bug严重程度

bug所属版本

bug所属模块

bug处理人

bug修改日期

bug简单描述

bug详细描述

bug相关附件

bug初步分析

10、一套完整的测试应该由哪些阶段组成?

参考答案:

测试计划、测试设计与开发、测试实施、测试评审与测试结论

二、测试知识(50分)

1、您以往所从事的软件测试工作中,是否使用了一些工具来进行软件缺陷(Bug)的管理?如果有,请结合该工具描述软件缺陷(Bug)跟踪管理的流程。(10分)

参考答案:

1.拿到新版本

2.进行测试发现BUG后提交SUBMIT(测试)

3.由相应人员置为NEW的状态

4.修改BUG,FIXED(开发)(当然也有可能被判定为不是BUG或者需要讨论决定的)

5.回归测试,修改BUG状态,FIXED VERIFIED或者REOPEN(测试)

6.REOPEN的话开发继续修改,FIXED VERIFIED的话由相应人员CLOSE这个BUG。

2、请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。(10分)

参考答案:

黑盒测试:把测试对象当成一个黑盒子,测试人员完全不考虑逻辑结构和内部特性,只依据程式的需求说明书来检查程式的功能是否满足它的功能说明。

白盒测试:把测试对象当成一个透明的盒子,允许测试人员利用程序内部逻辑结构及相关信息,设计或选择测试用例,对程式所有逻辑路径进行测试。

单元测试:白盒测试的一种,对软件设计中的单元模块进行测试。

集成测试:在单元测试的基础上,对单元模块之间的连接和组装w进行测试。

系统测试:在所有都考虑的情况下,对系统进行测试。

验收测试:第三方进行的确认软件满足需求的测试

3、你所熟悉的测试用例设计方法有哪些?分别以具体的例子说明在实际测试中的应用。(10分)

参考答案:

1.等价类划分

划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类.

2.边界值分析法

边界值分析方法是对等价类划分方法的补充。测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.

使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.

3.错误推测法

基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.

错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产

品测试中曾经发现的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为0的情况. 输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子作为测试用例.

4.因果图方法

前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图(逻辑模型). 因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况.

4、画出软件测试的V模型图。(5分)

 

 

5、软件的安全性应从哪几个方面去测试?(5分)

参考答案:

(1)用户认证机制:如数据证书、智能卡、双重认证、安全电子交易协议

(2)加密机制

(3)安全防护策略:如安全日志、入侵检测、隔离防护、漏洞扫描

(4)数据备份与恢复手段:存储设备、存储优化、存储保护、存储管理

(5)防病毒系统

6、描述软件产生内存泄露的原因以及检查方式。(可以结合一种开发语言进行描述)(5分) 参考答案:

内存泄露的原因,主要是由于开发过程当中申请了计算机资源(例如对象、内存等),但是使用资源完成以后没有及时释放资源导致的。例如在C语言当中使用了malloc申请了内存,但是未使用free来释放内存。

7、简述软件自动化测试工具的原理。(5分)

参考答案:

测试工具的优势在于可部分地替代人工的测试过程,通过测试工具来模拟人的手工操作,这个过程中会记录操作的对象和操作的顺序,然后在回放时按照录制的顺序操作这些对象。 能重复不断地执行,能精确判断数值和字符对象。自动化测试工具把测试用例用自动的方式执行,例如,自动地产生数据,自动地打开应用程序,自动地查找控件, 自动地输入数据,自动地操作控件,自动地收集测试结果,自动地与预期结果进行比较等。

三、数据库(10分)

为管理业务培训信息,建立3个表:

S(S#,SN,SD,SA) S#,SN,SD,SA分别代表学号,学员姓名,所属单位,学员年龄

C(C#,CN) C#,CN分别代表课程编号,课程名称

SC(S#,C#,G) S#,C#,G分别代表学号,所选的课程编号,学习成绩

(1) 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名?

答:select s# ,sn from s where S# in(select S# from c,sc where c.c#=sc.c# and cn=’税收基础’)

(2) 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位? 答:select sn,sd from s,sc where s.s#=sc.s# and sc.c#=’c2’

(3) 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位? 答:select sn,sd from s where s# not in(select s# from sc where c#=’c5’)

(4) 查询选修了课程的学员人数

答:select 学员人数=count(distinct s#) from sc

(5) 查询选修课程超过5门的学员学号和所属单位?

答:select sn,sd from s where s# in(select s# from sc group by s# having count(distinct c#)>5)

四、编程题(10分)

编程输出1/1+1/3+1/5+……+1/99的和。

参考答案:

public class Sum {

public static void main(String[] args) {

float sum = 0.0f;

for(float i=1.0f;i<=99.0f;i=i+2)

{

sum = 1/i + sum;

}

System.out.println(sum);

}

}

附加题

谈谈软件测试技术,以及一个优秀的软件测试人员应该具备的素质。

软件测试题目
一、 判断题 (每题2分,20)
1、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。 (初级) ( × )
2、发现错误多的模块,残留在模块中的错误也多。( √ ) (初级)
3、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。( × )(初级)
4、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。
( √ )(中级)
5、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。( √ )(中级)
6、软件质量管理即QM由QA和QC构成,软件测试属于QC的核心工作内容。(√)(高级)
7、软件测试只能发现错误,但不能保证测试后的软件没有错误。(√)
8、软件就是程序。(X)
9、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。(X)
10、I18N测试是指对产品做出具有国际性的规划,而L10N测试则是指对软件做出符合本地需求更改工作。(√)【高级】
 
二、 选择题 (每题2分 20 )
1、 进行软件质量管理的重要性有:(ABCD)【中级】
A、维护降低成本 B、法律上的要求 C、市场竞争的需要
D、质量标准化的趋势 E、软件工程的需要 F、CMM过程的一部分
G、方便与客户进一步沟通为后期的实施打好基础
2、以测试的形态分测试可以分为:(ABC)【中级】
A、建构性测试 B、系统测试 C、专项测试
D、单元测试 E、组件测试 F、集成测试
3、选出属于黑盒测试方法的选项(ABC)【初级】
A、测试用例覆盖 B、输入覆盖 C、输出覆盖
D、分支覆盖 E、语句覆盖 F、条件覆盖
4、编写测试计划的目的是:(ABC)【中级】
A、使测试工作顺利进行 B、使项目参与人员沟通更舒畅 C、使测试工作更加系统化
D、软件工程以及软件过程的需要 E、软件过程规范化的要求 F、控制软件质量
5、依存关系有4种分别是:(ABCD)【高级】
A、开始-结束 B、开始-开始 C、结束-开始
D、结束-结束 E、开始-实施-结束 F、结束-审核-开始
6、软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:(ABC)【高级】
A、测试 B、跟踪 C、监督
D、制定计划 E、需求审查 F、程序代码审查
7、实施缺陷跟踪的目的是:(ABCD)【中级】
A、软件质量无法控制 B、问题无法量化 C、重复问题接连产生
D、解决问题的知识无法保留 E、确保缺陷得到解决 F、使问题形成完整的闭环处理
8、使用软件测试工具的目的:(ABC)【中级】
A、帮助测试寻找问题 B、协助问题的诊断 C、节省测试时间
D、提高Bug的发现率 E、更好的控制缺陷提高软件质量 F、更好的协助开发人员
9、典型的瀑布模型的四个阶段是:(ABCD)【高级】
A、分析 B、设计 C、编码
D、测试 E、需求调研 F、实施
10、PSP是指个人软件过程 ,是一种可用于( A )、( B )和( C )个人软件工作方式的自我改善过程。【高级】
A、控制 B、管理 C、改进
D、高效 E、充分 F、适宜
 
三、 问答题
1、 测试人员在软件开发过程中的任务是什么?(初级)(5分)
答:1、寻找Bug;
2、避免软件开发过程中的缺陷;
3、衡量软件的品质;
4、关注用户的需求。
总的目标是:确保软件的质量。
2、 在您以往的工作中,一条软件缺陷(或者叫Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷(Bug)记录?(初级)(6分)
答:一条Bug记录最基本应包含:编号、Bug所属模块、Bug描述、Bug级别、发现日期、发现人、修改日期、修改人、修改方法、回归结果等等;要有效的发现Bug需参考需求以及详细设计等前期文档设计出高效的测试用例,然后严格执行测试用例,对发现的问题要充分确认肯定,然后再向外发布如此才能提高提交Bug的质量。
 
3、 界面测试题及设计题。请找出下面界面中所存在的问题并分别列出;用黑盒测试的任何一种方法设计出此登陆窗体的测试用例。(中级)(6分)

 
答:1、窗体的标题栏中为空,没有给出标题。
2、用户名和密码控件的字体不一致并且没有对齐。
3、文本框的大小不一致没有对其。
4、确定和取消按钮控件的大小不一致。
 
4、 黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点!(中级)(5分)
答:黑盒测试的优点有:
1)比较简单,不需要了解程序内部的代码及实现;
2)与软件的内部实现无关;
3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
5)在做软件自动化测试时较为方便。
黑盒测试的缺点有:
1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
2)自动化测试的复用性较低。
白盒测试的优点有:
帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:
1)程序运行会有很多不同的路径,不可能测试所有的运行路径;
2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可能会漏掉一些功能需求;
3)系统庞大时,测试开销会非常大。
5、 根据自己的理解回答什么是软件测试,软件测试分为哪几个阶段。(初级)(5分)
答:软件测试是一个为了寻找软件中的错误而运行软件的过程,一个成功的测试是指找到了迄今为止尚未发现的错误的测试。
软件测试一般分为单元测试、集成测试和系统测试。
6、 根据自己的理解什么是测试用例和测试规程,设计一个测试用例应当从哪几方面考虑?(中级)(10分)
答:狭义的讲,一个测试用例就是测试人员用以测试被测软件的某个特性或特性组合的一组数据。这组数据可能是从用户处得来的实际的一组数据,也可能是测试人员专门设计出来的测试软件某些功能的一组数据。
测试规程就是详细的对测试用例设计方法、测试方法、测试工具、测试环境和测试数据进行描述的文档,还可以包括能把某个或某一组测试用例应用到被测软件上完成某项测试的一系列的操作步骤。
设计测试用例应当从以下几方面考虑:边界值,等价类划分,有效/无效值等。
7、 什么是软件质量保证?软件质量保证人员与开发人员的关系如何?(高级) (10分)
答:软件质量保证就是通过确保软件过程的质量,来保证软件产品的质量。
软件质量保证人员和开发人员之间具有管理上的严格的独立性,两个小组的管理员都不能越权管理另一组,但都可以向更高层的管理者汇报软件开发中的问题
四、 设计题
1).输入三个整数,判断三个整数能否构成一个三角形,请用黑盒测试方法中的一种设计出相应的测试用例并详细说明所使用的黑盒测试方法。(中高级) (15分)

以下是收集的最新的软件测试工程师题目,希望对大家有帮助。 一、判断题    1.软件测试的目的是尽可能多的找出软件的缺陷。(Y) 2.Beta测试是验收测试的一种。(Y) 3.验收测试是由最终用户来实施的。(N) 4.项目立项前测试人员不需要提交任何工件。(Y) 5.单元测试能发现约80%的软件缺陷。(Y)  6.代码评审是检查源代码是否达到模块设计的要求。(N) 7.自底向上集成需要测试员编写驱动程序。(Y)  8.负载测试是验证要检验的系统的能力最高能达到什么程度。(N) 9.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N) 10.代码评审员一般由测试员担任。(N)  11.我们可以人为的使得软件不存在配置问题。(N) 12.集成测试计划在需求分析阶段末提交。(N)   二、选择题    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.评估测试活动   5.软件实施活动的进入准则是:(ABC) A.需求工件已经被基线化   B.详细设计工件已经被基线化   C.构架工件已经被基线化   D.项目阶段成果已经被基线化   6、为保证测试活动的可控性,必须在软件测试过程中进行软件测试配置管理,一般来说,软件测试配置管理中最基本的活动包括_A_____  A.配置项标识、配置项控制、配置状态报告、配置审计 B.配置基线确立、配置项控制、配置报告、配置审计 C.配置项标识、配置项变更、配置审计、配置跟踪  D.配置项标识、配置项控制、配置状态报告、配置跟踪  7、__B____方法根据输出对输入的依赖关系设计测试用例。   A.路径测试    B.等价类     C.因果图    D.边界值  8、在C++语言中,若类C中定义了一个方法int f(int a,int b),那么方法___A___不能与该方法同时存在于类C中  A.int f(int x,int y)         B.int f(float a,int b) C.float f(int x,float y)       D.int f(int x,float y) 9、下列关于软件验收测试的合格通过准则错误的是:__C____  A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求; B. 所有测试项没有残余一级、二级和三级错误;  C. 立项审批表、需求分析文档、设计文档和编码实现不一致; D. 验收测试工件齐全   三、填空题    1.软件验收测试包括:正式验收测试,alpha测试,beta测试。   2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦)   3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。   4.对面向过程的系统采用的集成策略有:自顶向下,自底向上两种。

 

  5.通过画因果图来写测试用例的步骤为:   (1)分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。   (2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系?根据这些关系,画出因果图。  (3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。   (4)把因果图转换成判定表。   (5)把判定表的每一列拿出来作为依据,设计测试用例。    四、简答题    1.区别阶段评审的与同行评审   同行评审目的:发现小规模工作产品的错误,只要是找错误;   阶段评审目的:评审模块阶段作品的正确性可行性及完整性   同行评审人数:3-7人人员必须经过同行评审会议的培训,由SQA指导   阶段评审人数:5人左右评审人必须是专家具有系统评审资格   同行评审内容:内容小一般文档<  40页,代码< 500行   阶段评审内容:内容多,主要看重点   同行评审时间:一小部分工作产品完成   阶段评审时间:通常是设置在关键路径的时间点上!    2.什么是软件测试   为了发现程序中的错误而执行程序的过程    3简述集成测试的过程

 

软件测试题目

  一、判断题 (每题2分,20)

  1、软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。 (初级) ( × )

  2、发现错误多的模块,残留在模块中的错误也多。( √ ) (初级)

  3、测试人员在测试过程中发现一处问题,如果问题影响不大,而自己又可以修改,应立即将此问题正确修改,以加快、提高开发的进程。( × )(初级)

  4、单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒法进行动态测试。

  ( √ )(中级)

  5、功能测试是系统测试的主要内容,检查系统的功能、性能是否与需求规格说明相同。( √ )(中级)

  6、软件质量管理即QM由QA和QC构成,软件测试属于QC的核心工作内容。(√)(高级)

  7、软件测试只能发现错误,但不能保证测试后的软件没有错误。(√)

  8、软件就是程序。(X)

  9、测试只要做到语句覆盖和分支覆盖,就可以发现程序中的所有错误。(X)

  10、I18N测试是指对产品做出具有国际性的规划,而L10N测试则是指对软件做出符合本地需求更改工作。(√)【高级】

  二、选择题 (每题2 20 )

  1、 进行软件质量管理的重要性有:(ABCD)【中级】

  A、维护降低成本 B、法律上的要求 C、市场竞争的需要

  D、质量标准化的趋势 E、软件工程的需要 F、CMM过程的一部分

  G、方便与客户进一步沟通为后期的实施打好基础

  2、以测试的形态分测试可以分为:(ABC)【中级】

  A、建构性测试 B、系统测试 C、专项测试

  D、单元测试 E、组件测试 F、集成测试

  3、选出属于黑盒测试方法的选项(ABC)【初级】

  A、测试用例覆盖 B、输入覆盖 C、输出覆盖

  D、分支覆盖 E、语句覆盖 F、条件覆盖

  4、编写测试计划的目的是:(ABC)【中级】

  A、使测试工作顺利进行 B、使项目参与人员沟通更舒畅 C、使测试工作更加系统化

  D、软件工程以及软件过程的需要 E、软件过程规范化的要求 F、控制软件质量

  5、依存关系有4种分别是:(ABCD)【高级】

  A、开始-结束 B、开始-开始 C、结束-开始

  D、结束-结束 E、开始-实施-结束 F、结束-审核-开始

  6、软件质量管理(QM)应有质量保证(QA)和质量控制(QC)组成,下面的选项属于QC得是:(ABC)【高级】

  A、测试 B、跟踪 C、监督

  D、制定计划 E、需求审查 F、程序代码审查

  7、实施缺陷跟踪的目的是:(ABCD)【中级】

  A、软件质量无法控制 B、问题无法量化 C、重复问题接连产生

  D、解决问题的知识无法保留 E、确保缺陷得到解决 F、使问题形成完整的闭环处理

  8、使用软件测试工具的目的:(ABC)【中级】

  A、帮助测试寻找问题 B、协助问题的诊断 C、节省测试时间

  D、提高Bug的发现率 E、更好的控制缺陷提高软件质量 F、更好的协助开发人员

  9、典型的瀑布模型的四个阶段是:(ABCD)【高级】

  A、分析 B、设计 C、编码

  D、测试 E、需求调研 F、实施

  10、PSP是指个人软件过程 ,是一种可用于( A )、( B )和( C )个人软件工作方式的自我改善过程。【高级】

  A、控制 B、管理 C、改进

  D、高效 E、充分 F、适宜

  三、问答题

  1、 测试人员在软件开发过程中的任务是什么?(初级)(5分)

 

01.您认为做好测试用例设计工作的关键是什么?   白盒测试用例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果 黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。不可能做到完全测试,以最少的用例在合理的时间内发现最多的问题 

 02. 测试计划工作的目的是什么?测试计划工作的内容都包括什么?其中哪些是最重要的?    软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。    测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。所以其中最重要的是测试测试策略和测试方法(最好是能先评审)

  03. 您认为做好测试计划工作的关键是什么?     1. 明确测试的目标,增强测试计划的实用性     编写软件测试计划得重要目的就是使测试过程能够发现更多的软件缺陷,因此软件测试计划的价值取决于它对帮助管理测试项目,并且找出软件潜在的缺陷。因此,软件测试计划中的测试范围必须高度覆盖功能需求,测试方法必须切实可行,测试工具并且具有较高的实用性,便于使用,生成的测试结果直观、准确 

   2.坚持“5W”规则,明确内容与过程     “5W”规则指的是“What(做什么)”、“Why(为什么做)”、“When(何时做)”、“Where(在哪里)”、“How(如何做)”。利用“5W”规则创建软件测试计划,可以帮助测试团队理解测试的目的(Why),明确测试的范围和内容(What),确定测试的开始和结束日期(When),指出测试的方法和工具(How),给出测试文档和软件的存放位置(Where)。

      3.采用评审和更新机制,保证测试计划满足实际需求   测试计划写作完成后,如果没有经过评审,直接发送给测试团队,测试计划内容的可能不准确或遗漏测试内容,或者软件需求变更引起测试范围的增减,而测试计划的内容没有及时更新,误导测试执行人员。

    4. 分别创建测试计划与测试详细规格、测试用例     应把详细的测试技术指标包含到独立创建的测试详细规格文档,把用于指导测试小组执行测试过程的测试用例放到独立创建的测试用例文档或测试用例管理数据库中。测试计划和测试详细规格、测试用例之间是战略和战术的关系,测试计划主要从宏观上规划测试活动的

 

范围、方法和资源配置,而测试详细规格、测试用例是完成测试任务的具体战术。

   04:你找工作时,最重要的考虑因素为何?

    工作的性质和内容是否能让我发挥所长,并不断成长。

  05:为什么我们应该录取你? 

   您可以由我过去的工作表现所呈现的客观数据,明显地看出我全力以赴的工作态度。

   06:请谈谈你个人的最大特色。

    我的坚持度很高,事情没有做到一个令人满意的结果,绝不罢手。

   07. 你的测试职业发展是什么?

     测试经验越多,测试能力越高。所以我的职业发展是需要时间累积的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年累积测试经验,按如何做好测试工程师的11,12点要求自己,不断的更新自己改正自己,做好测试任务。

   08. 你自认为测试的优势在哪里?

     优势在于我对测试坚定不移的信心和热情,虽然经验还不够,但测试需要的基本技能我有信心在工作中得以发挥。

    09. 你以前工作时的测试流程是什么?     公司对测试流程没有规定如何做,但每个测试人员都有自己的一套测试流程。我说下我1年来不断改正(自己总结,吸取同行的方法)后的流程吧。需求评审(有开发人员,产品经理,测试人员,项目经理)->需求确定(出一份确定的需求文档)->开发设计文档(开发人员在开始写代码前就能输出设计文档)->想好测试策略,写出测试用例->发给开发人员和测试经理看看(非正式的评审用例)->接到测试版本->执行测试用例(中间可能会补充用例)->提交bug(有些bug需要开发人员的确定(严重级别的,或突然发现的在测试用例范围之外的,难以重现的),有些可以直接录制进TD)->开发人员修改(可以在测试过程中快速的修改)->回归测试(可能又会发现新问题,再按流程开始跑)。

  10.测试结束的标准是什么?   用例全部测试。   覆盖率达到标准。  缺陷率达到标准。   其他指标达到质量标准

 

  1. 写一个功能点的测试用例,例如:用户页面登陆

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

             采取的安全性测试策略如下:

1、漏洞扫描:使用两种安全扫描工具,扫描部署系统中所存在的所有安全隐患,形成安全漏洞问题列表,并评估风险。

2、安全日志测试:测试日志的完整性、正确性。

3、模拟攻击:使用黑客常用攻击手段(如漏洞上传、暴库、SQL注入、XSS跨网站攻击、旁注攻击等)和工具,对测试环境中的网站进行攻击,攻击完成后,输出模拟攻击问题列表,并评估风险。

 

 

 

测试报告的组成,一般都是有以下:

  1. 项目简介
  2. 测试环境
  3. 测试周期
  4. 工具选择方案
  5. 测试结论
  6. 版本风险
  7. 遗留问题单

 

测试用例的设计

1.

 

 

posted @ 2016-08-10 17:01  MLing  阅读(574)  评论(0编辑  收藏  举报