给你一个电商网站,你如何测试?功能测试及接口测试思路是什么?
功能测试思路
1、注册测试:
测试注册表单是否可以正确提交用户信息;
测试注册表单是否有输入限制,例如密码长度、邮箱格式等;
测试注册后是否可以正常登录。
2、登录测试:
测试登录表单是否可以正确提交用户信息;
测试登录表单是否有输入限制,例如密码长度、邮箱格式等;
测试登录后是否可以正常进入用户中心页面。
3、搜索商品测试:
测试搜索功能是否可以正常工作;
测试搜索功能是否对大小写敏感;
测试搜索功能是否可以根据关键字、类别、价格、品牌等进行筛选。
4、购买商品测试:
测试商品详情页是否可以正常打开;
测试添加购物车功能是否正常工作;
测试下单流程是否正常,包括收货地址、支付方式等;
测试订单状态是否正确更新,包括未支付、已支付、已发货、已收货等。
5、商品评论测试:
测试商品评论功能是否正常工作;
测试商品评论是否可以按照时间、评分、热度等进行排序;
测试商品评论是否可以正确显示,包括评论内容、评分、评论人等信息。
6、用户权限测试:
测试普通用户和管理员用户是否可以正确访问不同的功能;
测试不同权限的用户是否可以访问相应的资源。
响应式测试:
测试网站在不同设备上是否能够正常显示和使用,例如电脑、平板、手机等。
7、安全性测试:
测试网站是否存在安全漏洞,例如SQL注入、跨站脚本等;
测试网站是否采用HTTPS协议进行数据传输;
测试网站是否存在敏感信息泄露的风险。
8、性能测试:
测试网站的负载能力,包括并发用户数、吞吐量等;
测试网站的响应时间,包括页面加载时间、交互响应时间等。
9、兼容性测试:
测试网站在不同的操作系统、浏览器、浏览器版本等环境下是否能够正常工作;
测试网站是否支持不同的语言和字符集。
10、其他等等
在测试过程中,可以使用各种测试方法,例如黑盒测试、白盒测试、集成测试、系统测试、性能测试等等,以便全面地覆盖测试用例。同时,需要注意测试用例的编写和管理,以便更好地组织测试工作和跟踪测试结果。在测试完成后,需要及时反馈测试结果和问题,并与开发人员和其他利益相关者进行沟通和协调,以便更好地解决问题,提高软件质量和用户体验。
最后,还需要根据测试结果进行测试报告的编写和总结,以便将测试结果和问题及时反馈给相关人员,并提出改进建议,为提高网站的质量和用户体验做出贡献。
接口测试思路
电商网站中进行接口测试的具体步骤:
1、了解接口文档:在进行接口测试之前,需要先了解接口文档,包括接口地址、请求方式、参数类型、返回结果等信息。
2、设计测试用例:根据接口文档设计测试用例,覆盖接口的各种情况,例如正确参数、错误参数、边界值等,以确保接口的正确性和完整性。
3、准备测试数据:根据测试用例准备相应的测试数据,并确保数据的准确性和完整性。
4、编写测试脚本:根据测试用例编写测试脚本,并执行测试脚本,以验证接口的正确性和可靠性。
5、检查测试结果:检查测试结果,包括返回结果、返回时间、返回码等信息,以判断接口是否符合预期。
6、编写测试报告:根据测试结果编写测试报告,并记录测试过程中的问题和建议,以便开发人员及时修复问题并提高接口质量。
7、定期执行回归测试:在接口升级或者修改时,需要定期执行回归测试,以确保接口的正确性和稳定性。
举例具体细节
1、注册接口测试:
测试注册接口是否可以正确处理注册请求;
测试注册接口是否可以正确验证用户输入的信息;
测试注册接口返回的状态码和响应信息是否正确。
2、登录接口测试:
测试登录接口是否可以正确处理登录请求;
测试登录接口是否可以正确验证用户输入的信息;
测试登录接口返回的状态码和响应信息是否正确。
3、搜索商品接口测试:
测试搜索接口是否可以正确处理搜索请求;
测试搜索接口返回的结果是否正确,包括商品信息、价格、评价等;
测试搜索接口返回的状态码和响应信息是否正确。
4、购买商品接口测试:
测试下单接口是否可以正确处理下单请求;
测试下单接口是否可以正确验证用户输入的信息;
测试下单接口返回的状态码和响应信息是否正确;
测试支付接口是否可以正确处理支付请求;
测试支付接口返回的状态码和响应信息是否正确。
5、商品评论接口测试:
测试商品评论接口是否可以正确处理评论请求;
测试商品评论接口是否可以正确验证用户输入的信息;
测试商品评论接口返回的状态码和响应信息是否正确。
6、用户权限接口测试:
测试接口是否可以正确处理不同权限的用户请求;
测试接口返回的状态码和响应信息是否正确。
7、安全性接口测试:
测试接口是否存在安全漏洞,例如SQL注入、跨站脚本等;
测试接口是否采用HTTPS协议进行数据传输;
测试接口是否存在敏感信息泄露的风险。
8、性能接口测试:
测试接口的负载能力,包括并发请求数、吞吐量等;
测试接口的响应时间,包括请求处理时间、响应时间等。
在接口测试过程中,可以使用各种测试工具和框架,例如Postman、RestAssured、JUnit等,以便更好地组织测试用例和管理测试结果。同时,需要注意测试用例的编写和管理,以便更好地组织测试工作和跟踪测试结果。在测试完成后,需要及时反馈测试结果和问题,并与开发人员和其他利益相关者进行沟通和协调,以便更好地解决问题,提高软件质量和用户体验。
相关文章:
给你一个电商网站,你如何测试?功能测试及接口测试思路是什么?
功能测试思路 1、注册测试: 测试注册表单是否可以正确提交用户信息; 测试注册表单是否有输入限制,例如密码长度、邮箱格式等; 测试注册后是否可以正常登录。 2、登录测试: 测试登录表单是否可以正确提交用户信息&…...
Spring Boot 3.0系列【5】基础篇之应用配置文件
有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot版本3.0.3 源码地址:https://gitee.com/pearl-organization/study-spring-boot3 文章目录 前言应用配置文件文件格式YAML获取配置属性方式1:@Value方式2: @ConfigurationProperties方式3: @PropertySource方式4…...

SQLyog图形化界面工具【超详细讲解】
目录 一、SQLyog 介绍 二、SQLyog 社区版下载 三、SQLyog 安装 1、选择Chinese后点击OK 2、点击“下一步” 3、选择“我接受”后点击“下一步” 4、点击“下一步” 5、修改安装位置(尽量不要安装在C盘),点击“安装” 6、安装后点击“…...

Linux: 中断只被GIC转发到CPU0问题分析
文章目录1. 前言2. 分析背景3. 问题4. 分析4.1 ARM GIC 中断芯片简介4.1.1 中断类型和分布4.1.2 拓扑结构4.2 问题根因4.2.1 设置GIC SPI 中断CPU亲和性4.2.2 GIC初始化:缺省的CPU亲和性4.2.2.1 boot CPU亲和性初始化流程4.2.2.1 其它非 boot CPU亲和性初始化流程5.…...

模电学习10. MOS管简单应用电路
模电学习10. MOS管简单使应用电路一、开关和放大器1. 开关电路2. 放大电路二、时序电路中作为反相器使用三、双向电平转换电路1. 原理图2. 工作状态分析(1)分析SDA,信号从左向右(2)分析SDA,信号从右向左四、…...

轻松搞懂Linux中的用户管理
文章目录概念用户账户用户组用户权限用户管理工具概念 用户管理是Linux系统管理员必须掌握的重要技能之一。Linux系统是一个多用户操作系统,可以支持多个用户同时使用,每个用户拥有自己的账户和权限,因此管理员需要了解如何创建、管理和删除…...

力扣-丢失信息的雇员
大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:1965. 丢失信息的雇员二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他…...

FPGA采集AD7606全网最细讲解 提供串行和并行2套工程源码和技术支持
目录1、前言2、AD7606数据手册解读输入信号采集范围输出模式选择过采样率设置3、AD7606串行输出采集4、AD7606并行输出采集5、vivado仿真6、上板调试验证7、福利:工程代码的获取1、前言 AD7606是一款非常受欢迎的AD芯片,因为他支持8通道同时采集数据&am…...
CSS介绍
文章目录一. CSS介绍二. CSS的引入方式三. CSS选择器一. CSS介绍 定义: 层叠样式表作用: 美化界面: 设置标签文字大小,颜色,字体加粗等样式控制页面布局: 设置浮动,定位等样式 基本语法: 选择器{样式规则 } 样式规则: 属性名1: 属性值1 属性名2: 属性值2 属性名3: 属性值3 ..…...

Auto-encoder 系列
Auto-Encoder (AE)Auto-encoder概念自编码器要做的事:将高维的信息通过encoder压缩到一个低维的code内,然后再使用decoder对其进行重建。“自”不是自动,而是自己训练[1]。PCA要做的事其实与AE一样,只是没有神经网络。对于一个输入…...

【蓝桥杯入门不入土】变幻莫测的链表
文章目录一:链表的类型单链表双链表循环链表二:链表的存储方式三:链表的定义删除节点添加节点四:实战练习1.设计链表2. 移除链表元素最后说一句一:链表的类型 单链表 什么是链表,链表是一种通过指针串联在…...

axios的二次封装
方式一:将axios单独分装到某个配置文件中import axios from axios; const axiosApi axios.create({baseURL:http://127.0.0.1:3000,timeout:3000 }) export default axiosApi在组件中使用:import $http from axios配置文件的地址 $http.get(/student/test).then(re…...
GET与POST区别(最详细)
相同点:本质上都是TCP连接。 不同点:由于HTTP规定和服务器/浏览器限制,在应用过程中区别如下: 1.get产生一个TCP数据包,post 产生两个TCP数据包 get请求,浏览器会把http header和data一起发送,…...
精选博客系列|将基于决策树的Ensemble方法用于边缘计算
在即将到来的边缘计算时代,越来越需要边缘设备执行本地快速训练和分类的能力。事实上,无论是手机上的健康应用程序、冰箱上的传感器还是扫地机器人上的摄像头,由于许多原因,例如需要快速响应时间、增强安全性、数据隐私࿰…...

JS混淆加密:Eval的未公开用法
JavaScript奇技淫巧:Eval的未公开用法 作者:http://JShaman.com w2sft,转载请保留此信息很多人都知道,Eval是用来执行JS代码的,可以执行运算、可以输出结果。 但它还有一种未公开的用途,想必很少有人用过。…...

π型滤波器 计算_π型滤波电路
滤波器在功率和音频电子中常用于滤除不必要的频率。而电路设计中,基于不同应用有着许多不同种类的滤波器,但它们的基本理念都是一致的,那就是移除不必要的信号。所有滤波器都可以被分为两类,有源滤波器和无源滤波器。有源滤波器用…...

大数据常见术语
大数据常见术语一览 主要内容包含以下(收藏,转发给你身边的朋友) 雪花模型、星型模型和星座模型 事实表 维度表 上钻与下钻 维度退化 数据湖 UV与PV 画像 ETL 机器学习 大数据杀熟 SKU与SPU 即席查询 数据湖 数据中台 ODS,DWD&…...

带你了解“函数递归”
目录 1. 什么是递归? 2. 函数递归的必要条件 2.1 接收一个整型值(无符号),按照顺序打印它的每一位。 代码如下: 2.2 编写一个函数,不用临时变量求字符串长度 代码如下: 2.3 递归与迭代 …...

网络资源面经2
文章目录Kafka 原理,数据怎么平分到消费者生产者分区消费者分区Flume HDFS Sink 小文件处理Flink 与 Spark Streaming 的差异,具体效果Spark 背压机制具体实现原理Yarn 调度策略Spark Streaming消费方式及区别Zookeeper 怎么避免脑裂,什么是脑…...

4年经验来面试20K的测试岗,一问三不知,我还真不如去招应届生。
公司前段缺人,也面了不少测试,结果竟然没有一个合适的。一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资在10-20k,面试的人很多,但平均水平很让人失望。看简历很多都是4年工作经验,但面试…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...

tree 树组件大数据卡顿问题优化
问题背景 项目中有用到树组件用来做文件目录,但是由于这个树组件的节点越来越多,导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多,导致的浏览器卡顿,这里很明显就需要用到虚拟列表的技术&…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)
目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...
LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》
这段 Python 代码是一个完整的 知识库数据库操作模块,用于对本地知识库系统中的知识库进行增删改查(CRUD)操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 📘 一、整体功能概述 该模块…...

【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
Nginx1.24编译时,报LuaJIT2.x错误, configuring additional modules adding module in /www/server/nginx/src/ngx_devel_kit ngx_devel_kit was configured adding module in /www/server/nginx/src/lua_nginx_module checking for LuaJIT 2.x ... not…...

Linux【5】-----编译和烧写Linux系统镜像(RK3568)
参考:讯为 1、文件系统 不同的文件系统组成了:debian、ubuntu、buildroot、qt等系统 每个文件系统的uboot和kernel是一样的 2、源码目录介绍 目录 3、正式编译 编译脚本build.sh 帮助内容如下: Available options: uboot …...