功能测试 之 单模块测试----抢购模块

1.先测后台,再测前台

面试题1: 当你发现研发实现的结果与需求不一致时怎么办?

需求评审的时候:需要确认所有输入类型的校验是针对单独的输入框做的还是在最终提交时校验

抢购模块:需求跟实现的内容不一致 (跟产品和研发一起确认。研发为什么要做出一个跟需求不匹配的东西如果说依旧按照需求实现,那提bug给研发进行修改;如果保留现状,产品更改需求)

面试题2:如果开发不认可你提的bug怎么办?

1.确认他拒绝的理由。

2.如果是我们bug描述不清晰,那我们自己调整;如果是需求理解不一致问题,参考需求文档。

3.如果测试 研发对需求的理解都不一致,并且需求文档没明说.需要找产品经理介入。

注意事项:所有线下讨论的结果,都要记录文案


1.后台

(1)需求分析

1)界面

  • 开关位置:后台---页面---页面管理---PC端导航栏
  • 功能位置:后台---营销---常用促销---抢购管理
  • 后台抢购列表管理可以添加抢购活动,编辑抢购活动,删除抢购活动。

其中,列表中的“已购买”是指抢购商品已经生成订单的商品数量。


2)添加请购活动

添加活动页面,红色星号代表必填信息

规则:

1.参加抢购的商品必须指明某个具体规格,比如商品的不同颜色。

2.抢购活动添加成功后,不允许修改限购数量。

3.抢购活动进行中,已有用户下单购买后,不再允许编辑抢购活动信息


3)抢购活动的状态 

抢购活动添加成功后,抢购活动有多种状态:已过期,未开始,进行中,已售罄,已结束

规则:

1.当前时间达到活动的开始时间,则活动状态由“未开始”变为“进行中”

2.活动的开始时间早于当前时间,结束时间晚于当前时间,则新建的活动状态为“进行中”

3.参加抢购活动的商品售完后,活动的状态变为“已售罄”

4.当前时间达到活动的结束时间,则活动的状态由“进行中”变为“已结束”

5.抢购活动的结束时间早于当前时间时,则新建的活动状态为“已过期”

(2)拆解测试点

1)

2)

(3)编写用例


2.前台

(1)需求分析

1)界面显示

抢购活动开始后,商城会员可以在商城前台参与抢购活动。

a.【抢购价】显示为活动中的抢购价格;

b.【抢购】显示为抢购活动的标题;

c.【库存】显示为商品参加抢购活动的数量。

抢购活动结束后或者抢购商品售罄后,商品恢复原价。

规则:

1.抢购商品加入购物车时,要求会员必须先登录账号;

2.会员抢购商品时,数量不能超过抢购活动要求的单用户限购数量,超出时页面给出提示;

3.会员抢购商品时,数量不能超过商品参加抢购活动的库存余量,超出时页面给出提示;

4.商品加入购物车时,抢购库存数量不会减少,直到生成订单后,抢购的库存数量才会减少;

5.生成订单后,取消订单,订单中的商品数量恢复到抢购的库存中;

6.抢购活动结束后,商品的价格恢复原价,库存数量恢复为原价的库存数量。

(2)拆解测试点

(3)编写用例

(4)问题点


未完待续。。。

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

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

相关文章

numpy数组的保存与加载

保存 np.save("onnx.npy", batch_output) 加载 onnx_res np.load("onnx.npy")

【面试】用属性动画和view的layoutparams做一个view的移动效果 有啥区别

属性动画:通过Animator执行动画进度过程中持续调用View的属性方法,实现View的平移、缩放、透明度、旋转动画。 对应的属性方法: // 平移属性方法 public void setTranslationX(float translationX) public void setTranslationY(float trans…

【Python教程】如何搭建一个高效的Python开发环境?结尾附安装包直通车

前言: Python 丰富的函数库和组件库是这门语言强大的核心原因!但我们不可能去记忆所有的方法名和参数名,往往只能记住一些常用的或者某个方法开头的几个字母。这个时候一个好的开发工具就需要能聪明地“猜”出你想输入的代码,并给…

Java数据结构与算法——稀疏数组和队列

一、稀疏数组sparsearray数组 该二维数组的很多值是默认值0,因此记录了很多没有意义的数据,可以采用稀疏数组进行压缩 1.基本介绍: 当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法…

深入解析Linux权限管理:从基本原理到应用

目录 Shell 命令及运行原理 Shell 与 Kernel Linux 权限的概念 命令提示符 Linux 权限管理 1. 访问者的分类 ugo 2. 类型和访问权限 3. 权限值表示方法 4. chmod 访问权限设置 掩码命令:umask 5.目录权限 粘滞位: 文章手稿见文末 Shell 命令…

Unity OpenCVForUnity 安装和第二个案例详解 <二>

目录 一、前言 二、场景介绍 1.WebCamTextureToMatExample脚本 2.FpsMonitor脚本 三、 结构体Scaler 四、找到相机并使用 1.相机的启用 2.格式转换 a.把webCamTexture转换成Mat b.把Mat转换成Texture2D 五、脚本组合 六、作者的碎碎念 一、前言 第二个案例&#xf…

大语言模型的昨天、今天和明天

引言 近年来,人工智能(AI)技术突飞猛进,其中大语言模型(LLM)无疑是最引人瞩目的技术之一。从OpenAI的GPT系列到Meta的Llama模型,大语言模型的发展不仅改变了人们对AI的认知,也在各行…

通过防抖动代码解决ResizeObserver loop completed with undelivered notifications.

通过防抖动代码解决ResizeObserver loop completed with undelivered notifications. 一、报错内容二、解决方案解释: 一、报错内容 我通过el-tabs下的el-tab-pane切换到el-table出现的报错,大致是渲染宽度出现了问题 二、解决方案 扩展原生的 Resiz…

windows桌面运维----第三天

1、电脑存储位置更改: 操作方式:使用win I打开系统设置 → 系统 → 存储选项卡 → 更改新内容的保存位置; 2、开启存储感知:自动清理临时文件 操作方式:右键开始图标(左下角)➡ 系统 ➡ 存储…

每天一个数据分析题(三百七十六)- 时间序列

影响时间序列的因素不包括以下哪个? A. 季节变动 B. 循环波动 C. 不规则波动 D. 有效性 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案

DevOps学习回顾01-技能发展路线-岗位能力-体系认知

事为先,人为重–事在人为 参考来源: 极客时间专栏:DevOps实战笔记,作者:石雪峰 课程链接:https://time.geekbang.org/column/intro/235 时代的典型特征 VUCA VUCA 是指易变性(Volatility&…

破局者:Codebeamer如何打破传统束缚,开启工程新纪元

飞速发展的数字时代,一场深刻的数字化革命正在重塑各行各业的价值链条,为产品开发组织带来了前所未有的挑战。随着电子技术和软件组件在产品设计中的地位日益凸显,传统的工程实践正经历着一场深刻的变革。为了顺应这一潮流,企业必…

【碳排放控排1006】碳排放控排企业名单数据集,探索绿色生产!

今天给大家分享的是国内顶级期刊2023发表论文《碳排放规制、企业减排激励与全要素生产率——基于中国碳排放权交易机制的准自然实验》中使用到的重要数据集——碳排放控排企业名单,该论文从企业生产效率视角对论文进行研究,发现碳排放权交易机制显著提升…

植物大战僵尸杂交版V2.1快速刷金币的方法(新号适用,无需自带招财猫)

📝个人主页:哈__ 期待您的关注 目录 1. 💻游戏介绍 2. 🔥快速刷取金币的办法(我是新号测试的) 2.1 无招财猫 2.2 有招财猫 《植物大战僵尸杂交版》是一款在原版《植物大战僵尸》基础上进行了创新的塔防…

骗小孩背单词的游戏

我小孩还没有生,我打算生2个,这样他们有竞争性。我们小时候玩过一款游戏,叫做编编战,就是通过作者进行现场在脑子里编故事,然后玩家,直接加入故事,通过讲述或者演绎,来做凭空的角色扮…

Java学习【深入解读File类:从基础到高级的完整指南】

Java学习【深入解读File类:从基础到高级的完整指南】 ⭐File的概述和构造方法⭐File常见的成员方法🌙构造方法🌙length()🌙getAbsoluteFile()和getPath()🌙getName()和lastModified() ⭐文件的创建和删除⭐获取并遍历 …

【OpenHarmony开发】 tracepoint的机制总结

一、tracepoint 的机制 1.1 DECLARE_HOOK 解析 DECLARE_HOOK(vendor_bond_check_dev_link,TP_PROTO(const struct bonding *bond, const struct slave *slave, int *state), TP_ARGS(bond, slave, state)); ​ // 在已经实现如下宏定义的前提下 // CONFIG_TRACEPOINTS 和 CO…

代码随想录算法训练营DAY41|背包问题 二维 、背包问题 一维、416. 分割等和子集

背包问题 二维 题目链接:背包问题 二维 def bag_weight_problem(n,space,weight,value):dp [[0 for i in range(space1)]for j in range(n)]for i in range(weight[0], space1):dp[0][i]value[0]for j in range(1, n):for k in range(space1):if weight[j]>k:…

力扣410.分割数组的最大值

力扣410.分割数组的最大值 分割数组 使得子数组最大值最小 凡是最小化最大值和最大化最小值的题都是二分答案二分子数组最大值 求当前数组可以分为几段 class Solution {public:int splitArray(vector<int>& nums, int k) {auto check [&](int mid) -> bo…

Leetcode Hot 100 刷题记录 - Day 1

问题描述&#xff1a; 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 示…