面试宝典整理了55道面试题,给银四面试车加加速~

产品经理、项目经理、开发leader、设计、前端工程师、后端工程师、测试...

测试在评审过程中主要是站在测试的角色从需求的特性来分析需求是否正确或准确。

(1)完整性:每一项需求都必须将所要实现的功能描述清楚,使设计人员获得设计和实现这些功能所需的必要信息。

(2)正确定:每一项需求都必须准确地陈述其要开发的功能。(只有用户代表才能确定需求的正确性)

(3)可行性:每一项需求都必须是在已知的系统或环境内可以实现的。(建立数学模型,进行仿真)

(4)必要性:每项需求都是编写文档的根源,每项需求都唔那个回溯到具体用户。(用户需求,跟踪矩阵,WishList)

(5)无歧义性:对所有的需求,读者只能有一个明确统一的解释。(形式化的语言、图、表)

(6)可验证性:检查每一项需求是否能通过测试用例或其它验证方法。

3.一个完整的测试过程

1)制定系统测试计划

2)编写系统测试用例

3)执行系统测试用例

4)跟踪管理缺陷

5)总结测试

4.测试结束的标准是什么

2)第二类标准:执行了所有的测试用例,但并没有发现故障,则停止测试。

3)第三类标准:使用特定的测试用例设计方案作为判断测试停止的基础。

4)第四类标准:正面指出停止测试的具体要求,即停止测试的标准可定义为查出某-预订数目的故障。

5.你认为是BUG的,但开发不认同,你觉得怎么沟通才好呢

测试和开发沟通大部分都在讨论bug,测试说是bug但是开发认为这个不是bug,对于测试来说就很头痛了。明明是问题,但是为什么开发不主动修改呢这时候测试应该去需求文档中找出有关这个功能的描述或者去询问产品经理,总之不要正面冲突,要拿出证据来说服开发。

6.近期遇到的比较印象深刻的bug

如果问印象深刻的BUG,很多人会想应该回答一个很难发现的BUG,其实这不一定要找一个很发现的BUG,理想的回答应该是找一个这样的BUG,发现这个BUG改进了研发流程,这是最合理的。

例如:

【问题描述】订单使用余额支付,支付成功之后返回收银台选择支付宝支付,仍可跳转至支付宝页面并支付成功

【复现步骤】

1、在订单确认页点击去支付拉起收银台

2、选择余额支付,并完成支付

3、支付完成之后,返回收银台

3、选择支付宝支付

7、平时做接口测试吗如果做,一般是怎么进行的

我们公司是要求做接口测试的,主要使用的工具是JMeter工具,一般接口测试的步骤如下:

1.分析接口说明书,开发会有一个接口说明书给到我们测试

2.根据接口说明书,设计需要的测试用例,设计用例的方法其实和功能测试有共同之处,例如等价类、边界值、判定表等。

3.使用JMeter工具来创建线程组,一个线程相当于一个用例

4.参测试过程中使用到的数据进行参数化,即数据驱动

5.设置断言对结果进行断言,通常包括JSON断言、文本断言、响应断言等.....

8.为什么开展接口测试

接口测试属于集成测试、测试接入越早,就越能在项目早期发现问题,修复问题成本降低。

接口测试非常快速,UI自动化执行一个测试用例10s左右,接口用例执行一般毫秒级。

9.做接口测试运用过哪些测试工具

(1)Postman

(2)JMeter

(3)SoapUI

(4)Python+requests

(5)Java+HttpClient

(6)Java+OkHttp

10.通用接口用例设计

(1)通过性验证:首先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口文档上的参数,正常传入,是否可以返回正确的结果。

(2)参数组合:现在有一个操作商品的接口,有个字段type,传1的时候代表修改商品,商品id、商品名称、价格有一个是必传的,type传2的时候是删除商品,商品id是必传的,这样就要测参数组合了,type传1的时候,只传商品名称能不能修改成功,id、名称、价格都传的时候能不能修改成功。

(4)异常验证:所谓异常验证,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验。比如说必填的参数不填,输入整数类型的,传入字符串类型,长度是10的,传11,总之就是你说怎么来,我就不怎么来,其实也就这三种,必传非必传、参数类型、入参长度。

11.你们公司的接口测试流程是怎样的

接口测试计划跟功能测试计划是一样的,都是为了确认是否满足需求,确定测试环境及测试计划,为设计测试用例做准备,一般来说,接口测试计划包含概述,测试资源,测试功能及重点,测试策略,测试风险及测试标准

从开发中取得接口文档,了解接口业务,主要包括接口地址、请求方式、入参、出参、返回格式等信息。

12.Python的requests包是干什么的

requests是一个HTTP库,作用是发送HTTP请求,获得响应,往往使用在网络爬虫,接口自动化测试中。

13.在接口测试中关联是什么含义如何使用Postman设置关联

关联就是把上一个接口返回值的部分截取出来,作为下一个接口的参数,能让接口串联运行。

在Postman中设置关联的步骤如下:

(1)通过正则表达式提取的方式或json取值的方式把下一个接口需要的信息从上一个接口截取出来。

(2)使用设置全局变量的代码把取出来的值保存到全局变量里。

(3)在下一个接口中,使用(全局变量)代替要替换的静态值。

14.Get与Post请求的区别

15.web和APP测试有哪些共同点和不同点

共同点:主要是在于功能点的测试是相同的,其它的没有太多相当,一般不管是WEB还是APP的,服务器端都是一样的,所以功能点测试和服务器端的逻辑是一样的。

不同点则主要是在一些APP专项测试方面,主要包括以下几个维度:

web聚焦在浏览器的兼容性;APP聚焦在手机型号的兼容性,操作系统的兼容性,分辨率的兼容性

web则不用安装

APP的安装,升级(相邻,跨版本)

包括APP的响应速度,耗电量,耗流量,手机的cpu,内存web的性能主要包括端页面的性能和服务器的性能

工具模拟弱网

来电,信息等

16.APP测试的内容主要包括哪些,如何开展

业务逻辑正确性测试:依据:产品文档->测试用例编写

1.系统版本:Android:官方版本,定制版本;IOS:官方提供版本

2.分辨率:720*12801080*1920

3.网络情况:2g3g4g5gWi-Fi

2.网络切换和中断恢复:网络切换;中断恢复:

1.升级测试:临近版本升级(1.0->1.1);跨版((0.0....>2.2)

2.安装测试:首次安装;覆盖安装(同版本,不同版本覆盖);卸载后安装

3.卸载测试:首次卸载;卸载安装后在卸载

1.手机资源消耗:cpu,内存

2.流量消耗:图片,数据,视频

3.电量测试

4.崩溃恢复

17.常用的ADB命令

18.app闪退的原因是什么闪退怎么看日志

闪退原因,主要有:

1)、程序缓存过多或者可用内存过低。

2)、安装位置不对,可尝试更改储存位置。

3)、和其它的程序不兼容,或者不兼容操作系统的版本,可卸载重新安装该程序或卸载了一些与系统不兼容的程序;

4)、程序本身问题,有些程序本身存在问题导致闪退

5)、硬件不兼容,比如不兼容某些品牌机器

19.一个版本的测试周期大概是多久

现在互联网项目一般都是3周左右迭代一次,当然不同的公司不一样,有的2周迭代一次,每次迭代要测试多久也是不完全确定的,因为迭代的需求不确定,如果迭代的需求多,那测试周显然会长一些。

对于产品类的项目一般就不太可能3周迭代一次,例如汽车、手机

20.说出10个以上的Linux命令

1、创建文件:touch

2、删除文件:rm(remove)

3、查看文件:cat

4、复制:cp(copy)

5、创建文件夹:mkdir(makedirectory)

6、剪切或者重命名:mv(move)

7、压缩解压缩:tar

8、查看:Islist

9、编辑:vi/vim

10、查看当前路径:pwd(PrintWorkingDirectory)

11、切换用户:suswitchuser

12、创建用户:useradd

13、删除用户:userdel

14、创建用户组:groupadd

15、删除用户组:groupdel

16、查找:find

17、修改权限:chmod(changemode)

18、查看进程:psprocess

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

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

22.linux查看文件用什么命令,查看进程用什么命令

23.linux传输文件的方式

24.linux中常见的监控命令

iostat、vmstat、top、free、sar等

25.以/etc/passwd的前五行内容为例,提取用户名

cat/etc/passwd|head-n5|cut-d:-f1

26.在linux中find和grep的区别

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。grep全称是GlobalRegularExpressionPrint,表示全局正则表达式版本,它的使用权限是所有用户。

linux下的find:

27.什么是数据库

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库

28.写出表的增删改查SQL语法

29.事务的特性

1、原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么均不执行。

2、一致性(Consistency):几个并行执行的事务,其执行结果必须与按某--顺序串行执行的结果相一致。

3、隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。

4、持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障。

30.简述什么是存储过程和触发器

存储过程:是数据库中的一一个对象,Transact-SQL语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。(可以理解为C语言中的函数,有参数、返回值等函数特性)

触发器是一种特殊类型的存储过程,当使用下面的一种或多种数据修改操作在指定表中对数据进行修改时,触发器会生效:UPDATE、INSERT或DELETE。

profifile的语法如下:

SHOWPROFILE[type[,type]...][FORQUERYn][LIMITrow_count[OFFSEToffset]]

32.如何监控mysql连接池

33.mysql常见的查询优化方法

mysql常见查询优化的方法如下:

1.应尽量避免全表扫描,首先应考虑在where及orderby涉及的列上建立索引

2.应尽量避免在where子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描

3.应尽量避免在where子句中对字段进行null值判断,否则将导致引擎放弃使用索引而进行全表扫描

4.应尽量避免在where子句中使用or来连接条件,否则将导致引擎放弃使用索引而进行全表扫描

5.in和notin也要慎用,否则会导致全表扫描

6.应尽量避免在where子句中对字段进行表达式操作,这将导致引擎放弃使用索引而进行全表扫描

7.应尽量避免在where子句中对字段进行函数操作,这将导致引擎放弃使用索引而进行全表扫描

8.不要在where子句中的“=”左边进行函数、算术运算或其他表达式运算,否则系统将可能无法正确使用索引。

9.索引并不是越多越好,索引固然可以提高相应的select的效率,但同时也降低了insert及update的效率,因为insert或update时有可能会重建索引,所以怎样建索引需要慎重考虑,视具体情况而定...

34.什么是B/S架构,什么是C/S架构,两者有可区别在测试侧重点上有什么不同

一般用PHP、JAVA、ASP.net等开发语言;

一般用C/C++/C#等开发语言

1)HTTP协议是一种使用明文数据传输的网络协议,数据不加密,而HTTPS是协议的升级,就是在HTTP的基础上增加了数据加密,HTTPS是建立在TSL/SSL子层上的协议

2)HTTP端口号80,HTTPS端口号443

3)HTTPS协议的服务器必须要有一套数字证书,而HTTP不需要

36.cookie与session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。

2、cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5、可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中。

37.你们项目版本上线(发布)的标准是什么

严格标准:

1、所有的缺陷都被修复并且回归测试通过;

2、所有的需求都被测试覆盖;

3、所有的测试用例都被执行并通过;

4、通过XX缺陷管理方法达到测试退出的条件;

宽松标准:

1、所有的严重级别为一般以上的缺陷都被修复,遗留缺陷加权和小于3;

2、主要的需求都被测试覆盖;

3、所有的H,M级的测试用例都被执行并通过,70%以上的L级用例执行并通过;

38.你会搭建测试环境吗

一般的来说,对于大公司是有专门的人来搭建测试环境和维护环境的,所以回答这个问题可以这样说,我们公司是有专门的人来搭建测试环境的,测试环境不需要我们测试来搭建。

但对于一些小公司来说,则不是这样,小公司测试环境主要是我们测试人的来搭建,当然小公司搭建测试环境也比较简单,主要是一些基础功能的软件进行安装即可,如apache、mysql等。

39.给你一个网站怎么开展测试

2.制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试,界面测试,性能测试,数据库测试,安全性测试,兼容性测试

3.设计测试用例:

(1)功能性测试可以包括,但不限于以下几个方面:链接测试;链接是否正确跳转,是否存在空页面和无效页面,是否有不正确的出错信息返回等;提交功能的测试;多媒体元素是否可以正确加载和显示;多语言支持是否能够正确显示选择的语言等

(2)界面测试可以包括但不限于以下几个方面:页面是否风格统一,美观。页面布局是否合理,重点内容和热点内容是否突出。控件是否正常使用。对于必须但为安装的空间,是否提供自动下载并安装的功能。文字检查。

(3)性能测试-般从以下两个方面考虑:压力测试,负载测试,强度测试

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

(6)兼容性测试,根据需求说明的内容,确定支持的平台组合:浏览器的兼容性;操作系统的兼容性;软件平台的兼容性;数据库的兼容性。

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

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

40.nginx,tomcat,apache都是什么

Nginx(enginex)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。

Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,是开发和调试JSP程序的首选。

41.apache和nginx的区别

Nginx相对Apache的优点:

Apache相对Nginx的优点

42.Selenium有哪些定位元素方法

1.id定位

2.name定位3.class__name

4.tag__name

5.link_text

6.partial_link_text

7.Xpath

8.CSs

当定位一个元素是,如果存在ID属性值时,我们可以优先考虑ID定位,当没有ID,有name属性值和class属性值时也可以采用name和class_name定位。当次能确定该元素的标签为页面唯一时,可以采用tag.name定位,一般来说采用link.text定位的方法比较少。如果ID,name,class_name单个定位不了,可以采用css和xpath定位。

43.加入购物车如何测试

44.拉取商品详情页

45.搜索商品如何测试

46.支付的接口如何测试的

以调用支付宝为例,后台会有一个专门的程序将客户端的信息发送到支付宝的服务器上。

biz_content={

"out_trade_no":"0000010001000010102953",

"total_amount":"0.01",

"subject":"1181418945838252034",

"body":"1181418945838252034",

"product_code":"QUICK_WAP_WAY"

}

47.优惠卷如何测试

48.积分如何测试

49.结算功能如何测试

测试商品金额的计算公式是否正确"订单总金额=商品总金额-折扣-商品折扣+发票税额+配送费用+保价费用+支付费用+包装费用+贺卡应付款金额=已付款金额-使用余额-使用积分-使用红包"

50.TCP三次握手

51.jmeter,一个接口的响应结果如下:

小贷公司标管理/title>

请用正则表达式方法分别获取一下74956和713504275825这两个数值分别赋值给A1和A2

52.接口产生的垃圾数据如何清理

53.简述常用的Bug管理或者用例管理工具,并且描述其中一个工作流程

54.禅道和qc的区别

同为缺陷管理工具。

QC

缺陷查看页面:可以根据自己需要选择要呈现的字段,相对人性化可操作,每个显示的字段都可以进行筛选,使研发人员很快能定位到属于自己的bug,再根据bug状态、优先级进行筛选,使未完结的bug能有序并无遗漏地完成修改;页面还有注释功能,研发人员能写出针对本问题的各种感想,方便完善而又人性化。

THE END
1.十大数据库软件数据库管理系统有哪些十大品牌网CNPP重磅推出2024数据库十大品牌排行榜,数据库品牌排行榜前十名有甲骨文、MYSQL、SQL Server、PostgreSQL、奥星贝斯、TIDB、达梦、MongoDB、GaussDB、GBase。十大数据库品牌由品牌数据部门通过收集整理大数据分析研究得出,旨在告诉消费者数据库软件供应商有哪些https://www.cnpp.cn/china/list_10106.html
2.2024年适合项目管理的软件推荐:9款精选二、初创团队和大企业分别适合哪些项目管理工具 初创团队通常预算有限,人员不多,更注重工具的性价比和易用性。对于这样的团队,Notion和ClickUp是不错的选择。Notion的文档、数据库和任务管理结合在一起,非常适合初创企业的需求。ClickUp也因其免费版本强大的功能而受到小团队的喜爱。大企业则有更复杂的项目需求,通常https://baijiahao.baidu.com/s?id=1818698824742762449&wfr=spider&for=pc
3.你经常使用的数据库管理工具有哪些?免费的数据库管理工具DBNinja DBNinja是一款比较“年轻”的基于Web的数据库管理软件,使用 PHP 开发而成。DBNinja的外观类似于桌面,可连接多个远程和本地的数据库。 上文就是小编为大家整理的你经常使用的数据库管理工具有哪些?免费的数据库管理工具。https://cn.pingcap.com/article/post/6694.html
4.免费开源好用的数据库管理工具有哪些DBeaver是一款免费、开源、跨平台的数据库管理工具。DbGate是一款跨平台的数据库管理工具,支持多种数据库系统,包括MySQL、PostgreSQL、Microsoft SQL Server、SQLite、MongoDB 等。https://www.bandianxiang.com/info/ZluNL1D
5.数据库管理系统有哪些?常用数据库管理软件数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过dbms进行数据库的维护工作。它可使多个应用程序和用户用不同的方法在同时或不http://www.downcc.com/k/shujukuguanli/
6.常见的数据库远程管理工具有哪些HeidiSQL:一款免费的开源数据库管理工具,支持MySQL、MariaDB、Microsoft SQL Server等数据库。 DBeaver:一款跨平台的开源数据库管理工具,支持多种数据库系统,如MySQL、PostgreSQL、Oracle等。 Sequel Pro:一款免费的Mac平台MySQL数据库管理工具,支持多个连接和多个数据库的管理。 https://wenku.csdn.net/answer/f2394284976c42bd9635f0c5cba9856e
7.zyplayerdoc在线文档工具v1.1.6源码下载源码授权:免费软件 源码类别:java源码 应用平台:Java 源码官网:官方网址 更新时间:2023-11-11 网友评分: 360通过腾讯通过金山通过 4.4MB 详情介绍 zyplayer-doc是一款前后端完全开源的在线文档工具,现有API接口文档(Swagger、OpenApi、自建接口)、WIKI文档、数据库文档(数据库表结构查看管理、SQL执行)。 https://www.jb51.net/codes/858994.html
8.最好用的10款MySQLGUI管理工具横向测评因为工作的原因,我有机会仔细用过市面上几乎所有的MySQL管理工具,对各家的数据库管理软件的特性有了全面的了解。 Windows 下的 MySQL 管理软件 我大概用了 20+ 款 MySQL 管理工具,从种挑出 10 款最棒的写了今天的测评。其中 7 款免费或有社区免费版,另外 3 种是付费版。 https://cloud.tencent.com/developer/article/1897766
9.2024年10款最佳免费数据库软件(功能定价)开源地理空间基金定价:虽然我们将介绍一些最好的免费数据库软件, 但有些工具会有付费计划,提供额外的功能、存储空间等。 因此,请确保选择了一个最物有所值的数据库解决方案。 10 个最佳数据库软件程序 以下是当今最好的十种免费数据库软件: 1.ClickUp – 适合数据库管理 https://www.osgeo.cn/post/1fce7
10.十款免费的数据库设计工具软件哪个更好用软件技巧下面给大家推荐几款好用的免费的数据库设计工具软件,有需要的小伙伴们来了解一下。 1.SQL Server 2008 Microsoft SQL Server 2008是一款功能强大的智能数据平台软件,提供了可信、高效率和智能特性。它能够满足企业各种管理数据的需求,并且具有最高级别的安全性、可靠性和伸缩性。安装前需要准备.Net Framework 3.5和Wihttps://xiazai.zol.com.cn/jiqiao/83099.html
11.小编带你走进EBSCOBusinessSourceComplete数据库EBSCO数据库检索到的资料原文是英文或者其他语种的情况下,为了方便母语为非英语的用户,在网页提供了全文在线翻译及英语朗读功能,提供英式口音,美式口音及澳大利亚口音,方便同学们轻松读懂英文学术资料,提升英语听力水平。 02 自动生成引文,一键式轻松导出到参考文献管理工具 https://www.lib.tongji.edu.cn/index.php?classid=11979&newsid=33807&t=show
12.15个热门开源免费的数据挖掘数据分析数据质量管理工具ERD Online 是全球第一个开源、免费在线数据建模、元数据AI平台。集成ChatGPT,提供简单易用的元数据设计、关系图设计、SQL审批查询等功能,辅以版本、导入、导出、数据源、SQL解析、审计、团队协作等功能,方便我们快速、安全的管理数据库中的元数据。 数据,已成为互联网企业非常依赖的新型重要资产。“用数据说话”也越https://www.51cto.com/article/777596.html
13.开源免费数据库管理平台pgAdmin4v8.13x64中文多语免费版pgAdmin 是 PostgreSQL 和衍生关系数据库如 EnterpriseDB 的 EDB Advanced Server 的管理工具。 它可以作为 Web 或桌面应用程序运行。 有关所提供功能的更多信息,请参阅功能和屏幕截图页面。 开源免费数据库管理平台 pgAdmin 中文多语免费版 pgAdmin 特色 http://www.dayanzai.me/?p=4397
14.NavicatPremiumNavicat数据库管理软件免费下载利用我们的专业目标设计器创建、修改和管理所有数据库目标 安装教程 软件下载 Navicat Premium15免费试用版64位/32位 下载 Navicat Premium 15是一款数据库管理工具,Navicat Premium15可以同时将单一程序连接到现在世界上所有版本的主流数据库进行管理和操作,支持的数据库有MySQL、SQLServer、SQLite、Oracle和https://www.yutu.cn/popsoft_374.html
15.oracle数据库管理工具有哪些oracle数据库是应用广泛的数据存储软件,但oracle操作门槛高、难度大。因此出现了众多的oracle数据库管理工具。下面和大家分享一下oracle数据库管理工具有哪些。 一、oracle数据库管理工具有哪些 常见的oracle数据库管理工具主要有: 1、toad for oracle toad for oracle是一款专门的oracle数据库开发管理工具,可以帮助用户提https://toad.mairuan.com/faq/toad-oracleynx.html
16.数字化学习资源及其应用专题培训数字化学习资源与以往传统的学习资源相比较,其最大的优势在于其互动性,无论是通过网络媒介进行的学习方式,还是通过光盘等进行的学习方式,其双向交流的方式得到越来越多学习者的喜爱,一方面学习者可以通过网络上的交流工具,实现与老师或学生之间的交互;另一方面学习者还可以从学习软件的数据库中寻求问题的答案,同时也可http://www.zpxx.wj.czedu.cn/html/article731078.html