软件测试面试题集锦(问题+回答)

您好,我叫Li,毕业于双一流**大学软件工程专业。

在大学期间通过四级,获得计算机C语言二级证书、科技立项奖(词频统计)、国家励志奖学金、优秀学生奖学金、优秀团干部、新生奖学金等。在校主修的课程有C、Java、数据结构、Linux操作系统、网络操作系统、服务器配置与管理、虚拟化与云计算等,成绩在前10%。论文(政务信息咨询系统)。在校期间积极参加多种社团活动,并担任负责人,比如图书馆馆员负责人,网络社团社长等。所以有一定的组织沟通能力。

有两年左右的工作经历,都是担任测试工程师一职。进行的是全方面全功能的测试。包括蓝牙配网、云安全、小程序、APP、web、固件、驱动、Windows、Linux、mac、谷歌的兼容性测试,系统、性能等。进行版本测试quicktest,fullcycle、重点功能点、全功能测试等。一个项目中,由我提交的有效问题都占三分之一以上。工作期间获得最佳新人奖、多次一周之星等。有较强自学能力和适应能力,善于总结复盘,有较好的团体意识,性格踏实稳重。我的基本情况大概就是这样,谢谢您的聆听。

您好,我是xxx。我毕业于xx大学xxx专业。在校期间通过自学获得C语言计算机二级证书、四六级证书。在校必修过的课程有C、Java、数据结构、Linux操作系统、网络操作系统、服务器配置与管理、虚拟化与云计算等,成绩很好。并且在校期间积极参加多种社团活动,后担任社团的骨干人员。我认为我的自学能力较强,善于总结复盘,有较好的团体意识,性格踏实稳重。我的介绍结束。

你好,我叫xx,来自xx,毕业于xx。目前有两年的功能测试经验。最近的一份工作是xx公司,主要参与app系统测试,负责xxapp,一款类似抖音的短视频app功能测试,负责过的功能模块有拍摄、上传、搜索、推荐引擎等。主要运用边界值,等价类,错误推测等常见黑盒测试方法。

我是最近才开始陆续参加面试,现在也有一些公司进展到最后环节了,但是Offer暂时都还在洽谈的过程中,还没有具体确定。

公司对于这个岗位的期待是什么样子的?

实习期和转正后的薪资?

试用期我们一般几个月?

您选拔员工的标准是什么,除了技术外。

如果我有幸入职,对于我这个岗位,您对我职业规划的建议是什么呢?

我们公司是几点上班?正常大部门部门作息制度都是五天八小时吗?工作时长。

我如果入职,是跟我们公司直接签合同吗?

咱们公司是做哪方面的测试?哪方面的项目。

在大学参加了很多社团,我们学校图书馆是分为老师馆员和学生馆员的。我做的是学生馆员负责人,是学生和老师一个沟通的桥梁,然后主要负责的是对新一届的学生馆员的筛选,培训,排班,安排活动等一些事情。

有部分就是因为感兴趣然后去参加的,有些是通过学习然后成为重要的一部分。比如团总支通过自己学习公众号的排版编辑等一些内容,后面就会负责每个月其中部分的发布。比如在校图书馆掌握图书编号上架出借归还这些,之后竞选成为负责人后,对新的馆员进行一些培训管理,也会经常组织一些活动,增加团队精神等。

现在计划工作,夯实项目经验,提高专业实践的能力在考虑别的。

我认为积累实际工作经验更有意义。想先适应社会,觉得工作中学到的不比考研中少。没有这个方面的打算,没有这个方面的打算,更想投入工作中。

虽然,考研未果,没能让我在专业水平上有直接提升的机会,但这个准备考研的过程,却让我将大学四年的学习做了串联与梳理,让自己的心态得到了锻炼、使自己的专注力、抗压能力、韧性得到了大大的提升。我相信,这些宝贵的心理财富,会让我在未来职场中的适应与成长更加快速。

面对新的知识时整体的学习计划和思路:

1、主动了解不知道的知识与工具

通过网络检索,或者访问一些学术网站、技术论坛等查找资料,在查找资料的同时收藏好的网站及文档,为后续知识学习做积累。可以向身边的人进行请教。找出问题后,认识和分析这些问题,弄清解决的办法在哪里。先了解知识的背景原理,之后进行系统化的学习,同时了解相仿的知识并权衡它们的利弊。

2、把学习知识的过程变得体系化、把每一个任务当作一次学习机会、在解决问题中要勤反思勤总结、要把学到的知识转化成自己的

职业规划:(后期学习规划,或者想通过实习掌握什么技能。)

对这个行业有更多的了解。因为我刚刚毕业,对社会工作环境还不了解,所以还没制定详细的方案。我对于xx工作非常有兴趣,这是一个可以将兴趣与我的工作结合的工作,但我知道,我需要在这个行业里不断地学习和锻炼,扩充自己的知识面,提升自己的能力,让这份工作变得更有意义。

很多公司对性能测试和自动化测试工具有要求,由于之前的工作主要涉及的是功能测试,所以这方面的知识储备不够。不过最近我在学习这方面的知识,希望以后在工作中能深入学习。

测试的发展前景好,具有挑战性,对测试的未来很看好,善于发现问题。对测试特别感兴趣,喜欢测试。测试岗位空缺更大一点。职业寿命长。

1、角度不同。开发想的是怎么去实现这个功能。而测试则需要考虑这个功能实现了什么,有什么使用场景,设计得是不是合理。因此,注定开发会更容易陷入细节,而测试更容易跳出细节在更高的层次上进行分析。

2.开发是创造,测试是破坏。测试要做的就是怎么去攻破这个软件,找出它的问题。是否有种破坏的快感?

一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。

(1)按测试方法分类:白盒测试、黑盒测试

(2)按测试阶段分类:单元测试、集成测试、确认测试、系统测试、验收测试

(3)按测试类型分类:功能测试、界面测试、性能测试(负载测试、强度测试)、容量测试、接口,自动化,安全,数据库、压力测试、安全测试、兼容性测试、安装测试、文档测试、易用性测试、边界测试、健壮性测试、本地化测试、无障碍测试、回归测试、冒烟测试、Monkey测试、A/B测试

(4)按测试模式分类:瀑布模型、敏捷测试、基于脚本的测试、基于风险的测试、探索式测试

等价类:(无效等价类、有效等价类)、

边界值:(最小值、略高于最小值正常值、略低于最大值、最大值)

错误猜测法、场景值、因果图、判定表、路径覆盖法、

例:等价类发送红包时:

发送成功:用户输入符合要求的金额,发送成功

发送失败:用户什么都不输入,不能发送成功

用户输入超出范围的值,不能发送成功

用户输入非数字的值,不能发送成功

边界值:学生信息系统中有一个“考试成绩”的输入项,成绩的取值范围是0~100之间的整数,考试成绩及格的分数线是60,优秀的分数线是80。那么这个例子中的边界值数据是哪些呢:选取的边界值数据应该包括:-1,0,1,59,60,61,79,80,81,99,100,101。

首先是需求分析阶段:需要提取功能点、编写需求分析说明书。

然后进入测试设计阶段做一个测试计划和方案,比如针对每个测试内容如何展开测试、采用什么测试工具,再确定哪些内容先测、哪些后测、开始和结束的测试标准分别是什么。然后具体写出测试用例。

接着进入测试执行阶段。对预期结果和实际结果做对比后提交BUG最后可以做一下回归测试进行测试总结。

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

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

测试过程中发现并提交、跟踪问题。

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

一轮测试完成后对修复包进行冒烟测试,测试通过则进行二轮测试。

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

完成测试编写系统测试报告提交验收测试。验收测试通过输出验收测试报告。

着眼于程序外部结构,不考虑内部逻辑结构,针对软件界面和软件功能进行测试。主要是测试软件的功能性需求

划分等价类、边界值分析法、错误推测法、因果图法、判定表组成法、正交试验设计、场景法

自动化测试工具(如QTP)

性能测试工具(如loadrunner)

测试管理类(如jira)

安全测试工具

渗透测试工具

版本号,功能模块,优先级别,前置条件,步骤,预期结果,实际结果等。

在设计测试用例时一般从以下几个方面进行分析:功能测试,性能测试,界面测试,安全性测试,兼容性测试,可用性测试,可靠性测试,本地化/国际化测试。

1、Alpha测试

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

2、beta测试

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

3、验收测试

验收测试是以用户为主的测试,软件开发和QA人员也应该参加,测试一般在用户所在地进行,由用户验证软件产品是否满足了所有的需求的一系列的验收测试工作。

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

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

端到端的测试:也称为链测试。

它从头到尾验证整个软件及其与外部接口的集成。端到端测试的目的是测试整个软件的依赖性、数据完整性以及与其他系统、接口和数据库等的通信,以模拟完整的生产场景。可以验证完整的系统流程,并通过检测问题和增加子系统的测试覆盖率来提高信心。现代软件系统是复杂的,与多个子系统相互连接,这些子系统可能与当前系统不同。任何一个子系统的故障都可能导致整个系统的崩溃,而端到端测试可以避免这种风险。

软件自身的特点团队设计和实现问题管理问题

v模型是软件测试在软件开发之后,发现错误或缺陷比较迟,修改成本高

W模型是软件开发和软件测试同步进行的,发现错误或缺陷相对比较早,修改成本较低

黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。需要验证软件外部功能是否符合用户实际需求。

白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。可以设计测试用例尽可能覆盖程序中的分支语句,分析程序内部结构。通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。

测试的对象不同,集成测试的测试对象是软件本身,系统测试的测试对象是软件及其运行环境组成的一整个系统。

e测试的依据不同,集成测试的依据是概要设计,系统测试的依据是软件规格说明,

测斌的方法不同,集成测试采用的是白盒十黑盒测试,系统测试完全采用的是薰盒测试。

测试的侧重点不同,集成测试的侧重点是各个单元模块的接口及模块集成后所实现的功能,系统测试的主要内容是功能测试、性能测试、安全性测试等

测试人员不同,集成测试是由开发人员或开发人员和测试人员共同完成的。系统测试是由专门的测试人员完成的。

测试是发现错误的过程,调试是发现错误之后修正错误的过程。从职责上进,测试只需要发现错误,不需要修正错误,而调试的职责就是修正错误。

软件评审是除开发人员之外的人员或小东对需求、代码进行评审的正式评价方式。其目的是发现软件中存在的缺陷,找出违背执行标准的情况或其他问题,注意评审活动有软件项目可行性评审、需求评审.设计评审.代码评审,测试评审。

编号、BUG的名称、BUG的优先级、BUG的严重级别、BUG的复现步骤(预期结果、实际结果)、附件(截图\日志\视频、目的是为BUG佐证)

bug编号;bug严重级别,优先级;bug产生的模块;首先要有bug摘要,阐述bug大体的内容;bug对应的版本;bug详细现象描述,包括一些截图、录像…等等;bug出现时的测试环境,产生的条件即对应操作步骤;

唯一性。要能判断出是哪一条代码错误引起的。

可重现。提供这个bug的精确步骤,使开发人员容易看懂。

一致性。bug描述及所有信息要前后一致,不可有歧义。

完整性。最好能抓图,一目了然;测试环境和特定条件一定要描述清楚,

简洁性。通过使用关键词,可以使软件缺陷的标题描述短小简练,又能准确解释产生缺陷的现象。

客观性。软件缺陷描述不要带有个人观点,不要对开发人员进行评价,软件缺陷报告是针对产品的。

对于不能重现的bug:

1、保留信息。遇到问题,最好抓图,搜集错误日志,保留测试现场环境,一旦发现此问题不可重现,这些数据和信息将很重要。

2、提高意识。很多人在遇到这类问题时,往往觉得后来操作不可重现了,因此就忽视了。这样往往会把此类bug遗留到产品发布后。欠的帐总要还得。

3、自我分析。对于自己分析这类问题,其实对自己的提高是最大的。分析思路:环境问题和操作顺序。

4、寻求帮助。如果研发可以帮忙,并且研发是负责任的话,只有信息全,研发分析往往是最快的途径。如果研发忙或者不乐意做,也是不可厚非的。但就要寻求组内能力强的人员或者组内讨论分析,集中大家的力量往往可以事半功倍。

在做上传视频的测试时,发现华为荣耀V10上传手机自带相机专业模式录制的视频会闪退。而ios上传同个视频提示合成失败。

我将手机自带相机录制的专业模式和普通模式录制的同样时长的视频发到电脑上,用格式工厂软件查看视频的不同之处,之后发现视频编码是不同的。

(因为在公司没有查日志权限,所以其实应该先查日志)

改:update表名set列名1=新数据1,列名2=新数据2列名3=新数据3where查询条件

查:select*frombook;

关联查询:

一、外连接

1.左连接leftjoin或leftouterjoin

SQL语句:select*fromstudentleftjoinscoreonstudent.Num=score.Stu_id;

2.右连接rightjoin或rightouterjoin

SQL语句:select*fromstudentrightjoinscoreonstudent.Num=score.Stu_id;

3.完全外连接fulljoin或fullouterjoin

SQL语句:select*fromstudentfulljoinscoreonstudent.Num=score.Stu_id;

二、内连接

join或innerjoin

SQL语句:select*fromstudentinnerjoinscoreonstudent.Num=score.Stu_id;

此时的语句就相当于:select*fromstudent,scorewherestudent.ID=course.ID;

三、交叉连接

crossjoin,没有where指定查询条件的子句的交叉联接将产生两表的笛卡尔积。

SQL语句:select*fromstudentcrossjoinscore;

建表:

查看ls作用:列出目录内容格式:ls[选项][目录名]

ls命令选项

-a列出目录下的所有文件,包含.开头的隐藏文件-l列出文件的详细信息-i查看文件的iNode号(iNode会指向文件块所在的位置)-h以容易读取的方式显示文件大小-d仅列出目录本身,而不显示目录中的文件

别名alias

创建目录mkdir、删除文件rmdir、创建文件touch、删除文件或目录rm、

复制文件或目录(可以对目标文件或目录重命名)cp

查看文件内容cattacmorelessheadtail

1、继承Thread类,重写run方法

2、实现Runnable接口,重写run方法。【可以避免由于Java的单继承特性而带来的局限。适合多个线程去处理同一资源的情况】

3、实现Callable接口,重写call方法。【有返回值,允许抛出异常】

THE END
1.2024版软件测试最新系统教程从基础入门开始学习测试工程师速成在2024最新版的软件测试教程中,学习目标被定义为掌握软件测试的基本概念、测试类型、测试用例设计、测试管理工具以及性能和GUI测试等关键领域。此外,还包括了对白盒测试、UI自动化、接口测试等高级主题的深入理解。 以下详细解析每个核心学习目标: 1. 软件测试基本概念 https://www.94cto.com/search/content/id/127842
2.(完整版)软件测试经验分享经管文库(原现金交易(完整版)软件测试经验分享 https://bbs.pinggu.org/thread-13277344-1-1.html
3.一天搞定软件测试基础!——包含Web测试App测试以下是2024新版黑马程序员软件测试零基础入门到精通全套视频教程的所有笔记! 有一些缺点,就是我是在7月份的时候进行该课程学习的,所以网课老师准备的一些网盘资源都已经失去连接了,所以我无法在我的电脑里进行测试,文章中涉及到App软件测试步骤的图片也是在老师网课上截取下来的,所以会看到图片和网课的一模一样。不https://blog.csdn.net/qq_65034569/article/details/140330799
4.软件测试工作总结15篇总结是对过去一定时期的工作、学习或思想情况进行回顾、分析,并做出客观评价的书面材料,它可以明确下一步的工作方向,少走弯路,少犯错误,提高工作效益,不如我们来制定一份总结吧。但是却发现不知道该写些什么,以下是小编整理的软件测试工作总结,欢迎阅读与收藏。 https://www.yuwenmi.com/fanwen/gongzuo/4069018.html
5.软件测试实习报告(通用16篇)了解软件测试所用基础知识,掌握软件测试的基本技术,学习软件测试的基础知识及测试流程和有用的相关技术,了解软件开发各阶段的工作。通过实习,巩固大学所学专业的基本知识,提高分析、判断和处理实际问题的能力,锻炼自己的实际动手能力,增强自己的团队协作意识,了解软件开发的思考角度和主要流程。较好的文字理解、组织和表达https://www.unjs.com/fanwenku/444161.html
6.电商运营精选方案计划书(通用11篇)立足厦门岛,辐射厦漳泉地区。各单位企业或个人展示、展览、会议、培训;员工新聘或临时录用;系统测试、软件测试、项目开发。企业办公(财务考虑);移动办公;个人应用:娱乐、学习等构成了我们的目标市场。 顾客网上预订,网下现场看货决定是否租用。采用自愿原则,顾客与公司订立双方均可接受的租赁协议书。 https://www.ruiwen.com/word/dianshangyunyingjingxuanfanganjihuashu.html
7.自学软件测试好找工作吗?软件测试一、相信看这篇文章的朋友,基本上都是打算自学软件测试的人,但我不得不在这里给大家泼上一瓢凉水,自学软件测试虽然可以,但是并不是人人都可以自学软件测试。 二、可能你在网上看见别人自学软件测试,现在过的多么多么的好,薪资待遇多么多么的高,但是你想过没有,你这只是看见的成功者,那你看见过失败者吗?我身边就https://aiqicha.baidu.com/qifuknowledge/detail?id=10005543782
8.关于软件测试的实习报告(通用9篇)在我真正投入工作之前,我在网上查询了许多测试员的相关要求,了解了作为一个测试人员必须耐心,细心和平和的心态,他的目标是尽可能早一些找出软件缺陷,提高产品的质量,降低维护的成本,尽可能的达到客户的需求。 1、学习业务流程 测试并不是单纯意思上的机械的“测试”,他首先要求对产品非常熟悉,不管是从功能上还是操作https://www.fwsir.com/Article/html/Article_20211207100822_1506871.html
9.做了低薪实施4年转行软件测试,两年半经验的我是靠什么拿下年薪50W我是怎么了解到的软件测试? 在上一家公司中,参与了新业务的系统项目。因当时项目组人手严重不足,故兼做部分功能测试的工作。在此过程中,发现自己对系统 bug 很敏锐,会从业务逻辑方面帮助开发定位可能引起问题的模块,也因此对测试产生了浓厚兴趣。 后来从网上论坛了解到自动化测试,开始通过视频学习python自动化测试相https://maimai.cn/article/detail?fid=1675999043&efid=mx_HVZE39ls9VK2pTeQIGA
10.测试年终工作总结20篇ERP-仓储系统20xx年9月30日之前完成测试工作 ERP-物流系统20xx年11月5日之前完成测试工作 ERP-订单系统20xx年12月10日之前完成测试工作 最后感谢领导和各部门的同事对测试部工作的大力支持! 测试年终工作总结2 这个学期我学习了软件测试这门专业课程,在学期即将结束的时候,我也对这门课程建立基本的了解和理解。软件https://www.yjbys.com/gongzuozongjie/nianzhong/3938008.html
11.软件测试学习总结总结是事后对某一阶段的学习、工作或其完成情况加以回顾和分析的一种书面材料,它能够给人努力工作的动力,因此好好准备一份总结吧。我们该怎么去写总结呢?以下是小编整理的软件测试学习总结,欢迎阅读,希望大家能够喜欢。 在大庆浦东软件平台有限公司经过一周的软件测试实训,从对软件测试没有什么经验的我初步掌握了软件https://mip.wenshubang.com/xuexizongjie/253770.html
12.软件测试实习总结5篇总结是指对某一阶段的工作、学习或思想中的经验或情况加以总结和概括的书面材料,它可以明确下一步的工作方向,少走弯路,少犯错误,提高工作效益,不妨让我们认真地完成总结吧。那么总结要注意有什么内容呢?下面是小编为大家整理的软件测试实习总结,仅供参考,大家一起来看看吧。 https://www.jy135.com/shixizongjie/1216216.html
13.不要再看GE值了,教你从其他角度解读STARReading的测试报告,提升这到底是怎么回事?是她们使用的测试软件有问题么?带着这个疑问,我首先是给我家小妞也做了一下测试,结果比较震惊,GE值1.9。 然后,我查了一下网上比较好的记录,还有4岁娃可以达到GE4.5的。 虽然,我一直自诩是一个佛系鸡娃的妈,但是面对这种“差距”,我也有点不淡定了。因此,我开始了进一步的研究和调查。 https://m.xiaohuasheng.cn/blog?id=4efe5496f43ff50b
14.31岁才转行软件测试,目前34了,我来说说我的经历和一些感受吧我辞去工作,开始在家自学软件测试。主要的学习方式就是在网上看视频教程。那些视频教程,初级的基本上免费。中高级的有些会收费,大概50-300元左右一套。反正“学费”上我没花什么钱,总共不到一千元吧。 软件测试是IT相关行业中最容易入门的学科~不需要开发人员烧脑的逻辑思维、不需要运维人员24小时的随时待命,需要的https://www.jianshu.com/p/90d3f731abf6
15.软件测试面试题柠檬班自动化测试软件测试培训柠檬班是全国领先的在线软件测试培训机构,坚持“创新教学、用心教学、专业实用”的教学理念,提供功能测试、性能测试、自动化测试、测试开发等领域构筑“针对性”的教学优势,免费为学员提供更加优质、实用、专业的教学课程。http://www.lemonban.com/
16.软件测试如何快速入门王豆豆的测试观一边分析一边网上找一份测试用例模版,开始写测试用例,多分析,多写。 写的文档可以找已经做过软件测试的朋友帮忙指导,多修改,达到别人说OK为至,如果没有认识的人做软件测试,可以在网上找,现在有很多测试群(王豆豆自己的建的群:524612202)。 测试用例写得没问题了,就可以了解其他文档(测试计划,测试方案,测试报告等)https://www.cnblogs.com/evangline/p/8258134.html%20
17.软件性能测试与LoadRunner实战教程(第2版)这部分是软件测试脚本开发的基础,建议读者认真阅读。 第7章结合LoadRunner 新版本LoadRunner 12.60,介绍了Vugen功能改进与实用操作、同步录制和异步录制,以及如何在Controller中实现对JMeter脚本的支持、应用Vugen开发Selenium脚本等实用方法。 第8章结合作者工作经验、学员以及网上论坛经常提出的问题,总结了关于工具设置、工具https://www.epubit.com/bookDetails?id=UB6c8772be2d47b