软件测试之蚂蚁金服面试题,含答案

对于想要去面试的小伙伴们看过来,小编为大家总结了蚂蚁的面试题,其实很多面试题很多公司都差不多。主要看自己如何灵活回答,大家可以灵活回应。希望对大家有所帮助。

一:基础部分:
Q1. 什么是软件测试?

答:软件测试就是发现软件当中存在的缺陷,提高软件的质量。它贯穿于软件工程整个生命周期中,跟开发一样,是一个不可或缺的技术方向。

Q2. 软件测试过程中会面向哪些群体?

答:如果你是Tester的,一般只与Leader交流就可以了。 如果你是Leader的,一般只与项目经理交流就可以了。 如果你是PM的,一般要与所有人交流。 如果你公司没有规范的开发流程你一般要与所有人交流。

Q3. 什么是软件工程?

答:它是一门研究用工程化方法构建和维护有效的,实用和高质量的软件的学科,它涉及到程序设计语言,数据库,软件开发工具,系统平台标准,设计模式等方面

Q4. 开发一个软件都要经过哪些阶段?

答:问题的定义及规划,需求分析,软件设计,程序编码,软件测试,运营维护

Q5. 什么是黑盒测试,什么是白盒测试?

答:黑盒测试:是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求 规格说明书的规定正常使用,程序是否能适当地接收和正确的输出

白盒测试:是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。

Q6. 一个测试工程师应具备哪些素质?

答: 沟通能力,技术能力,自信心,幽默感,耐心,很强记忆力,怀疑精神,自我督促,洞察力。(答案不唯一)

Q7. 什么是C/S,什么是B/S?

答:C/S (Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。

B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

Q8. 什么是后台?

答:后台程序简称后台,一般情况下,后台程序也叫任务级程序,前台程序也叫事件处理级程序。在程序运行时,后台程序检查每个任务是否具备运行条件,通过一定的调度算法来完成相应的操作。

Q9.用一条SQL语句查出分数大于80分的学生名字

表名t_student Name kecheng fenshu

张云 语文 79

李四 数学 80

王五 英语 90

李佳 英语 89

李晟 数学 99

答select s.name from t_student s where s.fenshu>80;

Q10.与工程师出现冲突,如何解决?例如:工程师因项目时间冲突导致有多个bug要解决,此时如何与工程师正确的沟通?

答:

把问题弄清楚。

· 测试用最简单和常见的步骤来重现bug,如果可能,通过模拟用户场景来展示其问题的重点所在。

· 开发针对场景给出合理的技术分析。

· 双方共同评估风险。

尝试提出解决问题的方法和自己能做的贡献。

· 有时候开发不愿意改bug是因为时间紧张,或者认为风险较大。测试如果能提供合理的回归测试计划会解决开发的后顾之忧。

· 有时候开发的方案测试不愿意接受是因为测试风险太大,这时候开发可以尝试提出折中方案,将风险降到最小。

请第三方介入,特别是产品经理。

是否是bug经常是争吵的焦点。特别是对于需求中不明确的地方或者非功能性的需求,比如易用性,性能等等。这时候往往不是开发和测试沟通就能解决的了得。需要产品经理来一起讨论决定。

Q11.输入三个整数,判断三个整数能否构成一个三角形,请设计出相应的测试用例。

这里整理了一份软件测试的各种资料,包含了软件测试进阶,软件测试工具包,项目实战,其他经典面试题,软件测试电子书PDF版,2000套软件测试简历模板,软件测试最全测试报告模板,都整理成文档了,有需要的可以看下文末获取方式!

二:进阶部分
Q1.你所了解的黑盒测试方法有哪些?并简单介绍下其应用场景?

答:黑盒测试方法等价类划分、边界值方法、因果图法、判定表、场景法、正交法、大纲法、状态图法。

应用场景:

业务表述层使用:业务分析法、大纲法

剧本层使用:场景法、状态转换

对象模型层使用:因果图、正交法

抽象数据层使用:边界值、等价类划分

用例表述层:详细测试用例

测试脚本层:编写自动化测试脚本

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

答:常用的bug管理工具有bugfree、QC、bugzilla、禅道、mantis、Jira等。

此处以Bugfree为例的工作流程:测试人员新提交bug到bugfree上,开发人员对bug进行解决,解决之后测试人员对已解决的bug进行回归验证,已经成功修改的bug进行关闭,没有成功解决的bug变成新bug,让开发继续修改。

Q3.什么是正交实验法,使用场景是什么?

答:正交实验法是从大量的(实验)数据(测试例)中挑选适量的,有代表性的点(例),从而合理地安排实验(测试)的一种科学实验设计方法。

使用场景:利用因果图来设计测试用例时, 作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图而得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地,合理地减少测试的工时与费用,可利用正交实验设计方法进行测试用例的设计。

Q4.请简单描述测试工具loadrunner、selenium、QTP的产品用途,并介绍你在项目中实际用到的功能模块?

答:三种测试工具的用途分别如下:

loadrunner的用途:LR是一个性能测试工具,一般用来做压力、负载测试等性能测试。可以创建虚拟用户、创建真实的负载、定位性能问题、分析结果、重复测试、测试系统行为,优化系统性能。

Selenium用途:Selenium是一个开源的功能自动化测试工具,脚本语言可以是:Java、.Net、Perl等不同语言的测试脚本。并支持自动录制动作和自动生成脚本的功能。在浏览器兼容性方面有很好的支持。

QTP的用途:QTP是一个GUI界面功能自动化测试工具,简单来说就是可以录制人操作,然后回放,工具根据录制好的人操作来操作系统,这样可以很好地进行回归测试。也可以使用VBS脚本语言进行编写脚本来使用。

Q5.简述selenium grid的作用?

答:Selenium Grid是一种自动化的测试辅助工具,Grid通过利用现有的计算机基础设施,能加快Web-app的功能测试。利用Grid,可以很方便地同时在多台机器上和异构环境中并行运行多个测试事例。

Q6.高质量的自动化脚本应该具备哪些特性?

答:

1、不需要深入的工作或计划2、可以加快测试进度开始自动化3、对实际执行操作可以审计跟踪4、用户不必是编程人员就能执行5、可以提供良好的(软件或工具)的演示

Q7.编写测试计划文档的目的是什么?测试计划文档的内容主要包括哪些?并简单介绍其作用?

答:测试计划文档的目的:指导测试组成员进行工作和让测试组以外的项目成员了解测试工作。

测试计划文档的内容:项目背景、计划文档的受众、参考文档、提交的文档、测试术语、测试范围、测试策略、测试资源及分工、测试进度、风险说明及应对方案、测试通过的标准。

测试计划的作用:

1.把知识和经验可以直接转化成执行任务的具体方法

2.促进团队间关于测试任务和过程的交流

3.为组织、安排和管理测试项目提供一个整体框架

4.对项目执行过程中的风险进行分析,并制定相关的应对策略

Q8.项目某一轮系统测试完成后,达到系统测试结束的参考指标或规则通常有哪些?

答:

(1) 基本功能需求和非功能需求都实现了

(2) 全部测试用例回归测试都执行完毕了

(3) 框架不用再变了,缺陷数呈现收敛趋势,并趋于平稳的走势

(4) 规定等级的bug都修复了,比如1、2级的bug和紧急的bug都修复了,90%的3级bug也都解决了。没修复的都得到了审核和批准。

Q9.Unix/Linux查看所有属于java进程的命令是?并将其批处理杀掉?

答:ps –a | grep java

批处理杀掉进程的命令是:ps –ef|grep java|grep –v grep|awk ‘kill -9’

6Linux/unix查看内存的命令是什么?查看某文件末尾五行的命令是什么?

答: Linux/unix查看内存的命令:cat /proc/meminfo

查看某文件末尾五行的命令:tail -n 5 filename

Q10.java中sleep()和wait()的区别?抽象类和接口的主要区别是?

答:java中sleep()和wait()的区别:

1、这两个方法来自不同的类分别是Thread和Object2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在任何地方使用4、sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常

抽象类和接口的主要区别是:

第一点. 接口是抽象类的变体,接口中所有的方法都是抽象的。而抽象类是声明方法的存在而不去实现它的类。第二点. 接口可以多继承,抽象类不行第三点. 接口定义方法,不能实现,而抽象类可以实现部分方法。第四点. 接口中基本数据类型为static 而抽类象不是的。

Q11.QTP中的RO和TO的区别?谈谈你生成某业务功能模块的QTP脚本具体操作步骤?

答:TO是仓库文件里的仓库对象,RO是被测软件的实际测试对象,两者是不同的对象,是独立的。QTP是通过TO来寻找和操作RO的,所以TO里必须含有RO的特征,这是两者相似的地方。TO的属性可以在录制时抓取RO的特征属性得来,也可以在脚本运行时通过SetTOProperty来随意更改,通过GetTOProperty来读取。RO的属性可以通过GetROProperty来读取。没有SetROProperty,要修改RO属性,只能通过对象具体的Method。TO的属性值和对应RO的属性值并不一定相同,TO的属性值可以包含通配符和多种可能的RO属性值。

Q12.关于selenium中,查找某个页面元素的常见方法有哪几种?对于窗体和页面框架:frame切换用什么方法?

答:Switchto()

Q13.RobotFramework框架中设置变量有几种方式?

答:设置变量的方式:Set 赋值、Get 赋值、运行时赋值

Q14.RobotFramework框架中调用各种cmd命令,用什么关键字?
Q15.写出你常用的测试工具有哪些?

答:比较熟悉的是Bugfree,除此之外还有以下的一些工具:

性能测试:Rational系列(除了Rational Rose,那是做UML建模的)

单元测试:CUnit(C/C++/C#)、JUnit(JAVA)

功能测试:WinRunner

压力测试:LoadRunner

Q16.介绍下你所经历的开发-测试-代码上线的整个相关流程?并简单描述下此流程.

答:开发流程:设计—评审—coding—单元测试

测试流程:设计测试用例—评审—冒烟测试—测试—测试报告

代码上线流程:从开发本地发布到开发服务器上—测试服务器—预热服务器—生产服务器上—生产环境的冒烟测试

最后
这里也整理了一份软件测试的各种资料,包含了软件测试进阶,软件测试工具包,项目实战,其他经典面试题,软件测试电子书PDF版,2000套软件测试简历模板,软件测试最全测试报告模板,都整理成文档了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/141615.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

怎么在web显示模型的动态应力图?

要在网页上显示模型的动态应力图,需要执行几个步骤。动态应力图通常涉及有限元分析 (FEA) 模拟中的应力和应变数据的可视化,可以使用 Python、JavaScript 等工具以及 Three.js、Plotly 或 D3.js 等库来渲染图一个网页。以下是该过程的概述: …

实施MES管理系统项目的三个重要阶段

在现今这个高速发展的时代,每个企业都追求更高的生产效率和更精准的管理。MES管理系统作为助力企业实现这些目标的重要工具,其实施与运营显得尤为关键。以下是我们在实践中总结出的经验与建议,希望为准备引入MES管理系统的企业提供有价值的参…

代码随想录算法训练营第20天|654.最大二叉树 617.合并二叉树 700.二叉搜索树中的搜索 98.验证二叉搜索树

JAVA代码编写 654. 最大二叉树 给定一个不重复的整数数组 nums 。 最大二叉树 可以用下面的算法从 nums 递归地构建: 创建一个根节点,其值为 nums 中的最大值。递归地在最大值 左边 的 子数组前缀上 构建左子树。递归地在最大值 右边 的 子数组后缀上 构建右子树…

linux时间同步

搭建集群时,都会先设置时间同步,否则会出现多种问题。 方式一: 1.安装ntp软件 yum install -y ntp 2.更新时区 删除原有时区:sudo rm -f /etc/localtime 加载新时区:sudo ln -s /usr/share/zoneinfo/Asia/Shangh…

快来看呦!制作3D翻页产品宣传册原来这么受欢迎!

制作3D翻页产品宣传册不但使产品在表达效果上看上去更为绚丽多彩,并且具备比较强的立体视觉效果,增加大家浏览观看的吸引力,而且还便于传播,短时间里增加品牌的影响力。 那么,我们应该如何制作3D翻页产品宣传册&#x…

reticulate | R-python调用 | 安装及配置 | conda文件配置

reticulate | R-python安装及配置 | conda文件配置 1. 基础知识2. 安装reticulate from CRAN3. 包含了用于Python和R之间协同操作的全套工具,在R和Rstudio中均可使用4. 配置python环境4.1 4种环境配置方式4.2 miniconda 环境install_miniconda()报错一install_minic…

企业大数据治理管理平台解决方案:PPT全文33页,附下载

关键词:数据治理解决方案,大数据治理,数据治理的目的和意义 一、数据治理定义 数据治理是指根据数据全生命周期、数据整体流向,将数据作为企业资产进行整体管控、人员绩效评判和风险管理工作的整套治理体系。数据治理旨在保障企…

Java 之集合框架的详细介绍

文章目录 总的介绍1. **Collection 接口**2. **List 接口**3. **Set 接口**4. **Map 接口**5. **HashMap、LinkedHashMap、TreeMap**6. **Queue 接口**7. **Deque 接口** ArrayList 类1. **创建 ArrayList:**2. **添加元素:**3. **插入元素:*…

Antv/G2 折线图 使用 DataSet 进行数据排序

DataSet 文档 G2 3.2 DataSet 文档 安装 浏览器引入 可以通过 <script> 标签引入在线资源或者本地脚本&#xff1a; <!-- 引入在线资源 --> <script src"https://unpkg.com/antv/data-set"></script><!-- 引入本地脚本 --> <sc…

Linux学习第41天:Linux SPI 驱动实验(二):乾坤大挪移

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 本章的思维导图如下&#xff1a; 二、I.MX6U SPI主机驱动分析 主机驱动一般都是由SOC厂商写好的。不作为重点需要掌握的内容。 三、SPI设备驱动编写流程 1、SP…

软件测试面试,一份八股文足矣(含文档)

前言 在我认为&#xff0c;对于测试面试以及进阶的最佳学习方法莫过于刷题博客书籍视频总结&#xff0c;前几者我将淋漓尽致地挥毫于这篇博客文章中&#xff0c;至于总结在于个人&#xff0c;实际上越到后面你会发现面试并不难&#xff0c;其次就是在刷题的过程中有没有去思考…

Topaz Photo AI for Mac/win(人工智能降噪软件) 完美兼容激活版

Topaz Photo AI是一款基于人工智能的照片编辑软件&#xff0c;具有革命性的功能。它提供了强大的工具和技术&#xff0c;让用户能够编辑照片而不降低质量。该软件具备高清晰度效果、降噪和自动照片润色工具&#xff0c;能够帮助用户制作令人惊叹的照片。 它包括复杂的锐化算法…

DNS域名解析

目录 1.概述 1.1产生原因 1.2作用 1.3连接方式 1.4因特网的域名结构 1.4.1拓扑 1.4.2分类 1.4.3域名服务器类型划分 2. DNS域名解析过程 2.1分类 2.2解析图 2.2.2过程分析 3.搭建DNS域名解析服务器 3.1.概述 3.2安装软件 3.3bind服务中三个关键文件 3.4主配置…

Matplotlib的使用方法

Matplotlib是Python最著名的绘图库&#xff0c;它提供了一整套和Matlab相似的命令API&#xff0c;十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件&#xff0c;嵌入到GUI应用程序中。Matplotlib能够创建多数类型的图表&#xff0c;如条形图、散点图、条形图、饼图…

mysql之正则表达式匹配

题目&#xff1a; 今天在牛客网看到一道关于数据库正则表达式匹配的问题&#xff0c;发现自己一点不会做。 正则表达式&#xff1a; 一、正则表达式 MySQL 正则表达式通常是在检索数据库记录的时候&#xff0c;根据指定的匹配模式匹配记录中 符合要求的特殊字符串。MySQL 的…

JavaScript事件处理

在IE 3.0和Netscape 2.0浏览器中开始出现事件。DOM 2规范开始标准化DOM事件&#xff0c;直到2004年发布DOM 3.0时&#xff0c;W3C才完善事件模型。目前&#xff0c;所有主流浏览器都支持DOM 2事件模块。IE8及其早期版本还继续使用IE事件模块。 1、事件基础 1.1、事件模型 在…

deepstream生成pipeline拓扑图的方法

deepstream生成pipeline拓扑图的方法 1、前期工作1.1 安装dot 2、使用命令行生成2.1、添加环境变量2.2 、运行管道2.3 、使用dot 生成png图片 3、在c中使用3.1、添加代码3.2、运行代码3.3 、使用dot 生成png图片 4、在python中使用4.1、添加代码4.2 、使用dot 生成png图片 1、前…

【机器学习基础】机器学习入门(2)

&#x1f680;个人主页&#xff1a;为梦而生~ 关注我一起学习吧&#xff01; &#x1f4a1;专栏&#xff1a;机器学习 欢迎订阅&#xff01;后面的内容会越来越有意思~ &#x1f4a1;往期推荐&#xff1a;【机器学习基础】机器学习入门&#xff08;1&#xff09; &#x1f4a1;…

设计模式之工厂模式 ( Factory Pattern )(1)

其他设计模式也会后续更新… 设计模式其实需要有一定开发经验才好理解&#xff0c;对代码有一定的设计要求&#xff0c;工作中融入才是最好的 工厂模式 ( Factory Pattern ) 工厂模式&#xff08;Factory Pattern&#xff09;提供了一种创建对象的最佳方式 工厂模式在创建对…

“ChatGPT 之父”暗讽马斯克;传安卓版本与鸿蒙将不再兼容;PICO 裁撤游戏工作室团队丨 RTE 开发者日报 Vol.83

开发者朋友们大家好&#xff1a; 这里是 「RTE 开发者日报」 &#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE &#xff08;Real Time Engagement&#xff09; 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…