外包干了2个月测试,技术退步明显...

news2024/12/23 17:28:10

先说一下自己的情况,大专生,18年通过校招进入湖南某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试,已经让我变得不思进取,谈了2年的女朋友也因为我的心态和工资和我分手了。于是,我决定要改变现状,冲击下大厂。

刚开始准备时,自己都蒙了,四年的功能测试让我的技术没有一丝的进步,提升的只有我的年龄…

没办法,我找到了我在腾讯的老哥,作为他的小老表,在他了解了我的情况后(几乎就是Java基础开始),直接甩给我一个网盘,说到:“去吧,这里有你需要的所有东西,不要来找我了,我都嫌丢人!”。

盘里头是一整套软件测试面试必备文档PDF,看完之后直接给我老哥给跪了…这下面试稳了。

内容涵盖:包括测试理论、Linux基础、MySQL基础、Web测试、接口测试、App测试、管理工具、Python基础、Selenium相关、性能测试、LordRunner相关等… 质量非常高,需要的可自行领取!!

通过大数据总结发现,其实软件测试岗的面试都是差不多的。常问的有下面这几块知识点:

  • 测试理论-Linux
  • Pytest框架-python编程
  • 性能测试-app测试
  • 数据库-抓包与网络协议
  • 接口测试-接口自动化
  • UI自动化-Unittest框架
  • 白盒测试-持续集成
  • 场景问题
  • 职业规划

一、测试理论-Linux 

1.1 有没有写过测试计划,具体包括哪些内容?

参考答案1:

测试计划内容:

(1)目的和范围     (2)规程    (3)测试方案和方法    (4)测试的准入和准出

(5)测试计划(流程、时间安排、对应人员)  (6)测试的环境配置和人员安排    (7)交付件

参考答案2

我们公司之前按照考核要求写过测试计划,不过后面老大觉得太耽误工作进度,

后面一般都不再写测试计划,而是写版本计划,这个在版本计划,每个人的任务列出来,

负责人列出来,自己根据自己的情况分配时间,然后汇总,大家一起开个小会评审就可以了。

二、Pytest框架-python编程 

2.1  自动化测试使用的那些库

1、selenium库 --web自动化测试工具   2. priest框架,运行用例   3. random随机,概率

4. xlrd --获取exell表数据  5. pymysql调用数据库   6. pytest-html --生成html文件

7. yagmanil --发送邮件   8. time-时间   9.  Select包--下拉框    10. Keys 模拟键盘操作

11. Webdriverwait智能等待    12. Action Chains模拟鼠标操作

三、性能测试-app测试 

3.1  性能测试怎么测试

性能测试其实就是通过自动化工具模拟多种正常、峰值以及异常负载来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,二者可结合使用。

性能指标主要有平均响应时间、90%响应时间、吞吐量、吞吐率,每秒事务数,以及服务器的资源使用率(CPU占比,mem内存占比等)等。当并发用户数超过300时,为了让测试数据更准确,可以考虑分布式压测,通过jmeter客户端控制几台jmeter服务器进行测试。

性能测试要先调试好脚本,主要考虑对脚本的数据参数化和添加断言。因为有些接口需要对业务逻辑或参数格式进行校验,为了能让所有线程数跑起来,需要将数据参数化。

数据参数化有这几种做法:

  1. 可以将一些固定值改成随机函数;
  2. 利用JDBC从数据库读取数据并关联变量;
  3. Excal数据参数化,
  4. 动态关联参数化,断言是为了判断用例是否

执行成功,并验证服务器的响应错误率。响应断言常用json断言,xml断言用的最少,

性能测试的目的是为了检验系统能否满足客户的性能需求,若性能需求无法满足时,则

要考虑对系统进行性能调优,一般用排除法:

1、首先考虑网络方面问题:使用ping命令查看与目标服务器的连接是否正常、传输速度的快慢。通过提升服务器的带宽,看响应时间是否相应降低。

2、考虑数据库的问题,可以单独去压测数据库,查看数据库的最大连接数和SQL语句的执行时间,索引命中率和sleep等待时间等

3、考虑 Apache/Nginx等中间件的问题,查看中间件设置的最大连接数是否合理,如果设置的连接数太小,会话数超过设定的最大连接数时会导致等待时间变长,出现响应超时情况

4、考虑服务器的硬件配置,如内存、CPU、磁盘读写速度等,可以用top命令来监控,也可以使用nmom工具来监控,nmom会把监控的数据形成表格形式,方便我们查看。

5、最后考虑开发代码写的好不好,处理时间长不长的问题。

四、数据库-抓包与网络协议 

4.1 你们数据库怎么用

[原来我们数据库用的比较多的,就是数据结果检查,测试一些数据准备,性能测试造大量数据。]

[测试执行到的结果,我们需要通过sql语句 select来查找数据库对应的表,看看数据库信息跟我们执行的结果是否一致,比如:生成申请借款后,我们会去数据库里面去检查下,数据库中数据是否跟申请订单数据一致。]

[我们在测试执行时需要做一些测试数据准备,我们就用 insert into输入数据或(者update set修改数据),我们需要到数据库查看有没有相关记录保存,保存的数据跟我们输入或者修改的记录是否一致;比如:原来我们一个初审功能里面有个分页功能,测试分页功能,需要100条数据,我们就通过数据库操作添加100,可以用 insert into。也可以用脚本实现,或者存储过程]

[还有在做性能测试时,模拟用户场景时需要用到大量的数据,这时就需要我们到数据库中制造大量的数据出来。比如说,测试充值,需要大量用户数据,充值表中大量数据,比如10W条数据,我们就用存储过程去造。]

五、接口测试-接口自动化 

5.1 接口测试主要目的是什么?

例外两种问法:接口测试的价值,意义?为什么要做接口测试?

主要就是验证后台服务端的业务逻有没有问题,提高测试的效率

①越底层发现bug,它的修复成本是越低的

②前端页面修改频繁情况下,接口测试不受页面元素改变而影响

③检查系统的安全性,前端传参不可信,比如京东购物,前端价格不可能传入-1元,但是

通过接口可以传入-1元

④如今的系统复杂度不断上升,传统的测试方法成本急剧增加且测试效率大幅下降,接口自动化测试可以提高测试效率

⑤接口测试相对容易实现自动化持续集成,且相对U自动化也比较稳定,可以减少人工,回归测试人力成本与时间,缩短测试周期

六、UI自动化-Unittest框架 

6.1 什么样的项目合适做自动化(至少三个)

功能需求,需求稳定,界面稳定,不会频繁变动,才可以做

版本迭代次数比较多,做出来才有意义

项目周期比较长(大项目)意义

七、白盒测试-持续集成 

7.1 白盒测试怎么测

原来工作中,没有涉及过,但是了解过

1、静态扫描

2、动态检查,构造测试数据去检查,语句覆盖---覆盖所有的代码

3、判定覆盖覆盖每个判定条件,每个判定都需要   真假值

4、条件覆盖每个条件  都需要一个真假值

5、判定/条件覆盖

6、组合覆盖,条件之间的组合场景   ---重点

7、路径覆盖----后面黑盒流程分析法   ---重点

八、场景问题 

8.1  有没有抓过包,为什么要抓包,具体怎么做的?

抓包这块,其实我们在工作用得是比较多的,一般我们都在测试过程碰到问题,我们有的候通过抓包去看一下前端与后台的数据交互,通过分析这个数据,来定位到底是前端问题,还是后台问题。

主要用的就是 fiddler工具,如果只是抓取Web端数据的话,只要在浏览器上设置代理服务器,指定代理服务器为本地的fiddler这个工具,设置好端口:8888 就可以了,如果要抓取手机端的包,首先需要保证手机与电脑(安装了 fiddler的这个电脑)在同一个网络,在手机上要设置http代理服务器为手动,然后服务器指定为电脑的ip地址,端口设置为8888

例外,如果要抓取https包,可能还需要在电脑上安装证书,手机端这边也要安装证书,差不多这样就可以。

 九、职业规划

9.1 简单的自我介绍下

面试宫,您好,我叫XXX,来自于XXXX,目前从事软件测试工作,已经三年工作经验,个人性格,比较开朗,跟人关系比较好,做事也比较细心三年测试工作经验中,过了不少项目,积累不少项目经验,前面1-2年主要是功能测试,后面这一年主要做接口测试,app自动化测试能够独立完成软件产品测试工作,能够独立编写测试文档,包括用例,计划,报告等,熟悉lnux跟数据库,熟悉 jmeter与 python + request进行接口测试,也可以使用 pytest框架进行接口自动化测试, python + selenium + pytest框架进行自动化测试,python + appnium + pytest移动app自动化测试框架,熟悉使用Jenkins持续集成,熟悉app专项测试与小程序测试,熟悉抓包工具。

我个人平常喜欢…看书…

我个人觉得测试这一块,主要是对需求了解,需求理解到位,工作当中,一定细心耐心,技术这块,不断学习能力

如果面试没有说话,   这个是我的一个简单自我介绍,看面试官还有什么需要了解的

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

在这里插入图片描述

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

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

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

相关文章

9. 实现业务功能--用户登录

目录 1. 顺序图 2. 参数要求 3. 创建 Service 接口 4. 实现 Service 接口 5. 单体测试 6. 实现 Controller 7. 实现前端 在用户登录部分特别注意的是需要进行密码校验: 1. MD5(MD5(用户提交的原密码)数据库查出来的用户的盐) 密码的…

【python办公自动化】PysimpleGUI中更新Listbox组件选定元素的格式

pysimplegui中更新Listbox组件选定元素的格式 背景问题解决创建窗口布局创建窗口背景 在进行打分时候,由于打分的指标较多,因此为了辨别已经打完分数的指标,可以考虑对打过分的指标进行标记,故可以采用格式修改的方法调整,比如添加一些特殊标记 问题解决 import PySim…

K8S应用笔记 —— 部署Dolphinscheduler及简单应用(一)

一、Dolphinscheduler简介 Apache DolphinScheduler 是一个分布式易扩展的可视化DAG工作流任务调度开源系统。适用于企业级场景,提供了一个可视化操作任务、工作流和全生命周期数据处理过程的解决方案。 Apache DolphinScheduler 旨在解决复杂的大数据任务依赖关系…

SpringBoot 基础篇

SpringBooot基本配置 Web容器基本配置 学习了SpringBoot框架之后,我们了解到SpringBoot内嵌了 Tomcat、Jetty、Undertow 三种容器,其默认嵌入的容器是 Tomcat,这个在我们启动 Spring Boot 项目的时候,在控制台上就能看到&#x…

使用 EasyExcel 实现 百万级数据导入导出

前言 在项目开发中往往需要使用到数据的导入和导出,导入就是从Excel中导入到DB中,而导出就是从DB中查询数据然后使用POI写到Excel上。 大数据的导入和导出,相信大家在日常的开发、面试中都会遇到。 很多问题只要这一次解决了,总…

调整数组使奇数全部都位于偶数前面

题目内容: 输入一个整数数组,实现一个函数, 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, 所有偶数位于数组的后半部分。 题目思路: 将奇数部分放在前半部分,偶数部分放在后半部分&am…

PySpark-核心编程

2. PySpark——RDD编程入门 文章目录 2. PySpark——RDD编程入门2.1 程序执行入口SparkContext对象2.2 RDD的创建2.2.1 并行化创建2.2.2 获取RDD分区数2.2.3 读取文件创建 2.3 RDD算子2.4 常用Transformation算子2.4.1 map算子2.4.2 flatMap算子2.4.3 reduceByKey算子2.4.4 Wor…

手把手教你制作印刷包装小程序商城

印刷包装行业越来越受到人们的重视,为了更好地满足消费者的需求,搭建一个专属的小程序商城是一种不错的选择。那么,接下来就让我们一起来学习如何搭建印刷包装小程序商城吧! 第一步:登录【乔拓云】网后台,进…

学习笔记230818---对于promise失败状态处理的重要性

问题描述: 在项目中经常会出现如上的问题,这是因为,用promise封装的接口或第三方组件方法,如果只对成功的状态做处理,就会造成页面出错,报error。 解决方法 then()的末尾加上.catch(()>{})对失败的状态…

3.小程序的通信模型

通信主体 小程序中通信的主体是渲染层和逻辑层,其中: xxx.scss和xxx.wxml是渲染层 xxx.ts是逻辑层 通信模型 小程序的通信模型发为两部分: 渲染层和逻辑层之间的通信由微信客户端进行转发 逻辑层和第三方服务器之前的通信由微信客户端进行…

Maven介绍_下载_安装_使用_原理

文章目录 1 Maven介绍1.1 Maven是介绍1.2 Maven的作用 2 Maven下载与安装2.1 官网下载2.2 文件目录2.3 环境配置 3 Maven基础概念3.1 仓库分类3.2 依赖坐标3.3 坐标组成 4 Maven配置4.1 本地仓库配置4.2 远程仓库的设置4.3 镜像仓库配置4.4 IDEA配置Maven 5 Maven项目创建5.1 M…

robotframework如何做接口测试?

robotframework(后续简称为robot)是一款自动化测试框架,可能做各种类型的自动化测试。 本文介绍通过robotframework来做接口测试。 在robot当中,python语言的接口测试库名称为RequestsLibrary 安装语法如下: pip install -U requests pip …

AP5414 DC-DC升压恒流 升降压电源驱动IC

产品简介 AP5414 是一种输入电压范围宽(0.8~5.5V),可调恒定电流和限定电流两种模式来 驱动白光 LED 而设计的升压型 DC/DC 变换器。该器件能利用单节或双节干电池驱动单 颗大功率白光 LED,同样可以利用一节锂电池驱动两颗、三颗…

基于Opencv的虚拟拖拽项目

预备知识 勾股定理 跟随移动算法 手势识别图解 项目源代码 """ 演示一个简单的虚拟拖拽 步骤: 1、opencv 读取视频流 2、在视频图像上画一个方块 3、通过mediapipe库获取手指关节坐标 4、判断手指是否在方块上 5、是,方块跟着移动 6、…

天津报web前端培训班一定要选贵的吗?

根据这几年数据显示,IT行业飞速发展,岗位需求增多,Web前端是个很新的职业,在国内乃至国际上真正开始受到重视的时间不超过五年,Web前端开发是从网页制作演变而来,名称是有很明显的时代特性。 Web前端就业形…

腾讯大佬用了8小时讲完的Python,整整315集,拿走不谢!

Python在近几年越来越受追捧,很多童鞋或者职场小伙伴想要提升技能-学习Python。 这是非常好的事情,但问题在于很多人不知道学Python做什么,所以什么零碎细末、艰难晦涩、长篇大论的都去看,很容易陷入学不下去的困境。必须要有针对…

C++笔记之std::move和右值引用的关系、以及移动语义

C笔记之std::move和右值引用的关系、以及移动语义 code review! 文章目录 C笔记之std::move和右值引用的关系、以及移动语义1.一个使用std::move的最简单C例子2.std::move 和 T&& reference_name expression;对比3.右值引用和常规引用的经典对比——移动语义和拷贝语…

基础数学问题

目录 P1143 进制转换 P1100 高低位交换 P1866 编号 P3913 车的攻击 P3383 【模板】线性筛素数 P1029 [NOIP2001 普及组] 最大公约数和最小公倍数问题 P1572 计算分数 P4057 [Code#1] 晨跑 P2651 添加括号III P2660 zzc 种田 P1403 [AHOI2005] 约数研究 P1469 找筷子 …

未来网络的选择:100G光模块与400G光模块的对比

随着互联网的快速发展和数据传输需求的不断增长,光通信技术在网络领域中扮演着至关重要的角色。光模块是光通信系统中的核心组件之一,而100G光模块和400G光模块是目前应用广泛的两种主要类型。本文将对这两种光模块进行详细的区别对比。 一、传输速率 …

亿级短视频,如何架构?

说在前面 在尼恩的(50)读者社群中,经常指导大家面试架构,拿高端offer。 前几天,指导一个年薪100W小伙伴,拿到字节面试邀请。 遇到一个 非常、非常高频的一个面试题,但是很不好回答&#xff0…