2023最新出炉的整理软件测试常见面试题附答案

news2024/9/25 3:20:28

包含的模块:

本文分为十九个模块,分别是:软件测试 基础、liunx、MySQL、web测试、接口测试、APP测试 、管理工具、Python、性能测试、selenium、lordrunner、计算机网络、组成原理、数据结构与算法、逻辑题、人力资源!!

如下图所示:

 

共包含400 道面试题,本文的宗旨是为读者朋友们整理一份详实而又权威的面试清单,下面一起进入主题吧。

Q1测试的策略有哪些?

参考答案:

黑盒/白盒,静态/动态,手工/自动,冒烟测试,回归测试,公测(Beta 测试的策略)

Q2、正交表测试用例设计方法的特点是什么?

参考答案:

用最少的实验覆盖最多的操作,测试用例设计很少,效率高,但是很复杂;

对于基本的验证功能,以及二次集成引起的缺陷,一般都能找出来;但是更深的

缺陷,更复杂的缺陷,还是无能为力的;

具体的环境下,正交表一般都很难做的。大多数,只在系统测试的时候使用此方

法。

Q3、描述使用 bugzilla 缺陷管理工具对软件缺陷(BUG)跟踪的管理的流程?

参考答案:

就是 Bugzilla 的状态转换图。

Q4、你觉得 bugzilla 在使用的过程中,有什么问题?

参考答案:

界面不稳定;

根据需要配置它的不同的部分,过程很烦琐。

流程控制上,安全性不好界定,很容易对他人的 Bug 进行误操作;

没有综合的评分指标,不好确认修复的优先级别。

Q5、描述测试用例设计的完整过程?

参考答案:

需求分析 + 需求变更的维护工作;

根据需求 得出测试需求;

逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流

分析

用户动作设计;

场景设计;

测试数据分析;

设计测试方案,评审测试方案;

方案评审通过后,设计测试用例,再对测试用例进行评审;

Q6、单元测试的策略有哪些?

参考答案:逻辑覆盖、循环覆盖、同行评审、桌前检查、代码走查、代码评审、景泰数据流

Q7、LoadRunner 分哪三部分?

参考答案:

用户动作设计;

场景设计;

测试数据分析;

Q8、LoadRunner 进行测试的流程?

参考答案:

1、 测试测试

2、 创建虚拟用户脚本

3、 创建运行场景

4、 运行测试脚本

5、 监视场景

6、 分析测试的结果

以上,最好是结合一个案例,根据以上流程来介绍。

Q9.什么是并发?在 lordrunner 中,如何进行并发的测试?集合点失败了会怎么样?

参考答案:

在同一时间点,支持多个不同的操作。

LoadRunner 中提供 IP 伪装,集合点,配合虚拟用户的设计,以及在多台电脑

上设置,可以比较好的模拟真实的并发。

集合点,即是多个用户在某个时刻,某个特定的环境下同时进行虚拟用户的操作

的。集合点失败,则集合点的才操作就会取消,测试就不能进行。

Q10、使用 QTP 做功能测试,录制脚本的时候,要验证多个用户的登录情况/查询

情况,如何操作?

参考答案:

分析用户登录的基本情况,得出一组数据,通过性测试/失败性测试的都有(根据

TC 来设计这些数据),然后录制登录的脚本,将关键的数据参数化,修改脚本,

对代码进行加强,调试脚本。

Q11、QTP 中的 Action 有什么作用?有几种?

参考答案:

Action 的作用

n 用 Action 可以对步骤集进行分组

n 步骤重组,然后被整体调用

n 拥有自己的 sheet

n 组合有相同需求的步骤,整体操作

n 具有独立的对象仓库

Action 的种类

n 可复用 Action

n 不可复用 Action

n 外部 Action

Q12、TestDirector 有些什么功能,如何对软件测试过程进行管理?

参考答案:

需求管理

n 定义测试范围

n 定义需求树

n 描述需求树的功能点

测试计划

n 定义测试目标和测试策略。

n 分解应用程序,建立测试计划树。

n 确定每个功能点的测试方法。

n 将每个功能点连接到需求上,使测试计划覆盖全部的测试需求。

n 描述手工测试的测试步骤

n 指明需要进行自动测试的功能点

测试执行

n 定义测试集合。

n 为每个测试人员制定测试任务和测试日程安排。

n 运行自动测试。

缺陷跟踪

n 记录缺陷

n 查看新增缺陷,并确定哪些是需要修正的

n 相关技术人员修改缺陷

n 回归测试

n 分析缺陷统计图表,分析应用程序的开发质量。

Q13、你所熟悉的软件测试类型都有哪些?请试着分别比较这些不同的测试类型的

区别与联系(如功能测试、性能测试……)?

参考答案:Compatibility Testing(兼容性测试),也称“Configuration

testing(配置测试)”,测试软件是否和系统的其它与之交互的元素之间兼容,如:

浏览器、操作系统、硬件等。验证测试对象在不同的软件和硬件配置中的运行情

况。

Functional testing (功能测试),也称为 behavioral testing(行为测试),根据产品特征、操作描述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。本地化软件的功能测试,用于验证应用程序或网站对目标用户能正确工作。使用适当的平台、浏览器和测试脚本,以保证目标用户的体验将足够好,就像应用程序是专门为该市场开发的一样。

Performance testing(性能测试),评价一个产品或组件与性能需求是否符合的

测试。包括负载测试、强度测试、数据库容量测试、基准测试等类型。

Q14、软件缺陷(或者叫 Bug)记录都包含了哪些内容?如何提交高质量的软件缺陷

(Bug)记录?

参考答案:5C 标准

Q15、Beta 测试与 Alpha 测试有什么区别?

参考答案:Beta testing(β测试),测试是软件的多个用户在一个或多个用户的实

际使用环境下进行的测试。开发者通常不在测试现场

Alpha testing (α测试),是由一个用户在开发环境下进行的测试,也可以是公司

内部的用户在模拟实际操作环境下进行的受控测试

Q16、什么是数据库?

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

Q17、什么是关系型数据库,主键,外键,索引分别是什么?

关系型数据库是由多张能互相联接的二维行列表格组成的数据库

主关键字(primary key)是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录

外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字

在关系数据库中,索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构, 它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单

Q18、写出表的增删改查SQL语法

表的创建:create table 表名 (列名1 类型 约束,列2 类型 约束…)

表的删除:drop table 表名

表的更改(结构的更改,不是记录的更新):alter table 表名 add|drop 列名|约束名

插入记录:insert into 表名…values…

更新记录:update 表名 set 列名=值 where 条件

删除记录:delete from 表名 where 条件

Q19、SQL的表连接方式有哪些?

SQL中连接按结果集分为:内连接,外连接,交叉连接

Q20、统计python 源代码文件中代码行数,去除注释,空行,进行输出?

Q21、python 调用cmd 并返回结果?

python 的 OS 模块。

OS 模块调用CMD 命令有两种方式:os.popen(),os.system(). 都是用当前进程来调用。

os.system 是无法获取返回值的。 当运行结束后接着往下面执行程序。 用法如: OS.system(“ipconfig”).

OS.popen 带返回值的,如何获取返回值。如

p=os.popen(cmd)

print p.read().得到的是个字符串。

这两个都是用当前进程来调用,也就是说它们都是阻塞式的。管道 subprocess 模块。

运行原理会在当前进程下面产生子进程。

sub=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE)

sub.wait()

print sub.read()

Q22、冒泡排序

 

Q23、1,2,3,4 这 4 个数字,能组成多少个互不相同的且无重复的三位数,都是多少?

 

Q24、给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数

def digitCounts(self, k, n):
count = 0
for i in range(n+1):
if i == 0 and i == k:
count += 1
while( i // 10 >= 0 and i != 0):
j = i % 10
if j == k:
count += 1
i = i //10
return count
复制代码

Q25、你如何从命令行启动Selenium RC?

// 简单的启动Selenium RC的方法是

java -jar selenium-server.jar

// 在浏览器中运行一套Selenese脚本

java -jar selenium-server.jar -htmlSuite

Q26、在我的机器端口4444不是免费的。我怎样才能使用另一个端口?

//你可以在运行selenium服务器时指定端口为 -

Java -jar selenium-server.jar -port 5555

Q27、什么是Selenium Server,它与Selenium Hub有什么不同?

Selenium Server是使用单个服务器作为测试节点的一个独立的应用程序。Selenium hub代理一个或多个Selenium的节点实例。一个hub 和多个node被称为Selenium grid。运行SeleniumServer与在同一主机上用一个hub和单个节点创建de Selenium grid类似。

Q28、性能测试有哪些分类

1.负载测试

2.压力测试

3.并发测试

4.基准测试

5.稳定性测试

6.可恢复测试

Q29、LoadRunner 的工作原理是什么?

LoadRunner 工作原理:

LoadRunner 通过模拟上千万用户实施并发负载,实时性能监控的系统行为和性能方式来确认和查找问题。

1、VuGen 发生器:捕捉用户的业务流,并最终将其录制成一个脚本:

2、控制器(Controller):

3、负载发生器(Load Generators)

4、分析器(Analysis):主要用于对测试结果进行分析。

Q30、LoadRunner进行测试的流程?

(1)测试测试

(2)创建虚拟用户脚本

(3)创建运行场景

(4)运行测试脚本

(5)监视场景

(6)分析测试的结果

以上,最好是结合一个案例,根据以上流程来介绍。

Q31、测试活动中,如果发现需求文档不完善或者不准确,怎么处理?

参考答案:

测试需求分析发现需求文档不完善或者不准确,应该立即和相关人员进行协调交

流。

Q32、阶段评审与项目评审有什么区别?

参考答案:

阶段评审对项目各阶段评审:对阶段成果和工作

项目评审对项目总体评审:对工作和产品

Q33、阐述工作版本的定义?

参考答案:

构造号: BUILD

Q34、什么是桩模块?什么是驱动模块?

参考答案:

桩模块:被测模块调用模块

驱动模块调用被测模块

Q35、你认为做好测试用例工作的关键是什么?

参考答案:

需求和设计文档的理解程度,对系统的熟悉程度

由于文章篇幅问题,完整面试宝典滴滴自取

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

工程项目实施时,如何制定项目进度计划?

在实施工程项目之前,必须制定项目进度计划,并按照进度计划进行控制。 项目进度计划是指,在规定的时间内,制定合理且经济的进度计划(包括多级管理的子计划)。在执行该计划的过程中,需要经常检查实…

全流程R语言Meta分析核心技术高阶应用

查看原文>>>全流程R语言Meta分析核心技术高阶应用 目录 专题一、Meta分析的选题与检索 专题二、Meta分析与R语言数据清洗及统计方法 专题三、R语言Meta分析与作图 专题四、R语言Meta回归分析 专题五、R语言Meta诊断分析 专题六、R语言Meta分析的不确定性 专题…

stm32 无刷电机 V/F控制(无刷电机变频控制)以及与foc(矢量控制)的区别

无刷电机有三种控制方式,方波控制,foc控制以及变频控制,前两章我们讲解了方波和foc的控制方法,今天我们一起来讲一讲什么是无刷电机的变频控制(VF)以及变频控制的优势是什么。 实验用的硬件还是KY_Motor的无…

Windows上安装Hugo的环境

Hugo是一个使用Go编写的静态站点生成器,即网站构建工具。 静态的意思是指在内容在网站上呈现之前需要全部编译成HTML文件。而动态的站点生成器是请求哪个页面就编译生成哪个HTML页面。 在Windows上可以选用包管理器Chocolatey、Scoop、Winget来安装Hugo。 这里我…

【算法刷题之哈希表篇(1)】

目录 1.哈希表基础理论2.leetcode-242. 有效的字母异位词(1)方法一:排序(2)方法二:哈希表 3.leetcode-349. 两个数组的交集(1)方法一:哈希表(2)方…

脚本掌控,Linux上实现Spring Boot(JAR包)开机自启

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: 脚本掌控,Linux上实现Spring Boot(JAR包&#x…

智能综合性公共系统安防监控系统项目建设方案

一、系统概述 智能综合性公共系统安防监控系统是为了保障公共系统的安全而设计的一套综合性的安防解决方案。该系统集成了多种先进的技术和设备,以实现对系统内部和周围环境的全方位、高效率的监控和管理。智能综合性公共系统安防监控系统旨在提供全面、高效的安全保…

冠达管理大盘分析:光伏板块震荡走高,钧达股份涨停

光伏板块24日盘中震动走高,到发稿,时创动力大涨超16%,钧达股份涨停,昱能科技涨超8%,阿特斯、晶澳科技、阳光电源等涨超5%,隆基绿能涨近4%。 东研山私募证券投资(百度搜索冠达管理)基金管理有限公…

用心维护好电脑,提高学习工作效率

无论是学习还是工作,电脑都是IT人必不可少的重要武器,一台好电脑除了自身配置要经得起考验,后期主人对它的维护也是决定它寿命的重要因素! 一、我的电脑 系统制造商: ASUSTeK COMPUTER INC. 系统型号: ZenBook UX481FAY 1.1 如…

Docker创建Consul并添加权限控制

一、部署Consul 1、拉取镜像&#xff1a; docker pull consul:<consul-version> 2、运行 docker run --name consul1 -p 8300:8300/tcp -p 8301:8301/tcp -p 8301:8301/udp -p 8302:8302/tcp -p 8302:8302/udp -p 8500:8500 -p 8600:8600/tcp -p 8600:8600/udp -v /h…

Mybatis引入与使用

一、新建项目 使用IDEA&#xff0c;新建项目 注意&#xff1a;这里创建的是Maven项目 二、数据准备 因为Mybatis是操作数据库的框架&#xff0c;需要操作数据库&#xff0c;这里我们选用Mysql数据库&#xff0c;使用数据库脚本初始化一下数据。 -- 如果数据库不存在则创建数…

8.23笔记(手写),deeplabV2与V3

空洞卷积(Dilated convolution)如下图所示&#xff0c;其中 r 表示两列之间的距离(r1就是常规卷积了)。 池化可以扩大感受野&#xff0c;降低数据维度&#xff0c;减少计算量&#xff0c;但是会损失信息&#xff0c;对于语义分割来说&#xff0c;这造成了发展瓶颈。 空洞卷积可…

Python实战之如何用Python创建并训练自己的聊天机器人详解

你是否想过拥有一个自己的聊天机器人&#xff0c;让它陪伴你聊天、解答问题&#xff1f;Python可以帮助你实现&#xff01;在本文中&#xff0c;我们将介绍如何使用Python创建自己的聊天机器人。 第一步&#xff1a;安装必要的库 在使用Python创建聊天机器人之前&#xff0c;你…

python按日期生成文件夹并保存图片

背景说明&#xff1a; 在做一个瑕疵检测项目的时候&#xff0c;模型需要实时处理摄像头获取的图像进行处理&#xff0c;然后进行OK和NG判别&#xff0c;对于判别的结果要分别保存在不同的文件夹中&#xff0c;同时需要保证图片具有可区分性 。 分析&#xff1a; 考虑使用pat…

谈谈智能交通的概念

目录 1.什么是智能交通 2.智能交通的应用场景 1.智能公交车 2.共享单车 3.汽车联网 4.智慧停车 1.什么是智能交通 智能交通是指运用信息技术和通信技术等现代技术手段&#xff0c;对交通运输系统进行智能化的管理和优化&#xff0c;以提高交通效率、安全性和环境友好性的一…

上门服务系统|上门服务小程序如何提升生活质量?

上门服务其实就是本地生活服务的升级&#xff0c;上门服务包含很多行业可以做的。例如&#xff1a;厨师上门、上门家电维修、跑腿等等。如今各类本地化生活服务越来越受大家的喜爱。基于此市场愿景&#xff0c;我们来谈谈上门服务系统功能。 一、上门服务系统功能 1、预约服务…

eCharts热力图Y轴左上角少一块

问题&#xff1a; 如图 在图例的左上角 Y轴会少一块 官方demo https://echarts.apache.org/examples/zh/editor.html?cheatmap-cartesian 事实上 把官方demo的左上角坐标 [ 6, 0, 1 ] 修改为 [ 6, 0, 0 ] 后 依旧会出现该问题 查遍文档 并无解释 也没有任何配置项可解决…

shell 06(shell内置命令)

一、内置命令介绍 shell 内置命令&#xff0c;就是由 Bash shell 自身提供的命令&#xff0c;而不是文件系统中的可执行文件 使用type 来确定一个命令是否是内置命令: type 命令 通常来说&#xff0c;内置命令会比外部命令执行得更快: 执行外部命令时不但会触发磁盘 I/0&am…

vue中form、table和input标签过长

form标签过长 效果&#xff1a; 代码&#xff1a; <el-form-item v-for"(item,index) in ticketEditTable1" :label"item.fieldNameCn" :propitem.fieldName :key"item.fieldNameCn" overflow"":rules"form[item.fieldName…

组队buff,citywalk,同学走起

本文关键词 组队、旅游、打比赛、动心 南京、成都、西安、北京、烟火气 梧桐杯、大数据、创新、得行 ...... 这里是第三届中国移动“梧桐杯”大数据创新大赛&#xff0c; 只接受在校大学生报名。 这里是五阶赛程三阶有奖的比赛&#xff0c; 百万奖金池&#xff0c;下饺子…