面试宝典整理了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.ChatGPT生成测试用例的最佳实践(一)dayuhome的技术博客前面介绍的案例主要展示了ChatGPT在功能、安全和性能测试用例生成方面的应用和成果。通过ChatGPT生成测试用例,测试团队不仅可以提升工作效率,还可以加快测试工作的速度,尽早发现被测系统中的问题。问题及早发现有助于提高软件的质量和用户满意度。 ChatGPT在功能、安全和性能测试用例生成方面的应用为我们提供了一种创新的https://blog.51cto.com/u_13542393/12830699
2.软件测试用例设计的指南:从模版到实操?实际结果:测试执行后实际观察到的系统行为(在测试执行时填写)。 ?优先级:标注该用例的优先级。 测试用例模版示例: 4. 编写测试用例 根据测试用例模版,结合前期需求分析和测试方法,开始逐步编写测试用例。测试步骤应尽可能详细,确保每一步操作都有明确的描述,以便后续测试执行者能清晰理解。 https://www.cmmizw.com/Article_E83E68302EC49A1E8A08B720989F0854.html
3.用例设计规范示例规格化用例尽可能将非功能模块的测试,比如易用性测试、健壮性测试、界面测试等,包含在功能测试中,这样做不但可以减少测试次数,更能提高测试效率。而且把相关联的测试用例一起执行,容易发现更多的缺陷。 采用分层的用例组织结构 将测试用例按照模块/子模块,或者测试项/测试点进行分层,这样可以使用例易读易懂、好扩展、好维护。 https://blog.csdn.net/nhb687095/article/details/144408849
4.在线客服程序怎么做?具备什么功能和特点?建立分析用户咨询和反馈数据的功能,通过分析这些数据,企业能够了解用户的需求和偏好,从而优化产品和服务,提高用户的满意度。并且可以生成各种报表和统计数据,辅助企业进行业务分析和决策。 实现个性化服务功能 在线客服程序要能根据用户的个人信息和历史记录,提供个性化的服务和推荐。例如,当用户登录网站或APP时,客服系统能够https://www.jingxuanxing.com/article/dianping/25223.html
5.考勤系统怎么设计用例如何批量导入测试用例(新版项目)钉钉帮助中心为您提供考勤系统怎么设计用例相关问题的回答,更多考勤系统怎么设计用例问题相关解答可以注册咨询钉钉人工客服。https://www.dingtalk.com/qidian/help-keyword-20622.html
6.聊天功能测试用例总结一聊天功能思维导图:https://zhuanlan.zhihu.com/p/370970801
7.GitHubxiaoxiongmao5/xoj:XOJ在线判题系统xoj(在线判题系统) 在线访问 项目介绍 一个编程题目评测系统。能够根据管理员预设的题目用例对用户提交的代码进行执行和评测。 在系统前端,管理员可以创建、管理题目;用户可以自由搜索题目、阅读题目、编写并提交代码。 在系统后端,根据管理员设定的题目测试用例在代码沙箱中对代码进行编译、运行、判断输出是否正确。(其https://github.com/xiaoxiongmao5/xoj/
8.SMTXOS社区版安装使用中常见问题合集–SmartX回答:SMTX 迁移工具支持将 VMware 虚拟机迁移到 SMTX OS 集群,迁移过程是在线进行,不需要对源虚拟机关机或停止业务;在迁移接近结束前,需要对源虚拟机进行短暂关机以完成对迁移过程发生变化的数据重新同步以及更新驱动等操作,完成后虚拟机就可以正常启动。 问题:医院的系统从物理机迁移到虚拟机,没有软件厂家配合的情https://www.smartx.com/blog/2022/02/smtx-os-faqs/
9.it工程师年终工作总结接下来,我又做了一个比较棘手的项目—xx在线咨询系统。为什么说棘手呢,因为我以前没有做过这方面的项目,而且我问遍了所有认识的朋友,搜遍了网络也没有找到如何解决的方法,之后我翻书籍,接着搜索网络,功夫不负有心人,终于我找到一个聊天室的小例子,但是功能差的太远,于是我把这个示例一点点的研究,从一点也不https://www.yjbys.com/zongjie/nianzhongzongjie/1285462.html
10.系统用例图模板使用模版 CRM系统用例图免费 推荐分类 流程图组织架构图模型图思维导图图表图形分析画布示意图UML图路线图时间轴E-R图鱼骨图关系图概念图韦恩图甘特图基础教育高校与高等教育毕业/考证知识科普项目管理IT/软件教育工作互联网公司经营物流人事/行政生活攻略工作计划财务市场分析政府电子商务数据分析新能源金融医疗PPT https://imiaoban.com/pic/32525.html
11.UML用例图在线绘制工具,免费使用用例图模板!用例图是一种UML图,用于描述开发系统的可能使用场景。简而言之,它描述了一个可能的用户将如何与系统交互。在分析和设计过程中应用用例图作为描述客户需求和未来系统用途的一种方式,通过展示参与者、用例和它们之间关系构成,用于描述系统功能,也经常配合其它图表使用。 https://boardmix.cn/article/umlonlinedrawingtool/
12.企业办公软件SaaS软件(系统)服务企业服务使用 AdsPower,您可以绕过流行网站的安全机制,自动执行常规的机械浏览器任务,并与他人安全地共享您的在线个人资料的访问权限。 我们提供专业的浏览器自动化功能、灵活的IP配置方案、丰富的应用插件支持,为您的账号环境保驾护航! TestRail 4.040条评论 产品特点: 1、基于Web的集中管理 TestRail是基于web下的用例管理系统https://36kr.com/project-22/
13.Architecture)安全系统开发开发当应用发生故障时,如何获取系统日志 如何用hdc命令将本地文件发送至远端设备 如何查看应用是否为系统应用 如何实现crash堆栈抓取、crash回调 应用在CPU的占用情况如何线上分析 如何在线上快速进行heap dump(内存)、应用内存使用量、应用最大内存可用量进行读取和数据分析 如何获取设备的CPU信息 如何获取设备的https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-crypto-architecture-20-V5
14.后台系统架构设计文中我将通过M V C技术架构(我的思维模型)去思考如何打造一款从0到1的后台系统。商务咨询系统,是我负责的一个业务不算特别复杂的系统,以此为例,咱们层层剥离,探寻万事万物的本质。 目录 (1)需求背景 (2)系统价值 (3)系统设计 第一步:用例图 第二步:系统流程图 https://www.woshipm.com/it/2585918.html
15.软考软件设计师知识点精讲之用例图软件设计师(2)不能混淆用例和用例所包含的步骤。例如,“开通课程”功能要经过验证学员信息、检查学员权限、保存开通记录、修改课程选修人数等步骤才能完成,在系统中这些步骤不能作为单独的功能对外提供,它们只是一个用例所包含的事件流,或是用例的子功能。 (3)注意区分业务用例和系统用例。当针对整个业务领域建模时,需要使用业务https://www.educity.cn/rk/1773808.html
16.医疗器械软件第2部分:医疗器械质量体系软件的确认?ISO在线浏览平台:http://www.iso.org/obp/。 4软件确认探讨 4.1定义 “软件确认”这一术语的解释,即有广泛含义,亦有狭义含义,范围可仅是测试,亦可指包括测试在内的广泛活动。本文件使用的术语——“软件确认”——表示建立信心,令人相信软件适合其预期用途,而且性能可靠、值得信赖的一切活动。选定活动,无论是https://www.sdmdcw.com/h-nd-1282.html