测试开发面试题,助你拿高薪offer

2022-11-11 19:03:07 浏览数 (1)

VOL 431

17

2022-10

今天距2023年76天

ITester软件测试小栈第431次推文

点击上方蓝字“ITester软件测试小栈“关注我,每周一、三、五早上 09:00准时推送,每月不定期赠送技术书籍

微信公众号后台回复“资源”、“测试工具包”领取测试资源,回复“微信交流群”、“内推群”一起进群打怪。

本文3223字,阅读约需9分钟

Hi,大家好,我是CoCo。进入金九银十,很多小伙伴有被动跳槽的打算,所以更新一些测试开发面试题,希望能帮到大家。

请说一下HTTP 状态码

HTTP状态码大致分为5类:

分类

分类描述

1xx

信息,服务器收到请求,需要请求者继续执行操作

2xx

成功,操作被成功接收并处理

3xx

重定向,需要进一步的操作以完成请求

4xx

客户端错误,请求包含语法错误或无法完成请求

5xx

服务器错误,服务器在处理请求的过程中发生了错误

常见的http状态码如下:

状态码

状态码英文名称

中文描述

200

OK

请求成功。一般用于GET与POST请求

201

Created

已创建。成功请求并创建了新的资源

204

No Content

无内容。服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档

301

Moved Permanently

永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替

304

Not Modified

未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源

400

Bad Request

客户端请求的语法错误,服务器无法理解

401

Unauthorized

请求要求用户的身份认证

403

Forbidden

服务器理解请求客户端的请求,但是拒绝执行此请求

404

Not Found

服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面

405

Method Not Allowed

客户端请求中的方法被禁止

500

Internal Server Error

服务器内部错误,无法完成请求

502

Bad Gateway

作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应

504

Gateway Time-out

充当网关或代理的服务器,未及时从远端服务器获取请求

python中“==” 和“ is ”的区别

is 和 == 都可以进行对象比较判断作用的,但对对象比较判断的内容并不相同。

① == 比较的是两个对象的值是否相等,默认会调用对象的 eq 方法,== 是python标准操作符中的比较操作符,用来比较判断两个对象的值是否相等。

② is 比较的是两个对象的 id 是否相等,也就是比较两个对象是否为同一个实例对象,是否指向同一个内存地址。

实例:

sql语句应该考虑哪些安全性?

(1)防止sql注入,对特殊字符进行转义,过滤或者使用预编译的sql语句绑定变量。

(2)最小权限原则,特别是不要用root账户,为不同的类型的动作或者组建使用不同的账户。

(3)当sql运行出错时,不要把数据库返回的错误信息全部显示给用户,以防止泄漏服务器和数据库相关信息。

接口测试质量评估标准是什么?

a) 业务功能覆盖是否完整

b) 业务规则覆盖是否完整

c) 参数验证是否达到要求(边界、业务规则)

d) 接口异常场景覆盖是否完整

e) 接口覆盖率是否达到要求

f) 代码覆盖率是否达到要求

g) 性能指标是否满足要求

h) 安全指标是否满足要求

什么是数据库索引,索引的优缺点?

  1. 什么是索引?

索引是一种数据结构。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B 树。

更通俗的说,索引就相当于目录。为了方便查找书中的内容,通过对内容建立索引形成目录。索引是一个文件,它是要占据物理空间的。

2. 索引的优点

  • 可以大大加快数据的检索速度,这也是创建索引的最主要的原因。
  • 通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。

3. 索引的缺点

  • 时间方面:创建索引和维护索引要耗费时间,具体地,当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,会降低增/改/删的执行效率;
  • 空间方面:索引需要占物理空间。

TCP 和 UDP 区别及使用场景?

1

TCP 和 UDP 区别

1. 连接

TCP 是面向连接的传输层协议,传输数据前先要建立连接。

UDP 是不需要连接,即刻传输数据。

2. 服务对象

TCP 是一对一的两点服务,即一条连接只有两个端点。

UDP 支持一对一、一对多、多对多的交互通信

3. 可靠性

TCP 是可靠交付数据的,数据可以无差错、不丢失、不重复、按需到达。

UDP 是尽最大努力交付,不保证可靠交付数据。

4. 拥塞控制、流量控制

TCP 有拥塞控制和流量控制机制,保证数据传输的安全性。

UDP 则没有,即使网络非常拥堵了,也不会影响 UDP 的发送速率。

5. 首部开销

TCP 首部长度较长,会有一定的开销,首部在没有使用「选项」字段时是 20 个字节,如果使用了「选项」字段则会变长的。

UDP 首部只有 8 个字节,并且是固定不变的,开销较小。

6. 传输方式

TCP 是流式传输,没有边界,但保证顺序和可靠。

UDP 是一个包一个包的发送,是有边界的,但可能会丢包和乱序。

7. 分片不同

TCP 的数据大小如果大于 MSS 大小,则会在传输层进行分片,目标主机收到后,也同样在传输层组装 TCP 数据包,如果中途丢失了一个分片,只需要传输丢失的这个分片。

UDP 的数据大小如果大于 MTU 大小,则会在 IP 层进行分片,目标主机收到后,在 IP 层组装完数据,接着再传给传输层。

2

TCP 和 UDP 使用场景

① 由于 TCP 是面向连接,能保证数据的可靠性交付,因此经常用于:

  • FTP 文件传输;
  • HTTP / HTTPS;

② 由于 UDP 面向无连接,它可以随时发送数据,再加上UDP本身的处理既简单又高效,因此经常用于:

  • 包总量较少的通信,如 DNS 、SNMP 等;
  • 视频、音频等多媒体通信;
  • 广播通信;

请问如何分布式执行selenium自动化用例?

① 利用jenkins分布式Master-slave执行selenium自动化测试

② 利用selenium grid分布式处理

请问如何分布式执行selenium自动化用例?

① 查看实时变化的日志

tail -200f ITester.log (最后200行,某一时刻往前推)

② 关键词搜索日志

cat -n filename |grep "关键字"

③ 进入文件中查找日志

进入vim编辑模式:vi ITester.log

输入“/关键字”,按enter键查找

④ 查看指定时间日志

代码语言:javascript复制
sed -n '/2022-10-10 10:08/,/2022-10-10 10:09/p' ITester.log

以上就是今天的全部内容,希望对大家有所帮助,也希望大家多多留言、点赞、在看、转发四连爱❤️ 支持。 咱们下篇文章见,Bye~

0 人点赞