一、问题预测

1、让简单介绍下自己(这个不用说了每次笔试开场)

笔试官,您好,我叫xxx,xx年专科结业,从事软件测试将近3年的时间。在此期间做过一些项目也积累过一些经验,才能独立地完成软件测试流程的一个工作。近来的一份工作是xx公司,主要参与app测试,负责xxapp,一款类似抖音的短视频app功能测试,负责过的功能模块有拍摄、上传、搜索、推荐引擎等。主要运用边界值,等价类,错误推论等常见黑盒测试方式。我近来有在学习的是一个app的手动化测试,它是使用Pythopn+Appium,结合pytest手动化测试框架,基于PO的思想来实现的。平常我会在各新媒体平台分享我的测试经验,如今总粉丝大约有1w+,以上就是我的一些简单的自我介绍,感谢。

2、让说下自己会的内容

说自己会的就行,不会的千万不要提,例如:我之前主要做过的是功能测试,web手动化测试、app专项测试、接口测试、也有用过Jmeter做过一些性能方面的测试。我对于缺陷管理工具例如禅道,版本控制器git与svn才能熟悉应用。数据库、linux、Fiddler、Jmeter这种应用也比较熟悉。我熟悉软件测试基础理论和测试流程,测试方式等,有app测试、web测试、接口测试经验。熟悉数据库增删改查操作,熟悉使用测试管理工具。

3、看了什么书籍(有问到)

软件测试,软件测试的艺术、软件测试实用教程、Google软件测试之道,最喜欢的书是大话软件测试,这本书能帮助菜鸟深入理解性能测试和手动化测试的意义,也能帮助有多年工作经验正处于苦闷阶段的从业人员排忧解难,能够给这些刚才进入管理岗位的新手们提供指导(尤其是团队建设、绩效管理等)

4、了解过什么技术博客/峰会(有问到)

testerhome、CSDN一些博客(笔试经验:笔试中会问具体什么博客),和公众号(笔试经验:笔试中会问具体什么公众号)

5、是否了解软件测试须要把握什么知识(有问到类似问题)

软件测试基础知识,软件测试的流程,测试用例方式,bug递交,测试报告,测试计划,数据库相关知识,UI手动化,抓包剖析,插口测试(手工+手动化)、测试工具、性能测试等。

6、觉得自己须要补充什么?做了什么行动?

好多公司手动化测试有要求,因为之前的工作主要涉及的不多,我近来有在学习的是一个app的手动化测试,它是使用Pythopn+Appium,结合pytest手动化测试框架,基于PO的思想来实现的测试。所以这方面的知识储备不够,希望之后在工作中能深入学习。

7、为什么做测试,认为自己做测试有什么优势?(有问到)

我感觉我个人的性格比较适宜做测试。我比较悉心耐心,考虑事情比较全面,这样对于我在设计测试用例时很有帮助,但是我还能挺好的与人协调沟通,当我们测试和开发发生沟通上的矛盾时我也能挺好的解决,我平时喜欢刷微博、知乎看热门评论,喜欢考究大众心理,这有助于我站在用户角度设计测试点。

8、知道什么Bug管理工具系统

禅道/bugzila/Easybug等

9、测试用例的基本要素是?

三大核心要素为:标题、步骤、预期结果

1.标题:是对测试用例的描述,标题应当清楚的抒发测试用例的用例

2.步骤:对测试执行过程进行描述

3.预期结果:提供测试执行的预期结果,预期结果通常是依据产品需求得出,假如实际结果和预期结果一致则测试通过;反之失败。

非核心要素:

4.预支条件:执行当前测试用例所须要的前提条件,倘若这种前提条件不满足,则前面的步骤难以进行或难以的到预期结果。

5.测试用例所属的项目(通常使用用例管理工具一次性分配)

6.用例编号(用例管理管理工具会手动分配)

若果没有用用例管理工具

产品编号-ST-系统测试项名-系统测试子项名-XXX

7.重要级别:通常分为高、中、低(每位公司的等级可能有出入)。

高:系统基本核心业务

中:介于高低之间

低:使用频度不高,对系统功能影响不大

8.测试用例输入:用例执行过程中须要加工的外部数据

二、介绍一下自己测试过的项目

1、对项目进行基本介绍

这一部份对项目的基本介绍重点要概括说明项目的基本功能和组成部份。

2、说明自己负责测试的模块

这一部份须要选购自己比较熟悉的业务功能模块,由于后续笔试的问题可能就出自这种模块。

3、针对部份模块展开进行说明

最后选购一些有代表性的模块展开说明,这儿须要注意的是说明的模块或则业务一定要描述的清晰有条理。

介绍的整体项目时间掌握在2分钟内,目的是让笔试官对你之前的项目有一定的了解简单linux指令面试,同时彰显下自己的逻辑和抒发能力。假如想进一步的丰富的话,可以再简单说明下公司的测试流程,及测试中使用到的具体的技术,例如数据库等。

三、技能方面

1、数据库方面常识

关系型数据库:把复杂的数据结构归结为简单的二元关系(即二维表格方式),通过SQL结构化查询句子储存数据

典型产品:

Mysql:互联网领域、大中大型网站,游戏公司,电商平台等等。容积小、速度快、成本低、开放源代码

Oracle:传统大企业、大公司、政府、金融、证券等。安全性、成本高、

非关系型数据库:非关系型数据库也被称为NoSQL数据库,NOSQL的原意是“NotOlnlySQL”。NOSQL为了高性能、高并发而生

其他分类

1)通配符(Key-Value)储存数据库:主要是使用一个哈希表,这个表中有一个特定的键和一个表针指向特定的数据。简单、易布署、高并发

典型:Redis、Memcached

2)列储存(Column-oriented)数据库:应对分布式储存的海量数据。假如我们有一个Person类,我们一般会一起查询她们的姓名和年纪,而不是工资。这些情况下,姓名和年纪都会被装入一个列族中,而工资则在另外一个列族中。

典型:Hbase

3)面向文档数据库:数据储存的最小单位是文档

典型:Mongodb、Hive

Mongodb一个介于关系型数据库和非关系型数据库之间的产品。高性能、易布署、易使用,储存数据十分便捷。

Hive可以拿来进行统计查询,HBase可以拿来进行实时查询

一些增删改查面试题打算

2、linux操作

linux搭建测试环境,例如web系统服务搭建。

linux常用

1)Linux管理文件和目录的

简单linux指令面试_linux面试命令大全_面试题linux常用命令

2)有关c盘空间的

linux面试命令大全_面试题linux常用命令_简单linux指令面试

3)文件备份和压缩命令

在Linux中,常用的文件压缩工具有gzip、bzip2、zip。bzip2是最理想的压缩工具,它提供了最大限度的压缩。zip兼容性好,Windows也支持。

面试题linux常用命令_linux面试命令大全_简单linux指令面试

4)有关死机和查看系统信息的命令

面试题linux常用命令_简单linux指令面试_linux面试命令大全

5)管理使用者和筹建权限的命令

简单linux指令面试_面试题linux常用命令_linux面试命令大全

6)线上查询的命令

linux面试命令大全_简单linux指令面试_面试题linux常用命令

7)文件阅读的命令

面试题linux常用命令_linux面试命令大全_简单linux指令面试

面试题linux常用命令_linux面试命令大全_简单linux指令面试

8)网路操作命令

linux面试命令大全_面试题linux常用命令_简单linux指令面试

9)其他命令

面试题linux常用命令_简单linux指令面试_linux面试命令大全

10)bash常用命令

简单linux指令面试_面试题linux常用命令_linux面试命令大全

3、缺陷方面(有问到)

描述一个你印象最深刻的bug

虽然,笔试官并不关心你描述的这个bug是否真的有价值,或有多坎坷诡异?他只是:

1)了解你平常工作中的测试能力

所以,这就要求的你平常工作中遇见bug时试着自己去定位,定位bug的过程远比你的单纯的执行测试用例有“价值”(自我技能提升的价值),在定位bug的过程中你须要把握和运用更多知识。

另外,建议你平常养成总结的好习惯,发觉的bug,开发解决了,最好问问他缘由以及解决的方式,这样再碰到类似问题时,自己也可以试着定位解决。遇见难解决的bug,也可以把最终的解决过程记录出来。(这不是就有素材了)

2)考察你的抒发能力

我们搞技术的有许多属于傲娇性格,让我们和技术打交道游刃有余。在QQ群里聊天,也诙谐、幽默、机智、博学…因为网路段子看多了嘛,再加上有百度加持。但面对公司大会或则和陌生人交流时,语言抒发能力比较缺乏。

所以,建议你平常可以主动要求去分享一些自己工作中用到或学习的技术。或则多去出席集体活动,强化自己的抒发能力。

3)其实就是想抛一个问题给你,自己好有时间继续看你的简历。

假如,一时想不上去怎样回答,可以如此切入,找一个自己工作中很熟悉的项目,之后,说说你是怎么对这个项目进行测试的,之后,在某一个版本测试中,发觉xxx,开发也xxxx,后端也xxxx,运维也xxxx,最后总算发觉原先是xxx造成的xxxx。

把你工作过程中的测试方式和步骤描述清楚了,这么这个bug有没有价值或是否印象深刻就不这么重要了。

4、用例部份

现场让你设计个用例,例如茶杯、凳子如何测试?

首先说明的是,遇见这样的测试题目,首先应当反诘笔试官,需求是哪些样的,例如是测哪些样的茶杯。

由于设计测试用例的规则应当是依据需求剖析文档设计用例,顾客需求哪些,就测试哪些。

然而在没有需求剖析文档的前提下,来设计测试用例,可以考查一个测试人员的基本功,例如考虑问题是否全面,设计测试用例的方式是否合理等。

通常是按照自己的日常经验和测试的思维来设计测试用例。在设计测试用例时通常从以下几个方面进行剖析:功能测试,性能测试,界面测试,安全性测试,兼容性测试,可用性测试,可靠性测试,本地化/国际化测试。

5、软件测试流程

公司严格规范测试流程和测试文档,首先是参与需求评审,编撰测试计划、测试方案、测试用例,进行测试方案及用例的测试组内部评审,外部评审。

提取部份一级用例递交研制自测,研制自测通过后开开始执行一轮系统测试。

测试过程中发觉并递交、跟踪问题。

问题修补后进行回归测试。

一轮测试完成后对修补包进行着火测试,测试通过则进行二轮测试。

二轮测试完成后会进行需求交叉测试。

完成测试编撰系统测试报告递交初验测试。初验测试通过输出初验测试报告。

6、网络相关

网路合同,如TCP/UDP的区别?

1、TCP面向联接(如打电话要先拔号构建联接);UDP是无联接的,即发送数据之前不须要构建联接

2、TCP提供可靠的服务。也就是说,通过TCP联接传送的数据,无差错,不遗失,不重复,且按序抵达;UDP尽最大努力交付,即不保证可靠交付

3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的

linux面试命令大全_简单linux指令面试_面试题linux常用命令

UDP没有串扰控制,因而网路出现串扰不会使源主机的发送速度增加(对实时应用很有用,如IP电话,实时视频大会等)

4、每一条TCP联接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通讯

5、TCP首部开支20字节;UDP的首部开支小,只有8个字节

6、TCP的逻辑通讯信道是全双工的可靠信道,UDP则是不可靠信道

三次握手与四次挥手

三次握手浅显版:

第一次握手:顾客端要和服务端进行通讯,首先要告知服务端一声,遂发出一个SYN=1的联接恳求讯号,”服务端姐姐,我想给你聊聊话”。

第二次握手:当服务端接收到顾客端的联接恳求,此时要给顾客端一个确认信息,”我晓得了(ACK),我那边早已打算好了,你如今能连吗(SYN)”。

第三次握手:当顾客端收到了服务端的确认联接信息后,要礼貌的告知一下服务端,“好的,俺们开始移动吧(ACK)”。

到此整个构建联接的过程早已结束,接出来就是双方你一句我一句甚至同时交流传递信息的过程了。

四次挥手断掉联接浅显版:

第一次挥手:双方交流的差不多了,此时顾客端也早已结尾了,接出来要断掉通讯联接,所以告诉服务端“我说完了(FIN)”,此时自身产生等待结束联接的状态。

第二次挥手:服务端晓得顾客端早已没话说了,服务端此时还有两句话要给顾客端说“我晓得你说完了(ACK),我再说两句&*…%¥”…

第三次挥手:此时顾客端洗耳恭听继续处于等待结束的状态,服务器端也说完了,自身此时处于等待关掉联接的状态,并对告诉顾客端简单linux指令面试,“我说完了,俺们断了吧(FIN)”。

第四次挥手:顾客端收晓得服务端也说完了,也要告诉服务端一声(ACK),由于联接和断掉要双方都按下关掉操作就能断掉,顾客端同时又为自己定义一个定时器,由于不晓得刚刚说的这句话能不能确切抵达服务端(网路不稳定或则其他诱因造成的网路缘由)。

所以默认时间定为两个通讯的最大时间之和,超出这个时间就默认服务器端早已接收到了自己的确认信息,此时顾客端就关掉自身联接,服务器端一旦接收到顾客端发来的确定通知就立即关掉服务器端的联接。

到此为止双方整个通讯过程就此终结。

这儿要申明一下:断掉链接不一定就是顾客端,谁都可以先发起断掉指令,另外顾客端和服务端是没有固定标准的,谁先发起恳求谁就是顾客端。

三次握手论述:

在第一次消息发送中,A随机选定一个序列号作为自己的初始序号发送给B;

第二次消息B使用ack对A的数据包进行确认,由于早已收到了序列号为x的数据包,打算接收序列号为x+1的包,所以ack=x+1,同时B告诉A自己的初始序列号,就是seq=y;

第三条消息A告诉B收到了B的确认消息并打算构建联接,A自己此条消息的序列号是x+1,所以seq=x+1,而ack=y+1是表示A正打算接收B序列号为y+1的数据包。

四次挥手论述:

因为TCP联接时全双工的,因而,每位方向都必需要单独进行关掉,这一原则是当一方完成数据发送任务后,发送一个FIN来中止这一方向的联接,

收到一个FIN只是意味着这一方向上没有数据流动了,即不会再收到数据了,并且在这个TCP联接上依然才能发送数据,直至这一方向也发送了FIN。

首先进行关掉的一方将执行主动关掉,而另一方则执行被动关掉,上图描述的即是这么。

(1)第一次挥手:Client发送一个FIN,拿来关掉Client到Server的数据传送,Client步入FIN_WAIT_1状态。

(2)第二次挥手:Server收到FIN后linux,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server步入CLOSE_WAIT状态。

(3)第三次挥手:Server发送一个FIN,拿来关掉Server到Client的数据传送,Server步入LAST_ACK状态。

(4)第四次挥手:Client收到FIN后,Client步入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server步入CLOSED状态,完成四次挥手。

7、测试工具

测试工具,无非这几类:

BUG管理工具:禅道、Jira、Bugzilla等。

web端手动化测试工具:selenium、QTP等。

app手动化测试工具:有Appium,MonkeyRunner、Robotium等,

性能测试工具:主要是Loadrunner和Jmeter。

抓包剖析工具:wireshak、fiddler。

数据库工具:mysql/oracle

手动化测试工具(如QTP)

性能测试工具(如loadrunner)

测试管理类(如jira)

安全测试工具

渗透测试工具

8、其他概念问题

Beta测试与Alpha测试有哪些区别

1、Alpha测试

Alpha测试是由用户在开发环境下进行的测试,也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。开发者坐在用户对面,这是在开发者受控的环境下进行的测试。由开发者随时记录下错误情况和使用中的问题。

2、Beta测试

Beta测试是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者一般不在测试现场,这是在开发者难以控制的环境下进行的测试。由用户记录下遇见的所有问题,定期向开发者报告。beta测试是一模拟真实的使用环境进而发觉缺陷的一种测试

3、验收测试

初验测试是以用户为主的测试,软件开发和QA人员也应当出席,测试通常在用户所在地进行,由用户验证软件产品是否满足了所有的需求的一系列的初验测试工作。

仅限于做项目的公司,部门内部测试稳定后,按照协议中需求由分包商进行初验测试。初验测试的目的是为了以发觉”未实现的需求”为目的,以评估”适合使用”为目标,该类测试的不是以发觉缺陷为主要目的。

区别:二者的主要区别是测试的场所不同。

Alpha测试是指把用户请到开发方的场所来测试,beta测试是指在一个或多个用户的场所进行的测试。Alpha测试的环境是受开发方控制的,用户的数目相对比较少,时间比较集中。

而beta测试的环境是不受开发方控制的,谁也不晓得用户怎么摧残软件,用户数目相对比较多,时间不集中。

通常地,alpha测试先于beta测试执行。通用的软件产品须要较大规模的beta测试,测试周期比较长。假如产品通过了beta测试,这么就可以即将发行了。

Alpha测试在系统开发接近完成时对应用系统的测试;测试后依然会有少量的设计变更。这些测试通常由最终用户或其它人员完成,不能由程序或测试员完成。

Beta测试当开发和测试根本完成时所做的测试,最终的错误和问题须要在最终发行前找到。这些测试通常由最终用户或其它人员完成,不能由程序员或测试员完成。

四、你还有哪些想问的吗(必答)

笔试官要给笔试者一个提问的机会,虽然是由于,笔试者有权力了解笔试他的这个部门的基本信息、岗位信息以及他将来可能要使用的技术、负责的业务。

所以可以去问一些关于部门、技术栈等方面的信息了解清楚,因而更好地评估自己是否适宜这个部门,更广泛地去了解部门的信息,并提早学习相关的一些技术栈,如果你将来真的要加入这个公司,这也会是对你特别有帮助的。

笔试官看到你问这些问题时,也会很热心地回答你,他也会对这些求知欲很满意的,虽然你是想了解他所在的部门,所做的事情,想要加入她们,笔试官可以收到你想要传达给他的心意

问你真正想问的,不代表你可以无底线地提问,对笔试官来说,有一些问题是比较禁忌的,我们不妨来看几个背面事例。

不要问薪酬:直接问薪酬是不可取的,如果你出席的是技术笔试,千万别问薪酬,人家会认为你很不专业,而且心思都放到了钱上。若果是HR笔试,你还可以比较隐晦地问一下“贵司的薪水结构是如何样的”,侧面进行了解,千万不要说“我一个能领到多少钱”这样直白的话。

不要问丑事:有些笔试者比较随便,想直接从笔试官脸上获得一手的信息,例如问笔试官“一个月薪水多少钱”、“平时你加班严重吗”、“你认为这家公司如何样”这就似乎一个刚认识的人探听你的家事一样,会让人很讨厌的。

不要问一些和职位无关的事情:有些笔试者可能跳出了笔试职位,直接开始问一些比较脱离实际的问题“未来公司战略是怎样样的”、“我们部门发展现况,将来会怎样怎样”这类假大空的问题也是要避开的。我相信犯这个错误的人应当比较少,虽然俺们程序员都比较实在。

五、简历模板

简历是笔试中最重要的一环,这儿详尽介绍一下简历如何写,能够吸引HR的双眼。

1)个人基本信息

简历开头是个人信息,这个你们都没有异议的吧?并且个人信息应当包含什么内容,每位人理解都不一样,我的建议是:

1、要包含:姓名、性别、学历、工作期限、电话、邮箱地址;

2、不包含:相片(对自己特自信的除外)、毕业中学(特著名的除外)、专业(特自豪的除外);

缘由:俺们是技术岗,一切以技术优先;

中学和专业假如是优势,其实鼓励放上面,甚至可以把中学期间获得的奖项也简略写一写,这个是加分项。倘若不是,请尽早让筛简历的人往下看见自己的优势;

2)个人专业技能

作为技术岗位,你的个人技能是笔试官最为关注的要点之一。而作为软件测试岗位,假如想要理想的工资,技能不可以过分孱弱。

既然是专业技能,记得写一些自己拿的出手的东西,应聘测试工程师,你说自己熟练使用office文档,这有哪些关系?

更惨剧的是,只是熟悉测试用例编撰方式,就是原本应当把握更好的测试技能反倒还不如office用的好了?

这部份我的建议是:

1、不要随意写「精通」,非常是针对操作系统和编程语言,假如你真的「精通」,当我没说;

2、如果急聘需求有明晰技能要求,请自己对照着优先级提供自己对应的技能熟练程度;

3、要突出你的个人特色,你最擅长的一定要写在上面。有时侯HR真的会没耐心看完,注意力最多3行;

4、简历是给他人看的,是要吸引他人注意力的,要提供他人关心的内容,不要一股脑把自己自以为傲但又毫不相干的特长列起来;(2和3的总结)

5、个人能力中写的都是熟悉和把握,甚至还有了解,对于HR来说,把握代表的是会用,熟悉代表着用过,了解就代表着不会。对于自己真正把握的技术,可以大胆写上“精通”,能达到精通的技能一定是深度学习和经验累积的结果。

6、简历中最核心的在于“个人能力”,首先要确保展示自己所把握的技能,但是一定要有所擅长,不然笔试一问三不知就很难堪了。

3)工作经历

工作经历就简单列举一下自己在不同公司的从业经验就可以,通常只须要提供时间区间、公司名、岗位名称即可。

几个注意事项:

1、不要写公司介绍,不关心;

2、不要写工作简介,项目经验上面有;

3、每个公司尽量只占一行,不用在这吸引太多眼珠;

4、如果呆过的公司比较多,建议把位置调整到项目经验的旁边去;

4)项目经验

现今所有的企业不仅比较看重实际工作经验之外也十分重视项目经验。

但是项目经验是简历中篇幅最多,一定要分外用心去写。

写项目以及工作经验的时侯我们可以根据S.T.A.R.法则来写

S情境:项目是在哪些背景下制做的,要在哪些情况下完成。

例如:为了用户可以更好的体验xxxx,公司研制了xxxxlinux vi 命令,本项目主要针对xx用户,由xxx和xxx系统或构架组成,由哪些语言来编撰的;

T任务:在本项目中主要负责哪些,例如:参与该模块测试的班委有xx人,我主要是负责xxx,用它来xxx的,而且负责xx用例以及报告的设计以及评审组织演说等等;

A行动:在这个任务中你做了哪些。例如:使用xx管理用例的编撰,通过xx管理代码和版本,使用xx工具做了哪些,我对该模块的工作使用了xx技术等等;

R结果:通过本次行动得到了哪些结果,例如:编撰了xx个用例,发觉了xx个bug,编撰了xx行代码。借助xx工具做的推论—压测结果,或则测试结果,开发结果等,通过以上得到了项目对我的一些影响。

项目经验几个注意事项:

1、按时间逆序写,就是近来的项目讲到最上面;

2、挑几个典型项目进行重点例举,就是可以彰显自己能力的项目;

3、项目简介要简练,自己提炼下语言,不要从别的地方拷贝粘贴一大段你自己都不看的内容,突出下自己负责模块的重要性即可;

4、前面写的专业技能,要在典型项目的工作职责中有彰显,假如专业技能写自己会好多手动化工具,结果项目里全是手工测试,这显著有问题;

5、工作职责里挑典型的、能彰显自己专业技能的部份重点写,其他和他人做的一样的内容缩写;

5)整体格式

首先,这份简历看起来干净整洁,条理清晰,让人赏心悦目,这是一个加分项。

不要有拷贝粘贴的痕迹,告诉你一个小秘密,倘若是docx文件,系统又开启了香芋绿的话,很容易看下来什么是拷贝粘贴的内容。

其次,个人技能很丰富,完全符合当下市场需求。不管是理论基础,还是功能、性能、自动化,都有彰显下来。任何一家企业所涉及的技能都能用得上。

你要明白,即使一份好看的简历能为你打开一扇扇面试的房门,但最终笔试官考察你的,还是你简历上彰显下来的技能点是不是真材实料,你对知识点把握和理解的程度,你是否能思路清晰的描述出你以前做过的项目等等。

虽然个别知识点,你仅仅是学习过,但并没有实际使用过,但假如你能思路清晰的描述下来,也会很加分。

最后,一定要记住,写简历最重要的是用心,假如对自己的敲门砖都不用心,如何能保证是真的想进门?简历模板到慧乐课堂公众号领。

本文原创地址://q13zd.cn/grjcszdzdhcs.html编辑:刘遄,审核员:暂无