20道软件测试经典面试题(最新合集)

1.你们自动化测试使用的代码框架是什么样的

我们使用的则试框架以数据驱动则试为思路,在 unittest 与 ddt 基础上进行二次封装,实现了

代码元素分离、代码数据分离、selenium 二次封装,日志、批里执 行用例生成报告、定时执行用例等功能

代码框架分为:用例模块、数据模块、公共方法模块、执行模块、公共配置等

2.你们在写代码时都封装过哪些方法

1封装元素操作相关的方法,比如:点击、输入、获取文本、上传文件等

2封装读取元素信息的方法,读取 ini文件中的元素信息

3封装读取 excel 数据的方法

4.封装打印日志的方法

3.自动化测试一般在什么时候执行

1.自动化测试适合的项目:项目功能比较稳定、迭代周期适中

测试人员具备自动化则试能力

2.自动化测试可以覆盖哪些功能,覆盖率多少:可以覆盖项目中的大多数功能的正常和异常场景,覆盖率可以达到 40%-60%

3一般用于则试开始时的冒烟测试或项目上线前的回归测试

4.自动化测试的优缺点

优点:1可以在较短的时间执行更多则试,提升则试效幸

2可以快速执行 冒烟则武或 回/日则式,节省时间成本

缺点:1相对于手工则试,自动化测试預盖率较低,则试不全面

2.手工则试在刻试一些夏杂场景时,比自动化则试更可靠

5.假如给你一个项目,说一下你要怎么样开展自动化测试

1判断当前项目是否适合做自动化测试:1.项目比较稳定 2.非金融相关项目

2众功能则试用例中挑选出可以被自动化实现的用例

3设计代码框架、封装基础操作方法、封装日志方法、读取 ini配置文件方法等

4将页面元素定位信息收集到ini 配置文件中

5按照功能测试用例中的步骤,编写自动化测试武用例,使用封装好的方法,调用 ini中的

元素信息

6.在excel 中设计则试式数据,封装读取excel 数据的方法,将测试数据加入到用例中

7统一执行用例,并生成报吉,根据脚本执行情况进行调优

6.讲一下用到了 unittest 中的哪些功能

1.testcase 则试用例 :setup0 test_ *( tearpqwn()

2.testsuf 列试套件:用例的集合,将用例添加到套件中可以实现批量执行

3.HTLTestRunner 测试执行器:执行测试套件,并生成测式报吉

4.d¢t 数据驱动测试,可以通过 att 将测试数据传到测试用例中

7.你在做自动化测试时遇到过哪些问题,你是怎么解决的

1.元素定位不到的问题,或者动态元素,解決办法:切换其他定位方式,当常规定位方法

无效时

可以使用模糊定位,分层定位等方式,检查是否存在嵌套网页,是否依赖操作步骤

2.项目中的业务 问题,比如 OA 项目中新建 合 同脚本需要使用订单数据,订单数据需要依

赖产品,产品

依赖联系人数据,需要按照业务逻辑顺序设计脚本

3.断言设计,部分功能无法直接通过页面中的文本来判断是否执行通过,需要查询数据库,或者其他

操作来作为判断依据

功能+接口+性能

一、功能测试

1.测试用例怎么保证覆盖率

2.测试用例包含哪些部分

3.提bug包含哪些部分

4.怎么避免开发不自测的情况

5,系统测试,回归测试,UAT测试,从测试角度需要注意的部分

6.在写测试用例之前,怎么预测一个项目的测试时间

,如果自我预计测试时间为3天,项目组要求2天测完的情况下,应该如何处理

8.bug怎么分级

9.如果在上线前,还有bug未解决,产品叉必须要求上线,应该怎么处理

10.给出登录,注册的测试点

二、接口+性能测试

1.怎么开展接口测试

2.Postman和Jmeter使用有什么区别

3.使用Postman测试接口提供什么

4.Get 和Post的区别

5.Cookie和Session的区别

Http是无状态的协议,对于事务处理没有记忆力,每次客户端和服务端会话完成时,服务端不会存储

任何会话信息

每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,无法分辨上一次的请求,发送者

和这一次的发送者是不是同一个人

那这个状态就要通过cookie或者session去实现

cookie指的是浏览器存储的一种数据,仅仅是浏览器实现的一种数据存储功能,cookie有服务器生成

发送给浏览器,浏览器把cookie 以key-value形式

保存在浏览器中,下一次请求同意服务时,会把cookie发送给服务器

a.安全性,sessionttcookie安全,session是存储在服务端的,cookie是存储在客户端的

b.存儲値的类型不同,cookie只支持存字符串数据,想要没置其他类型的数据,需要將其梺換成字符

串,session可以存任意数据类型

c.有效期不同,cookie可设置为长时间保持,session一般失效时间较短,客户端关闭或者session超时

都会失效

d.存储大小不同,单个cookie存储大小不能超过4k,session可存储数据远高于cookie,但是当访问量

过多会占用过多的服务器资源

6.head头部信息包含哪些内容

7.Jmeter集合点

8.Jmeter怎么保证并发数是准确的按照线程组进行并发测试

9.Jmeter性能测试关注哪些指标

三、数据库

1.左右连接的区别

select *from A表 left join B on

以A表为主表查出A表所有数据,B表不存在的数据显示为空

select *from A表 right join B on

以B表为主表查出B表所有数据,A表不存在的数据显示为空

2.素引,数据库调优

索引是Bttree的数据结构

分为有单列索引,唯一索引和多列索引用于查询时加快速度

3.讲出删除表内数据,不删除表结构的两种方法

delete from 表名,truncate table 表名

truncate不可以回滚

dlelete可以加where条件,truncate不可以

4.int类型判空<>!

5.不去重 union al

7. 条件查询 if(ex1,ex2,ex3)

ex1,条件

true)ex2

false^Je×3

8.多条件

case when ... then when….. then when... then else... end

9.时间年月份取值

date : 2021-12-16

取年份:year(date)

取月份:month(date)

取日:day (date)

10.substring_index (str,delim,count) 分割取值

str=字段名/字符串

delim =分隔符

count=计数

假设 str = www.baidu.comm

substring_index(str,!'1)

结果为 www

substring_index(str,!,2)

结果为 www.baidu

如果count是正数,从1开始,那么从左往右数,第N个分隔符左边的所有内容。

如果count是负数,人-1开始,那么从在往在数,第N个分隔符右边的所有内容

11.substr(函数

substr(str,start,length)

sstart为第几位开始,0,1都为第一位

length为所截取需要的长度

例:substr('234556'3,2) 结果为45

12.窗口函数

13.Replace into tableName values)

replace 首先尝试插入数据,如果表中有此数据(根据主键D或唯一索引判断),先删除此行数据,再重新插入新数据

14.insert into tablename values ()

update tablename set 需修改的字段内容 where 所要修改的那条记录

delete from tablename where 删除某条记录

15.timestampdiff(minute,开始时间,结束时间) 查询两个时间之间的差值

可以进行参数设置,可以精确到天(day),小时(hour),分钟 (minute),秒 (second)

16.修改表结构

举例:请在用户信息表,字段level的后面增加一列最多可保存15个汉字的字段school;并将表中job列名改为profession,同时varchar字段长度变为10;achievement的默认值设置为0。

alter table user_info add school varchar (15) after level;

增加列在某列之后alter table 增加的表格 add 增加列的名称 数据类型 位置(after level 在level 之后)

alter table user_info change job profession varchar (10);

更换列的名称及数据类型alter table user_info change 原列名 修改列名 修改数据类型

alter table user_info modify achievement int (11) default 0;

更改数据类型alter table 表名 修改列名称 数据类型默认值等

四、Linux

1.说!和ls的区别

1是Is-1的别名,所有1s和1功能是相同的

is是显示当前目录下文件,1s-1是显示当前目录下文件详细信息

2.复制Cp,移动mV,删除rm

3.chmod 754 777

操作文件或目录的用户,有了种不同类型:文件所有者、群组用户、其他用户

7=4+2+1 读写运行权限

5=4+1

读和运行权限

4 = 4

只读权限

chmod 754就是对文件所有者含有读写运行权限,群组用户含有读和运行权限,对其他用户只有只读

杈限

chmod 777就是对文件所有者,群组用户,其他用户都含有读写运行权限

4.top是显示进程信息

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值