做好功能测试需要的8项基本技能【点工进来】

news2024/11/17 1:42:55

功能测试是测试工程师的基础功,很多人功能测试还做不好,就想去做性能测试、自动化测试。很多人对功能测试的理解就是点点点,如何自己不用心去悟,去研究,那么你的职业生涯也就停留在点点点上了。在这里,我把我对功能测试的理解写下来。

那么,功能测试需要掌握哪些方面的技能?

一、 熟练使用SQL

1、常用的 sql 语句一定会写。比如说增删改查之类。

2、了解数据库的事务、会编写存储过程、熟练常用的系统函数。

3、了解并可以进行数据库的备份、迁移、还原、镜像等操作

4、对 sql 语句进行调优,并对可以对运行的语句监控查看性能

5、了解数据库集群等操作。

二、 Linux

Linux是测试人员的基础功,不需要掌握太难或者很不常见的Linux命令,正常能做到查看日志,定位问题就可以了。

1、基本命令

常用的Linux基本命令,面试经常会问的,或者给出一种场景,问你用什么命令。

2、查看日志

初级测试人员在工作时经常遇到,发现bug,开发不承认或者不愿意解决的情况,测试人员怎么摆脱这样的问题呢?那就是根据发现的bug根据日志级别,来查看日志,定位问题。

那这里首先要说一下日志级别了。首先记住这一点:日志级别越高,输出的信息越少 。

具体的日志级别分为四级:

info : 代码 info 信息,不包括sql语句等一些debug信息

warning warning : 代码警告信息

error : 程序本身报错信息 java.lang.outindexERROR.....

critical :几乎用不到

一般不符合需求的bug在 debug中,程序本身报错的bug在 error中。

三、 使用数据库,跟数据流向

1、数据库的本质

常见数据库主要是MAYSQL、ORECAL、Redis,其中Mysql数据库是典型的关系型数据库

2、数据库操作

(1) 数据库和表操作

(2)表数据操作

(3)复杂sql查询

四、写好测试用例

在测试过程中很重要的一类文档,它是测试工作的核心、是一组在测试时输入输出的标准、是软件需求的具体对照。编写测试用例,是测试人员的基本功,但是真正能写好的人并不多。

测试用例必须包含的内容:

用例编号、用例名称、测试背景、前置条件、优先级、重要级、测试数据、测试步骤、预期结果、实际结果、备注。

1、测试用例的编写流程

需求分析 --> 提取测试点 --> 测试用例编写 --> 测试用例评审

2、编写测试用例的思路

(1)根据产品的RPD,提取测试点。

(2)根据数据流的走向。

(3)根据的架构部署。

(4)编写测试用例的常用方法:等价类划分法、边界值分析法、流程图法等。

(5)覆盖弱网测试、接口测试、安全测试、性能测试等。

(6)常用测试工具有:Postman、 Charles、 Fiddler 、Jemter、Loadrunner等。

3、编写测试用例注意事项

(1)根据项目的实际情况设计测试用例表格

(2)用例格式不要生搬硬套

(3)根据具体情况编写

(4)学会质疑需求,不要完全按照需求来写测试用例,要从客户和产品的角度来理解需求,看到需求之外的功能和体验

4、管理测试用例

为什么要管理测试用例?

(1)测试用例数目巨大

(2)测试用例会根据需求的改变而改变

(3)测试用例需要长期补充完善

如何管理测试用例?

(1)原始的Excel管理

(2)专业的项目管理系统(eg:git、禅道、JIRA、Confiuence等)一般都为web格式

五、 http与https协议

面试经常关于Http协议的下面几个问题

1、Http协议原理

2、http和http协议的区别

3、TCP和UDP的区别

4、session和token的区别

5、公钥和私钥的理解

6、get和post的区别

7、从输入URL到页面加载发生了什么

8、什么叫代理,正向代理和反向代理?

六、了解业务

做功能测试,一定要了解业务,甚至理解业务。只有把业务吃透,才能把功能测试做好,并且有一定的提高。业务熟悉后,会知道很多常识,知道下面的常识之后,你就可以尝试进阶,学习做自动化测试、接口测试、性能测试

1、什么时候介入自动化 => 当你系统趋于稳定的时候

2、什么时候介入接口测试 => 当接口开发完毕的时候

3、什么时候介入性能测试 => 当出现促销的时候,或者抢购的时候(618大促,过年抢火车票,抢优惠券)。比如说,5000张优惠券,大概有多少人抢,在多长时间内抢完。

七、 bug管理

做功能测试,还有个很重要的工作就是bug管理,一个优秀的的测试人员,线上bug非常多,多于和你一起工作的其他同事,但是线上bug非常少,少于其他同事。

1、 bug定义

(1)不符合需求的

(2)程序本身报错

(3)不符合用户的使用习惯

2、bug生命周期

当我们测试人员提交一个bug的时候,自始bug就有它的生命周期,从开始到结束。

3、bug单内容

Bug描述(summary)

环境信息:操作系统/数据库/浏览器/软件版本(OS/Database/Project/Build/Release)

所属功能模块

测试/开发人员

严重等级(1-5)

客户优先级

风险程度

状态

重现步骤

实际结果

是否要回归问题等

4、测试报告

把测试的过程和结果写成文档,对发现的问题和缺陷进行分析,为纠正软件的存在的质量问题提供依据,同时为软件验收和交付打下基础测试报告和测试计划一样,一般由测试leader编写,测试人员需要了解一下测试报告中都有哪些内容。

八、 典型bug

1、抓包作用: 测试一个app搜索功能,抓包,抓到一个搜索接口,突然发现抓到了两个请求接口 -> 当访问量上来了,服务的压力上升两倍

2、数据流走向 : 测试时候发现页面上数据只有一条,但是数据库里面多了一条 -> 1、数据量变大,查询变慢 2、脏数据太多,瞬间爆满,程序崩溃了

3、弱网测试:app项目一定要有弱网络测试(模拟2g、3g、4g,wifi网络状态以及丢包情况);网络切换测试(网络断开后重连、3g切换到4g/wifi 等)

总结下来,做好功能测试并不是一件容易的事情。我做了两年的互联网功能测试来,还是很多知识不明白,只有不断的学习,自己才能成才。

很多人功能测试都做不好,就想做性能测试、自动化测试,其实是好高骛远,我觉得基础打好了,再去学习性能测试、自动化测试什么什么的,肯定事半功倍。

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!朋友们如果需要可以自行免费领取 【保证100%免费】朋友们如果需要可以自行免费领取 【保证100%免费】

加入我的软件测试交流群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

软件测试面试小程序

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

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

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

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

全套资料获取方式 :

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

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

相关文章

重磅新书上市,带你看看了不起的芯片!

千呼万唤始出来,我的第一本书《了不起的芯片》今天正式和大家见面啦! 任何一本书的背后都有一段不为人知的曲折故事,在此和大家分享一下我写这本书的心路历程。希望我的经历对你能有一些帮助,也希望你能喜欢我的作品。我还为大家申请了专属优…

vite3+vue3 项目打包优化三 — CDN加速、文件压缩

1. CDN在线加速 内容分发网络(Content Delivery Network,简称 CDN),是构建在数据网络上的一种分布式内容分发网,它可以让用户从最近的服务器请求资源,以提升网络请求的响应速度。 通常情况下,…

tcp套接字的应用

tcp服务端流程 tcp客户端流程 客户端代码 tcpClient.hpp #include<iostream> #include<string> #include<cstring> #include<stdlib.h> #include<unistd.h> #include<sys/types.h> #include<sys/socket.h> #include<netinet/in…

DG4pros高楼区地籍建模项目报告

引言 据睿铂统计&#xff0c;目前约70%倾斜摄影相机都用于测量项目&#xff0c;其中绝大部分是地籍测量相关项目。例如黑龙江某客户已使用睿铂相机累计完成约1000平方公里的地籍项目。倾斜摄影技术虽然在农村地籍测量项目中应用较好&#xff0c;但却无法解决高楼区域地籍测量的…

使用 SD-WAN 实现企业级 WAN 敏捷性、简易性和性能

VMware SD-WAN 提高了敏捷性和成本效益&#xff0c;同时确保跨 WAN 的应用性能。 当今的分支机构用户正在使用更多的广域网 (WAN) 带宽&#xff0c;因为他们需要通过 Zoom、WebEx、Microsoft 365 等工具进行在线协作&#xff0c;更多地用到 “软件即服务”(SaaS) 和云计算服务…

【python资料】pandas的条件查询

一、说明 在使用Pandas的DataFrame进行数据挖掘的时候&#xff0c;需要形形色色的条件查询&#xff0c;但是这些查询的基本语法是啥&#xff0c;查询的灵活性如何&#xff0c;本文将对他们进行详细列出&#xff0c;便于以后查阅。 二、Pandas条件查询方法 2.1 简单条件查询 1、…

「API接口的技术说明文档

API技术文档是指软件系统或应用程序的API接口的技术说明文档。它详细描述了API端点&#xff0c;资源&#xff0c;参数&#xff0c;请求和响应格式以及使用API的常见用例和最佳实践。 1.为什么需要API技术文档&#xff1f; API技术文档是API的唯一方法&#xff0c;以便开发人员…

分享18个好用的ChatGPT插件

上周ChatGPT又进化了&#xff0c;支持联网还有70几种第三方插件&#xff0c;不过还是老样子&#xff0c;只服务氪金玩家&#xff0c;免费端可能还得等等。之前只开放了俩插件&#xff0c;网络浏览器和代码解释器&#xff0c;只能说是真的不够用。 ChatGPT&#xff1a;不够&…

中间件(三)- Kafka(二)

Kafka 6. 高效读写&Zookeeper作用6.1 Kafka的高效读写6.2 Kafka中zookeeper的作用 7. 事务7.1 Producer事务7.2 Consumer事务 8. API生产者流程9. 通过python调用kafka9.1 安装插件9.2 生产者&#xff08;Producer&#xff09;与消费者&#xff08;Consumer&#xff09;9.3…

【实验】SegViT: Semantic Segmentation with Plain Vision Transformers

想要借鉴SegViT官方模型源码部署到本地自己代码文件中 1. 环境配置 官网要求安装mmcv-full1.4.4和mmsegmentation0.24.0 在这之前记得把mmcv和mmsegmentation原来版本卸载 pip uninstall mmcv pip uninstall mmcv-full pip uninstall mmsegmentation安装mmcv 其中&#xff…

你若在患难之日胆怯,你的力量便微小

如果你在做一件事情之前就过分放大它的困难&#xff0c;这就会逐渐降低自己去做它的动机和动力&#xff0c;还没开始你就已经削弱了自己的行动能力&#xff0c;在气势上就已经输了。 不要害怕困难&#xff0c;勇敢的去面对问题&#xff0c;解决问题&#xff0c;你就会在气势上更…

RK平台烧录固件的几种模式

在RK平台开发过程中&#xff0c;我们在使用烧录工具烧写固件的时候经常可以看到烧录工具会显示当前PC识别到的设备类型&#xff0c;一般有&#xff1a;MASKROM&#xff0c;LOADER&#xff0c;ADB&#xff0c;MSC等等。能烧录固件的模式有MASKROM模式和LOADER模式&#xff0c;下…

Python基础教程:第八章_Python文件操作

文件的编码 学习目标 掌握文件编码的概念和常见编码 思考&#xff1a;计算机只能识别&#xff1a;0和1&#xff0c;那么我们丰富的文本文件是如何被计算机识别&#xff0c;并存储在硬盘中呢&#xff1f; 答案&#xff1a;使用编码技术&#xff08;密码本&#xff09;将内…

STM32WB55_NUCLEO开发(12)----FUS 更新

概述 在 STM32WB 微控制器中&#xff0c;FUS&#xff08;Firmware Upgrade Services&#xff09;是用于固件升级的一种服务。这项服务可以让你更新设备上的无线栈固件&#xff08;如蓝牙、Zigbee或 Thread 栈&#xff09;&#xff0c;以及无线 MCU (microcontroller unit) 的系…

day5 - 利用阈值勾勒

阈值处理在计算机视觉技术中占有十分重要的位置&#xff0c;他是很多高级算法的底层逻辑之一。本实验将练习使用图像阈值处理技术来处理不同的情况的图像&#xff0c;并获得图像轮廓。 完成本期内容&#xff0c;你可以&#xff1a; 了解图像阈值处理技术的定义和作用 掌握各阈…

PyQt5 使用 pyinstaller打包文件(speed)

编写界面 import sys,math from PyQt5.QtWidgets import * from PyQt5.QtCore import Qt from PyQt5.QtGui import *class RightBottomButton(QWidget) :def __init__(self):super(RightBottomButton,self).__init__()self.setWindowTitle("界面One")self.resize(400…

1.8G专网工业路由器促进4G智能电力建设,赋能配电站远程监控管理

TD-LTE已是当下成熟的4G通信技术&#xff0c;应用无线专网的场景也越来越多&#xff0c;4G技术在电力物联网中也得到了广泛应用。依托传统的人工监管方式&#xff0c;效率低、成本高、维护难&#xff0c;为促进4G智能电力建设迫切需要方便快捷的在线监控方式来及时发现电力配网…

xss跨站,订单,shell箱子反杀记

打开一个常见的订单靶场&#xff0c;老师自己搭建的 这个是可以进行xss漏洞的测试&#xff0c;凡是有这种数据交互的地方&#xff0c;前端有一个数据的接受&#xff0c;后端是数据的显示&#xff0c;这个过程就符合漏洞产生的前提条件&#xff0c;将输入的数据进行个显示&#…

BUUCTF-Basic部分(4道)

目录 Linux Labs BUU LFI COURSE 1 BUU BRUTE 1 BUU SQL COURSE 1 Linux Labs 第一个界面&#xff0c;给出了SSH ssh 用户名&#xff1a;root 密码&#xff1a;123456 地址和端口为动态分配的 以及映射地址和端口&#xff08;这个地址端口是随机的&#xff09; node4.buuoj.c…

R语言实践——使用 rWCVP 生成自定义清单

使用 rWCVP 生成自定义清单 介绍1. 特有物种清单2. 近特有物种清单2.1 在塞拉利昂和另一地区出现的物种2.2 在塞拉利昂和相邻地区出现的物种 3. 生成自定义报告 介绍 除了允许用户从世界维管植物名录&#xff08;WCVP&#xff09;创建清单外&#xff0c;rWCVP还提供了修改清单…