软件测试面试题1+真题

Posted 互联网杂货店

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件测试面试题1+真题相关的知识,希望对你有一定的参考价值。

1、等价类和边界值的区别

等价类划分法:将测试过程中的输入、输出、操作等相似内容分组,从每组中挑选具有代表性的内容作为测试用例,划分份有效等价类和无效等价类

边界值分析法:确认输入、输出的边界,然后取刚好等于、大于、小于边界的参数作为测试用例测试;

他俩的定义就是不同,一个属于确认有有效区间,一个属于确认边界,联系就是等价类划分和边界值要一起考虑,边界值分析法属于等价类划分法的补充,任何等价区间都有边界,有边界就有等价区间。

  1. 边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
  2. 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。

2、测试一张A4纸

功能性测试;界面测试;性能测试;安全性测试;兼容性测试

3、目前主要的测试用例设计方法是什么

白盒测试:逻辑覆盖、循环覆盖、基本路径覆盖

逻辑覆盖法,主要包括语句覆盖,判断覆盖,条件覆盖,判断-条件覆盖,路径覆盖

黑盒测试:边界值分析法、等价类划分、错误猜测法、因果图法、状态图法、测试大纲法、随机测试、场景法、判定表法

4、接口测试流程

需求评审,熟悉业务和需求

开发提供接口文档、编写接口测试用例

用例评审、提测后开始测试、提交测试报告

5、系统测试的策略有哪些?简述你熟悉且擅长的其中几种

功能测试、性能测试、安装测试、可用性测试、压力测试
容量测试、安全性测试、健壮性测试、GUI测试、文档测试

界面测试、功能测试、性能测试、安全测试

兼容性测试、用户体验测试

6、表单测试常用测试点有哪些

A. 测试正常提交表单,测试基本功能————优先级最高,合法的输入

B. 测试表单的校验:

a. 测试单字段校验:必填项、长度(文本长度)、格式(日期、邮件等)、内容(内容是否合法,数字等)

b. 测试多字段联合校验(字段间有关联关系)

c. 测试多值的输入字段,重点关注分隔符。比如:入住人有多个

d. 测试表单的入口和出口

  入口:表单才打开是什么样的,哪些字段应该显示什么值

  出口:表单提交后的行为是什么样的,正常、异常提交

e. 测试字段取值方式的合理性

f. 测试必填项的合理性(有的字段没必要是必填的)

g. 测试字段顺序的合理性

h. 测试字段存在的合理性:有没有多余的、有没有缺失的

i. GUI用户界面测试点:测试界面的整体布局是否合理和美观

​ 测试界面的放大和缩小

​ 测试界面的滚动条

​ Tab、enter键

7、为什么从开发转测试

相比开发以后的职业生涯;对软件测试的未来更看好。

其次具有开发经验。对软件测试会有相当大的帮助,前面学了测试基础工具后,后期自动化提升会更快。这样才能更好的胜任软件测试工作。

最重要的是测试不是青春饭,和软件开发相比,如果30岁还没有转到管理,或在技术总监或在高级研发等上层职位。那么会越来越弱势,越来越不吃香,压力会很大(技术和心理都会)。

同时随着时间的发展,越来越证明整个自动化测试到后期的一些基于 API 测试,或者现在很多一些新的测试技术越来越多,而且整个测试地位也越来越高,从早年的并不受重视,或者是一些比较弱的开发去做测试,到现在一个优秀测试工程师可能是比一个开发人员更懂开发代码。

8、数据库左连接和右连接的区别

左连接where只影向右表,右连接where只影响左表

​ 1、右向外连接是将返回右表的所有行,左向外连接的结果集包括LEFT OUTER子句中指定的左表的所有行。
​ 2、右向外连接,如果右表的某行在左表中没有匹配行,则将为左表返回空值;如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表均为空值。

9、python列表和元组的区别

列表是动态数组,它们可变且可以重设长度(改变其内部元素的个数)。
元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。
元组缓存于Python运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。
这些区别结实率两者在设计哲学上的不同:

列表可被用于保存多个互相独立对象的数据集合
元组用于描述一个不会改不安的事务的多个属性

10、python列表切片slice函数

https://www.runoob.com/python/python-func-slice.html

11、python打开文件 with as

with open(‘test.txt’,‘r’) as f :

​ print(f.read())

12、软件测试流程

1、需求分析,需求评审
2、制定测试计划、计划评审
3、编写测试用例、用例评审
4、测试实施阶段、执行测试用例
	 按照设计好的用例、准备好的数据和制定的测试策略,实施进行具体的测试过程
5、测试评估阶段
	测试总结、缺陷分析、过程评估

13、sql语句

select * from table1 where 范围

insert into table1(field1,field2) values(value1,value2)

delete from table1 where 范围

update table1 set field1=value1 where 范围

14、对于测试类型的了解

功能测试,性能测试,稳定性,压力,负载,安全性测试等

15、测试用例的基本格式是怎样的

普遍的都会有:标题,预置条件,输入,执行步骤,预期结果

16、软件测试的测试流程是什么

需求文档
需求评审
编写计划
计划评审
编写用例
用例评审
冒烟测试
第一轮···
提交缺陷报告

17、软件测试流程

​ 1、需求分析,需求评审
​ 2、制定测试计划、计划评审
​ 3、编写测试用例、用例评审
​ 4、测试实施阶段、执行测试用例
​ 按照设计好的用例、准备好的数据和制定的测试策略,实施进行具体的测试过程
​ 5、测试评估阶段
测试总结、缺陷分析、过程评估

18、什么是测试用例

为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。也就是解决要测什么、怎么测和如何衡量的问题

19、用例内容

主要分为三大部分:基本信息、用例主体、执行记录

基本信息:项目名称、功能模块名、用例设计人、测试执行人、功能特性、测试目的、预置条件、参考信息

用例主体:用例编号、测试对象、检查点、预置条件、用例说明、优先级、预期结果
执行记录:测试结果、缺陷编号、备注

20、黑盒测试方法?(写出15种以上)

动态测试、故障转移和恢复测试、配置测试、容量测试、UI测试
数据和数据库完整性测试、易用性测试、功能测试、性能测试、自动化测试
健壮性测试、稳定性测试、场景测试、逻辑测试、随机测试
集成测试、系统测试、验收测试、冒烟测试、兼容性测试
逆向思维测试、本地化测试、接口测试、回归测试、Cookie测试
Alpha测试、Beta测试、安全性和访问控制测试

21、白盒和黑盒区别

白盒测试:是通过程序的源代码进行测试而不使用用户界面。
黑盒测试:是通过使用整个软件或某种软件功能来严格地测试
①测试特点不同
黑盒测试:测试功能
白盒测试:测试程序接口与结构
②测试依据不同
黑盒测试:需求规格说明书
白盒测试:软件程序
③侧重点不同
黑盒测试:关注功能逻辑实现
白盒测试:关注内部代码结构

22、您认为做好测试用例设计工作的关键是什么

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

23、等价类划分

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

24、边界值分析法

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

25、你所熟悉的测试用例设计方案都有哪些

答:有黑盒和白盒两种测试种类,黑盒有等价类划分法,便捷分析法,因果图法和错误猜测法则,首先利用等价类划分法,可以一个或多个结果是ok的测试用例,然后确认多个NG的测试用例,然后利用边界值分析法,可以对结果分别是ok和NG的测试用例进行扩展和补充。

26、测试的方法有哪些?

白盒测试、黑盒测试、灰盒测试、β测试,α测试、可移植性测试、冒烟测试等

27、什么是黑盒测试

黑盒测试又称功能测试、数据驱动测试或者基于规格说明的测试,被测试程序当作黑盒处理,无法了解其内部的构造。比如系统测试一般采用黑盒测试方法

28、测试用例的八大要素是什么?

​ 1、测试用例编号
​ 2、测试项目
​ 3、测试标题
​ 4、重要级别
​ 5、预置条件
​ 6、输入
​ 7、操作步骤
​ 8、预期输出

29、软件测试的主要工作:
1、检视代码、评审开发文档
2、进行测试设计、写作测试文档(测试计划、测试方案、测试用例等)
3、搭建测试环境、执行测试,发现软件缺陷,提交缺陷报告,并确认缺陷最终得到了修正
4、通过测试度量软件的质量

30、如何测试一个纸杯

功能度:用水杯装水看漏不漏;水能不能被喝到
安全性:杯子有没有毒或细菌
可靠性:杯子从不同高度落下的损坏程度
可移植性:杯子在不同的地方、温度等环境下是否都可以正常使用
兼容性:杯子是否能够容纳果汁、白水、酒精、汽油等
易用性:杯子是否烫手、是否有防滑措施、是否方便饮用
用户文档:使用手册是否对杯子的用法、限制、使用条件等有详细描述
疲劳测试:将杯子盛上水(案例一)放24小时检查泄漏时间和情况;盛上汽油(案例二)放24小时检查泄漏时间和情况等
压力测试:用根针并在针上面不断加重量,看压强多大时会穿透

31、黑盒测试的测试用例常见设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。

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

2)边界值分析法
边界值分析方法是对等价类划分方法的补充。测试工作经验告诉我,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.
使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.

3)错误猜测法
基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.
错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为0的情况. 输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子作为测试用例.

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

5)正交表分析法
有时候,可能因为大量的参数的组合而引起测试用例数量上的激增,同时,这些测试用例并没有明显的优先级上的差距,而测试人员又无法完成这么多数量的测试,就可以通过正交表来进行缩减一些用例,从而达到尽量少的用例覆盖尽量大的范围的可能性。

6)场景分析方法
指根据用户场景来模拟用户的操作步骤,这个比较类似因果图,但是可能执行的深度和可行性更好。

7)状态图法
通过输入条件和系统需求说明得到被测系统的所有状态,通过输入条件和状态得出输出条件;通过输入条件、输出条件和状态得出被测系统的测试用例。

8)大纲法
大纲法是一种着眼于需求的方法,为了列出各种测试条件,就将需求转换为大纲的形式。大纲表示为树状结构,在根和每个叶子结点之间存在唯一的路径。大纲中的每条路径定义了一个特定的输入条件集合,用于定义测试用例。树中叶子的数目或大纲中的路径给出了测试所有功能所需测试用例的大致数量。

32、常用UNIX命令(Linux的常用命令)(至少10个);(Unix)

ls pwd mkdir rmdir rm

cp mv cd ps ping

tail more echo adduser

passwd logout exit,参见Linux的教材。

33、系统测试的策略、15个

1、功能测试 2、性能测试 3、压力测试 4、负载测试 5、易用性测试 6、安装测试 7、界面测试 8、配置测试 9、文档测试 10、兼容性测试 11、安全性测试 12、恢复测试

功能测试,性能测试,可靠性测试,负载测试,易用性测试,

强度测试,安全测试,配置测试,安装测试,卸载测试,

文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,

分布测试,可用性测试,

34、回归测试

(regression testing): 回归测试有两类:用例回归和错误回归;用例回归是过一段时间以后再回头对以前使用过的用例在重新进行测试,看看会重新发现问题。错误回归,就是在新版本中,对以前版本中出现并修复的缺陷进行再次验证,并以缺陷为核心,对相关修改的部分进行测试的方法

35、黑盒测试用例设计方法

等价类划分、边界值分析、错误猜测、因果图、状态图、测试大纲、场景法、正交策略表。

36、你所了解的的软件测试类型都有哪些,简单介绍一下

按测试策略分类:1、静态与动态测试 2、黑盒与白盒测试 3、手工和自动测试 4、冒烟测试 5、回归测试;
按测试阶段分类:单元测试、集成测试、系统测试;
其他常见测试方法:1、功能测试 2、性能测试 3、压力测试 4、负载测试 5、易用性测试 6、安装测试 7、界面测试 8、配置测试 9、文档测试 10、兼容性测试 11、安全性测试 12、恢复测试

37、通过画因果图来写测试用例的步骤为:

(1)找出所有输入条件和输出条件,并编号 。
(2)分析输入条件之间的关系,是互斥 还是可以同时满足。
(3)画出输入条件的排列组合情况。
(4)编写测试用例。

38、基于WEB信息管理系统测试时应考虑的因素有哪些?

1)功能测试
链接测试
表单测试
Cookies测试
设计语言测试
数据库测试
2)性能测试
连接速度测试
负载测试
压力测试
3)可用性测试
导航测试
图形测试
内容测试
整体界面测试
4)客户端兼容性测试
平台测试
浏览器测试
5)安全性测试

以上是关于软件测试面试题1+真题的主要内容,如果未能解决你的问题,请参考以下文章

从阿里系2021年应聘中提炼出来的测试开发面试真题

Java工程师面试题,二级java刷题软件

java位运算符的计算题,面试真题解析

5月最新软件测试大厂面试真题,分享给大家

5月最新软件测试大厂面试真题,分享给大家

5月最新软件测试大厂面试真题,分享给大家