软件测试金融项目经验总结,面试题都问什么?接口加解密如何处理?

news2025/1/18 20:16:53

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

加/解密接口的处理

软件测试面试题:https://www.bilibili.com/video/BV1Lq4y137aR/

目标
知道项目中接口加解密的实现流程;
了解加解密的代码实现;
知道Jmeter如何实现接口加解密测试;
知道基于Requests如何实现接口加解密测试;

1、APP端/客户端接口加解密介绍
加密方式(两种)
在TCP/IP四层模型中的应用层进行加密。类似密码本,当前项目使用的是这种,可以看到所有响应内容,只是看不懂。

在TCP/IP四层模型中的运输层和应用层之间进行加密,通过传输协议实现加密,如https。类似加密路径,此种加密方式抓取到的报文响应内容全是乱码

2、加解密接口测试时的要点
核心就是:编写出与应用服务器相匹配的加密和解密方法

所以在公司中加解密的接口测试如何进行:
找开发来要加解密的方法(因为项目代码中一定有对应的加解密方法);
在测试环境中将加解密的方法跳过(需要跟开发讨论,看难度和影响而定);

BUG定位分析

要求:
基本要求:定位出bug所属前端还是后端
更高要求:bug所属模块,bug的代码级别(不要求)

价值:
找到BUG的复现路径,提升开发修复BUG的效率
提升自身的逻辑思维与技术能力

定位的技巧:
1、逻辑分析
分析所有可能,逐个排查
找到最短复现路径
案例:玩CF游戏,从高处跳下来,概率出现不掉血的情况 —— bug
分析问题可能的原因:高度、重量、地形、姿势……
针对每一个维度分别进行测试分析,将其他因素固定,只改变其中一个因素
最终确定会产生bug的影响因素

2、技术手段
查看数据库
抓包分析
查看服务器日志

案例/面试题:界面上添加用户,在用户列表中未看到对应的用户信息

查看数据库中是否有对应的用户记录
有则说明,题目中的两个操作,添加用户的操作成功,查看用户的操作失败
没有则说明,添加用户的操作没有成功

针对第一步确定下来失败的业务操作进行抓包,观察所有的请求和响应数据,同时抓取服务器的日志

先看响应码,如果响应中有4XX错误,客户端请求有问题;5XX错误,服务端有问题(大概率是BUG);2XX,则需要进一步的分析

响应为200时,检查响应内容:
响应正确,但前端页面显示不出来,查看响应字段和前端定义字段是否匹配,若不匹配,找前端人员来确定是前端/后端没定义好;

响应错误,检查请求参数是否正确
请求参数不正确,前端代码问题;
请求参数正确,但响应错误,结合服务器日志来进行问题的定位(大概率为后端代码问题);

备注:服务器日志需要与开发人员确定其所在位置(可写入日志文件,也可能直接打印在命令行窗口)

测试面试:金融项目测试经验的阐述(全部要结合具体的案例来回答)

1、项目的介绍 项目是做什么的?
2、项目给谁用的?
3、项目包含哪些主要功能?
4、项目的技术架构是什么?
5、项目的核心业务流程是什么?
6、项目的测试过程是什么?

  • 参与需求评审,进行需求分析
  • 写测试计划并评审
  • 编写测试点和系统测试用例并评审,如果有接口测试则编写接口测试用例并评审
  • 执行接口测试用例(手工和自动化执行),执行系统测试用例
  • 编写测试报告并评审

7、如何测试自己负责的功能模块?(即测试用例怎么设计)

  • 从功能、性能、易用性、兼容性……各个维度进行测试
  • 功能测试时,首先针对每个页面中的功能点设计测试用例;如:。。。。具体的那个页面哪些功能点,通过哪些方法设计的,然后再针对业务流程设计测试用例;如:。。。。。同上
  • 性能测试时,如。。。
  • 易用性,如。。。
  • 兼容性:如浏览器、操作系统、分辨率。。。。。

8、接口测试用例如何设计?
单接口的设计

  • 正向(成功):必填参数、全部参数
  • 反向(失败):
    参数错误:多参,少参(优先级低)
    参数数据错误:数据为空,长度范围错误,类型错误(优先级中)
    业务数据错误:基于业务功能返回错误异常(参考API中定义的不同的错误描述)——(优先级高)结合项目的业务来说。。。

多接口的设计

  • 整理出系统的业务流程,结合项目的业务来说。。。
  • 把业务流程中的每个动作对应接口整理出来,结合项目的业务来说。。。
  • 按照业务流程的顺序进行测试,结合项目的业务来说。。。

9、接口测试的时机/目的是什么?(问清是指手工执行接口测试还是自动化接口测试)
手工执行接口测试

  • 时机:后端开发完成,但前端没有开发完成
  • 目的:尽早发现BUG

自动化接口测试

  • 时机:在项目测试全过程
  • 目的:保证项目质量,避免开发修改代码引人新问题(感觉和回归测试差不多)

10、如何准备接口自动化测试过程中的数据?(一个项目中需要的数据情景是很多样性的,这三种情景都会出现)

手工构造:只需要一次构造可以长时间使用的数据
接口方式构造:需要多次构造,且数据相对比较复杂的情况
数据库防暑:需要多次构造,但数据涉及表结构比较简单(数据涉及的表结构不超过两张)

11、如何使用Jmeter编写接口自动化脚本?
会编写接口自动化脚本
每个测试用例对应Jmeter中的一个线程组
使用HTTP取样器发送请求
补充用法:数据定义、响应结果的数据关联、响应断言……

对自动化数据能进行自动化清除
配置JDBC连接池
通过JDBC Request请求,执行清除数据SQL语句

Jmeter脚本部署到持续集成

12、如何使用代码编写接口自动化脚本?
先搭建框架(api、script、log、report、utils、app)
定义日志初始化配置和运行脚本的套件
编写脚本时
先定义API接口类
在测试脚本中调用API的接口类

13、如何保证接口自动化测试脚本的稳定性?
跑完脚本后清除测试数据
断言时通过连接数据库的方式获取实际的数据,而不使用固定数据

14、项目中涉及到第三方接口时如何进行接口测试?
通过mock技术,模拟第三方系统接收请求,并返回响应

15、项目测试过程中发现的印象深刻的BUG
发现/定位困难,如概率性BUG
有技术含量的BUG,如接口、白和测试,通过代码分析发现的BUG(不是手工容易构造的BUG)
BUG沟通过程中,比较曲折,并最终解决

以上是印象深刻的BUG的思路,结合自己的项目来准备

16、项目测试过程中遇到的问题

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只要你有目标,就要一步步往前走。不要怕困难,不要放弃希望。只要努力奋斗,就一定能创造属于自己的未来。相信自己,你定会成功!

人生路漫漫,奋斗不止。没有什么比坚持更重要的事情了,无论遇到挫折或者失败,都不要放弃自己的梦想和执着。你一定会成功!

不要为失败停步,勇往直前。不要让别人的眼光左右你的选择,相信自己,坚定走下去。奋斗的过程总是充满挑战和困难,但只有坚持才能品尝成功的滋味。加油!

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

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

相关文章

JAVA数据结构之顺序表、单向链表及双向链表的设计和API实现

一、顺序表 顺序表在内存中是数组的形式存储 类名SequenceList构造方法SequenceList(int capacity):创建容量为capacity的SequenceList对象成员方法1. public void clear():空置线性表 2. public boolean isEmpty():判断线性表是否为空&…

浅谈java网络编程及RPC框架

目录 1.计算机网络 2.TCP/IP协议 3.UDP协议 4.RPC框架 1.计算机网络 从资源共享的角度上来说,计算机网络就是以能够相互共享资源的方式互连起来的自治计算机系统的集合。网络建立的主要目的是实现计算机资源的共享。 目前来说,计算机网络分为两大模…

JRE和JDK 及 常用DOS命令

JRE和JDK Java程序开发的三个步骤 ●编写代码 ●编译代码 ●运行代码 1.编写代码 A.txt JRE : JRE是Java Runtime Environment缩写,指Java运行环境,包含JVM虚拟机及Java核心类库。 类:java文件在代码中的集合体现( 类java文件&#xf…

CAD转SHP最好的方法 赶快收藏起来吧

1、利用 ArcToolsbox 工具先将 DWG 文件转为 MDB 通过 CASS 软件生成的 DWG 文件,字段中包含有很多属性内容,所以我们先将 DWG 格式 的文件转换为 MDB 格式,再通过 MDB 转换为 SHP 格式数据进行整理。具体步骤如下: 通过 ArcTool…

jenkins——凭据管理

这里写目录标题 一、Jenkins 凭据管理1、凭据管理入口2、凭据的新增3、用户名和密码方式的凭据配置4、SSH密钥方式的凭据配置5、凭据的更新和删除6、凭据的使用 一、Jenkins 凭据管理 凭据管理的作用:管理ssh、邮箱、git等认证信息 1、凭据管理入口 Dashboard —…

深度学习实战24-人工智能(Pytorch)搭建transformer模型,真正跑通transformer模型,深刻了解transformer的架构

大家好,我是微学AI,今天给大家讲述一下人工智能(Pytorch)搭建transformer模型,手动搭建transformer模型,我们知道transformer模型是相对复杂的模型,它是一种利用自注意力机制进行序列建模的深度学习模型。相较于 RNN 和…

【微信小程序】数据监听器,纯数据字段

一、数据监听器 1.1 什么是数据监听器 数据监听器用于 监听和响应任何属性和数据字段的变化,从而执行特定的操作 。它的作用类似于 vue 中 的 watch 侦听器。在小程序组件中, 在componets中新建一个test2文件夹在文件夹里新建component 在app.json …

C学习笔记3

1、将一个整数转换成二进制形式,就是其原码。(通俗的理解,原码就是一个整数本来的二进制形式。) 例如short a 6;a 的原码就是0000 0000 0000 0110 2、反码就区分正负数,因为正负数的反码是不一样的,正数…

2023年MathorCup数模D题赛题解题思路

MathorCup俗称妈杯,是除了美赛国赛外参赛人数首屈一指的比赛,而我们的妈杯今天也如期开赛。今年的妈杯难度,至少在我看来应该是2023年截至目前来讲最难的一场比赛。问题的设置、背景的选取等各个方面都吐露着我要难死你们的想法。难度是恒定的…

Euro-NCAP 2030愿景

每隔五年,Euro NCAP都会将利益相关者聚集在一起,研究当前的汽车技术现状,预测未来几年可能的挑战,并确定未来的机会所在。讨论的结果是该组织的未来发展方向和明确的未来愿景:Euro NCAP 2030年愿景。 2020年初,Euro NCAP开始制定一套新的战略目标,打算在下一年公布其《2…

STM-32:SPI通信协议/W25Q64简介—软件SPI读写W25Q64

目录 一、SPI简介1.1电路模式1.2通信原理1.3SPI时序基本单元1.3.1起始和终止1.3.2交换字节 二、W25Q642.1W25Q64简介2.2W25Q64硬件电路2.3W25Q64框图2.4Flash操作注意事项 三、软件SPI读写W25Q643.1接线图3.2程序代码 一、SPI简介 SPI是串行外设接口(Serial Periph…

Spring Boot异步任务、异步消息

目录 1.异步任务 1.1.概述 1.2.使用 2.异步消息 2.1.概述 2.2.使用 1.异步任务 1.1.概述 举一个例子,我现在有一个网上商城,客户在界面点击下单后,后台需要完成两步: 1.创建客户订单 2.发短信通知客户订单号 这里面第2…

selenium 连接已经打开的chrome浏览器 MAC

selenium 连接已经打开的chrome浏览器 MAC 一,前言 今天在爬取chatGPT的谷歌插件的prompts的时候,发现绕不过他的反爬机制,失败111,所以想用连接已打开的chatGPT页面进行控制 二,具体步骤 1,添加环境变…

Android入门

一、Android系统架构 Android大致可以分为4层架构:Linux内核层、系统运行库层、应用框架层和应用层 1.1Linux内核层 Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了如显示、音频、照相机、蓝牙、Wi-Fi等底层的驱动。 1.2系统运行层…

2023MathorCup 高校数学建模挑战赛D题思路解析

如下为MathorCup 高校数学建模挑战赛D题思路解析: D 题 航空安全风险分析和飞行技术评估问题 飞行安全是民航运输业赖以生存和发展的基础。随着我国民航业的快速发展,针对飞行安全问题的研究显得越来越重要。2022 年 3 月 21 日,“3.21”空难…

如何使用vim的插件Ctags查看Linux源码

一.ubuntu下安装Linux内核源码 (1).查看自己的内核版本 (2).查看源内的内核源码类表 (3).下载源码 (4).进入/usr/src (5).解压下载的文件到用户主 二.安装vim插件Ctags和使用 插件的介绍 Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或其它工…

2023年的深度学习入门指南(4) - 在你的电脑上运行大模型

2023年的深度学习入门指南(4) - 在你的电脑上运行大模型 上一篇我们介绍了大模型的基础,自注意力机制以及其实现Transformer模块。因为Transformer被PyTorch和TensorFlow等框架所支持,所以我们只要能够配置好框架的GPU或者其他加速硬件的支持&#xff0…

同为科技(TOWE)防雷科普篇1—雷电灾害认识与雷电预警信号解读

前 言 雷电是自然界最为壮观的大气现象之一。其强大的电流、炙热的高温、猛烈的冲击波以及强烈的电磁辐射等物理效应能够在瞬间产生巨大的破坏作用,常常导致人员伤亡,击毁建筑物、供配电系统、通信设备,造成计算机信息系统中断,引…

电风扇出口欧美CE/UL507认证办理

电风扇简称电扇,是一种利用电动机驱动扇叶旋转,来达到使空气加速流通的家用电器,主要用于清凉解暑和流通空气。风扇主要由扇头、叶片、网罩和控制装置等部件组成。电风扇的主要部件是:交流电动机。其工作原理是:通电线圈在磁场中受力而转动。…

Streamlit 中函数多次进入的问题

Streamlit 函数多次进入的问题 Streamlit 学习的背景重要案例心得踩坑或注意点 Streamlit 学习的背景 最近在学习ai相关的知识,同时需要做一些方便使用的web网页。 例如:调用chatGPT的api,做对话窗。 之前用过gradio, 但是发现在手机端上&am…