你能说说“淘宝购物车”怎么测试么?

news2024/11/28 0:37:18

前言

今天我给大家整理一篇面试高频问到的问题“淘宝购物车”怎么测试。

测试思维

依然附上测试任何事物的测试思路:

第一步:梳理产品的核心业务流程:明白这是个什么项目,实现了什么业务,以及是怎么实现的?

这个步骤一般是参考公司的需求文档来的,如果产品提供需求文档的同时提供了业务流程图,可以遵循流程图来梳理;如果产品没有提供流程图,就需要测试人员根据需求的理解自己画出流程图,达到梳理业务的目的。

第二步:根据流程进行模块细分,然后针对每个功能模块进行详细的测试点设计和提取。

这个单个功能的测试点提取要覆盖一下几个方面:

正常功能验证:优先覆盖正常的业务流程和功能验证,这其实也是单个功能的冒烟测试。冒烟测试先行,如果不通过,可以直接停止测试等开发修复后继续测试。
异常功能验证:为了更加贴近用户的使用产经,我们也要验证各种异常的场景,故意操作导致出错,检查系统的反馈和提示,保证用户操作失误的情况能够得到系统的友好指示。

因为有很多地方的操作都有可能会导致系统异常和抛错,所以为了不漏测,我们需要找出所有可能导致异常的输入项和选项。所以就到了第三步:

第三步:针对具体功能,寻找每个输入项和步骤,从以下三个角度来分析测试点 。
  1. 长度,数据类型,必填项,重复
  2. 需求的约束条件 + 隐形需求
  3. 功能之间的交互

这其中就需要用到一些用例的具体设计方法了,比如场景法,等价类法,边界值法,错误推测法等等

 

第四步:考虑非功能测试点,包括界面、易用性、兼容性、安全性、性能压力

淘宝购物车功能的测试点

基于上面的测试思路,我们可以分析得出淘宝购物车的测试点如下:

一、梳理淘宝购物车的业务流程如下:

进入购物车---> 加商品到购物车 ---> 编辑购物车---> 选择商品---> 提交订单

**冒烟测试:**加入商品到购物车,并进入购物车,可以选择商品提交订单,跳转到订单页面。

然后我们再来细化每个模块的测试点:

进入购物车入口

  1. 底部菜单栏,点击跳转购物车
  2. 商品详情页顶部去购物车结算,点击跳转到购物车

用户购物车的权限

  1. 已经登录的用户,点击进入购物车,可以进行购物车相关的操作;
  2. 未登录的用户,点击进入购物车,提示未登录,并弹出登录界面。

购物车相关的操作

添加商品到购物车,查看购物车显示
  1. 添加一件商品到购物车,观察购物车显示,规则、信息描述等都正常
  2. 添加同一个商家的多件商品到购物车,观察购物车显示正常
  3. 添加同不同商家的多件商品到购物车,观察购物车显示正常
  4. 商品、商家名称和描述太长,UI 显示正常
  5. 点击商品链接可以打开商品详情页
  6. 货物状态:

a、有货,并显示商品的数量

b、无货,无法勾选选择,并调试重新选择商品的规格

c、下架,移到失效宝贝,可以找相似的商品

购买数量增减操作
  1. 数量范围:

有效:1/后台最低限购梳理~ 库存/最大限购数量

无效:0,大于库存,大于最大限购数量,小于最低限购数量,检查是否有友好的报错信息

  1. 数据类型:

有效:整数字

无效:非数字,可以是从字母、字符、中文里选择一个代表测试;还有小数,负数,检查书否有提示信息

  1. 必填项:输入数量为空/或者空格,检查是否有报错信息并友好
商品支持删除
  1. 点击删除是否有提示信息,可以确认和取消按钮可用
  2. 删除后,商品不显示在购物车列表;商品总件数减 1,总价检查更新正确
商品支持移入收藏夹
  1. 点击移入收藏夹后,购物车里不显示商品
  2. 收藏夹里增加商品显示正常
选择功能
  1. 单选商品,合计里的统计数据正确,并可以取消勾选
  2. 多选商品,合计里的统计数据正确,并可以取消勾选
  3. 全选,合计里的统计数据正确,并可以取消勾选;反勾选一个商品,全选框状态变化

 

点击去结算

点击结算,可以跳转到下一个页面,金额和数量都是正确的

空购物页面

空购物车检查页面显示,可以点击”去购物“跳转首页进行购物

功能交互

  1. 优惠券,有优惠券的使用规则,价格和限制是否正确
  2. 订单处理,跟订单功能模块的交互
  3. 登录功能模块的交互(见上面的登录用户和未登录用户)

APP 专项测试

如果是 Web 端的购物车功能,此处可以忽略;

如果是移动端的淘宝购物车,除了覆盖了基本业务功能测试之后,我们一定还要考虑到 APP 的专项测试,比如 APP 自身的安装、卸载、升级,消息的推送等;特别要关注一下“中断测试”和“网络测试”!

支付中断:

购物车操作过程中如果出现一些手机的中断行为,是否会受到影响以及是否可以正常继续。常见的中断类型有:

电话中断

网络中断

闹钟中断

插拔耳机中断

保证这些中断发生的时候,购物车的跳转和操作不会影响,更加不会导致一些异常情况发生,比如 APP 突然 crash 和 ANR 的情况;

网络测试:

验证各种网络类型:2G、3G, 4G,5G,wifi 下都可以正常操作;

进行网络切换,功能正常;

弱网测试下功能正常:

  1. 购物车结算的时候,不会重复提交订单;
  2. APP 不会闪退 崩溃,而且页面提示友好;

淘宝购物车的非功能测试点

测试完以上的功能测试点之后,我们还需要验证一些非功能测试点,主要包括以下几个方面:

1)界面

验证界面的美观,排版和错别字等。

2)兼容性

移动端的淘宝购物车:

a、考虑测试手机移动端的兼容,比如手机型号

b、考虑系统版本的兼容,主流的系统版本需要测试覆盖

c、考虑不同屏幕大小及分辨率的兼容性测试

Web 端的淘宝购物车:

a、考虑浏览器的兼容性,不同的内核版本的浏览器

b、从同一个内核版本的浏览器里选择主流的浏览器进行测试

3)易用性

测试站在用户的角度考虑用户体验,使用是否方便等。

4)性能

比如大量用户同时操作等,一般需要借助工具或者代码进行测试。

5)安全

验证敏感信息是否加密,是否可以篡改;通过一些工具进行安全扫描,检查是否有安全漏洞;或者采用一些其他的手段进行专门的安全测试。

总结:

感谢每一个认真阅读我文章的人!!!

我个人整理了我这几年软件测试生涯整理的一些技术资料,包含:电子书,简历模块,各种工作模板,面试宝典,自学项目等。欢迎大家评论区留言333免费领取,千万不要错过哦。

 

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

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

相关文章

自动化测试框架unittest与pytest的区别!

引言 前面文章已经介绍了python单元测试框架,大家平时经常使用的是unittest,因为它比较基础,并且可以进行二次开发,如果你的开发水平很高,集成开发自动化测试平台也是可以的。而这篇文章主要讲unittest与pytest的区别&…

感染了后缀为.maloxx勒索病毒如何应对?数据能够恢复吗?

引言: 网络安全威胁不断进化,勒索病毒作为其中一种恶意软件类型,给个人用户和企业带来了严重的数据安全问题。.maloxx勒索病毒(maloxx Ransomware)是最近出现的一种恶意软件,它能够加密受害者计算机中的数…

建筑设计项目管理系统推荐:哪个最适合您的业务?

建筑设计用什么项目管理系统好?Zoho Projects设计行业一体化解决方案适用于以建筑设计、景观规划、勘探设计、室内设计、灯光设计、幕墙设计、工业设计、品牌设计、平面设计为主要业务的设计公司、广告公司、建筑设计院等设计机构。围绕设计行业的核心业务需求&…

媒体查询做页面的响应式布局@media

媒体查询(media)_花束javascipt的博客-CSDN博客

[JavaScript游戏开发] 绘制冰宫宝藏地图、人物鼠标点击移动、障碍检测

系列文章目录 第一章 2D二维地图绘制、人物移动、障碍检测 第二章 跟随人物二维动态地图绘制、自动寻径、小地图显示(人物红点显示) 第三章 绘制冰宫宝藏地图、人物鼠标点击移动、障碍检测 文章目录 系列文章目录前言一、本章节效果图二、介绍2.1、准备地图素材2.2、封装地图上…

GUI自动化测试进阶:页面对象模式

本文介绍的是页面对象设计模式及其常见的滥用继承的错误。 本文和语言无关,但作者主要使用python和java。本文假设读者已经具有了一定的python或java基础,知道类和方法是什么。 如果完全没有这方面的基础,请看我的《测试人员如何学Python》。…

TPS54620RHLR是一款同步降压转换器

TPS54620RHLR是一款同步降压转换器,通过高效率和集成高压侧和低压侧MOSFET,为小型设计进行了优化。通过电流模式控制实现了进一步的空间节省,从而减少了元件数量,并通过选择高开关频率,减少了电感器的占地面积。输出电…

Redis源码篇 - QuickList数据结构

Quicklist是Redis3.2之后引入的一个双向链表结构,其本质是对ziplist弊端的一个优化数据结构,ziplist是一种连续的内存空间,用于减少碎片化,减少内存占用,但是正是因为需要连续的内存空间,当数量越来越大时&…

023 - group by

GROUP BY语句将具有相同值的行分组到汇总行中 GROUP BY语句通常与聚合函数(COUNT,MAX,MIN,SUM,AVG)一起使用,将结果集分组为一列或多列。 SQL GROUP BY 语法 SELECT column_name(s) FROM tabl…

antd中的Cascader级联选择框怎么清空重置React

项目场景: React项目,使用antd中的Cascader级联选择框 问题描述: 通过其他按钮无法重置选择框中的项 原因分析:(对应解决办法一和二) 1、级联选择框的数据默认是根据options绑定的数组中的value值来进行…

Audio Clip

Unity支持的音频格式: aiff/wav:适用于较短声音片段 mp3/OGG:适用于较长的音乐片段 多声道强制转为单声道,减小所占内存。 勾选后会对声音有优化 在后台加载声音 Load Type: 第一个,以不压缩的形式存在内存&#…

idea插件开发-自定义语言02-Lexer

词法分析器或词法分析器定义文件内容如何分解为标记。词法分析器是自定义语言插件几乎所有功能的基础,比如基本语法突出显示到高级代码分析功能。由Lexer来定义。IDE在三个主要上下文中调用词法分析器,插件可以根据需要提供不同的词法分析器实现&#xf…

中南大学硕士论文latex版本全指导

要毕业了,闲下点时间写的东西。之前一直收益与师兄师姐流传下来的latex版本,用起来很舒服,希望后面的学弟学妹也能完美用上。latex功能很强大,不需要自己排版,只管内容即可,但是安装流程会多一丢丢。 目录 …

QT--day2(信号与槽,多界面跳转)

第一个界面头文件&#xff1a; #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QIcon> //图标头文件 #include <QPushButton> //按钮类头文件QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public…

弱电系统与IBMS系统,强强联手打造智能建筑

随着科技的飞速发展和人们对建筑设施需求的不断提升&#xff0c;智能建筑正逐渐成为建筑行业的重要发展方向。智能建筑是指通过应用先进的技术和系统&#xff0c;对建筑物的结构、系统、服务和管理等进行优化组合&#xff0c;实现建筑设施的智能化和自动化。当前&#xff0c;智…

全网低价乱价怎么解决

随着品牌的逐步发展&#xff0c;销售渠道也会渐渐增多&#xff0c;比如电商平台中的产品链接&#xff0c;会随着品牌销售店铺的增多、销售SKU的增多&#xff0c;链接量逐步上升&#xff0c;各链接的价格也会有高有低&#xff0c;有些还会低于品牌要求的建议销售价&#xff0c;所…

Java spring Aop实战

0目录 Spring AOP 1.实战 1.实战 创建工程和依赖 数据库建表 实体类 Mapper 接口 方法一 方法二 Service包 接口1&#xff1a; 实现接口 Mapper Mapper 1 Mapper 2 配置xml文件 Xml 1 Xml 2 Spring 配置文件 Mybatis配置文件 测试类 数据库结果 …

信息系统项目管理师(第四版)教材精读思维导图-第三章信息系统治理

请参阅我的另一篇文章&#xff0c;综合介绍软考高项&#xff1a; 信息系统项目管理师&#xff08;软考高项&#xff09;备考总结_计算机技术与软件专业技术_铭记北宸的博客-CSDN博客 目录 3.1 IT治理 3.2 IT审计 3.1 IT治理 3.2 IT审计

小创业公司死亡剧本

感觉蛮真实的&#xff1b;很多小创业公司没有阿里华为的命&#xff0c;却得了阿里华为的病。小的创业公司要想活无非以下几点&#xff1a; 1 现金流&#xff0c;现金流&#xff0c;现金流&#xff1b; 2 产品&#xff0c;找痛点&#xff0c;不要搞伪需求&#xff1b; 3 根据公司…

DAY2,Qt(继续完善登录框,信号与槽的使用 )

1.继续完善登录框&#xff0c;当登录成功时&#xff0c;关闭登录界面&#xff0c;跳转到新的界面中&#xff0c;来回切换页面&#xff1b; ---mychat.h chatroom.h---两个页面头文件 #ifndef MYCHAT_H #define MYCHAT_H#include <QWidget> #include <QDebug> /…