面试的高频题:购物车怎么测?

本文详细介绍了购物车功能测试的方法,包括界面、功能、性能、兼容性和易用性测试,并以京东购物车为例进行深入分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

博主是一枚新进测试的小菜鸟,如有遗漏点,请指出,谢谢大佬了(*^_^*)


前言

这篇文章是为了督促自我进步和学习测试思维的一篇文章

文章出处:转载自:守护往昔 - 博客园

目的:对自我的升级,加深自我的知识和思路。

这篇文章会诞生的原因:每个人的成就和知识,都不是与生俱来的,人都是可以通过后天的学习来不断的对自我进行一个升级。JOJO:人类是有极限的,所以我不做人(*^_^*)。

咳咳,开个玩笑话,回归正题。俗话说:活到老,学到老。虽然大家都是人,但人与人之间也并不相同。

拿学习一个新东西来举例:

人家:哦,不愧是你啊,陆老师!学到了,赶快记下来。

我:哦,有点东西啊,陆老师!学到了,进收藏夹(吃灰)。

时间一长,就可以看出人家在进步,我在原地踏步。为了改变这个现象,因此我也准备写下来,毕竟,好记性不如烂笔头嘛

一、测试点的分析基本原则(通用)

第一步:先了解产品的基本业务流程(逻辑):是什么项目,做什么的,怎么工作的?

  • 画出流程图,进行业务逻辑梳理

第二步:细分模块,针对每个小功能模块进行详细的划分:

  • 正常:覆盖正常核心的业务流程--优先测试?--带个功能冒烟测试
  • 异常:各种异常?--贴近用户的使用场景,确保产品的正确处理,提示友好!
    • 注意:确保不会遗漏,列出输入项异常

第三步:针对具体功能,寻找每个输入项,从以下角度来进行具体分析测试点

  • 长度,数据类型(特殊字符),必填项(null),重复
  • 需求的约束条件+隐形需求
  • 结合业务流程的步骤
  • 功能交互——交叉

第四步:考虑非功能测试点:

  • 界面、易用性、兼容性、安全性、性能压力

以京东为例:核心业务流程

购物车的流程分析:

京东购物车入口:

 购物车界面:

 未登录进入购物车:

 购物车为空:

购物车的功能点:

1、入口测试:我的购物车,去购物车结算

2、用户类型:登录的用户,未登录的用户

3、商品清单:

  • 按店铺展示商品清单,包括图片、名称、单价、数量、小计等;
  • 显示店铺合计金额、商品总结金额
  • 购买数量可进行增减-- 等价类、边界值
  • 商品支持删除、移到关

4、选择商品

  • "全选"
  • 单个勾选、部分选;
  • 删除选中商品,移入关注,清理购物车

5、去结算

  • 点击“去结算”
  • 跳转至订单确认界面--交互验证

6、空页面处理

  • 当购物车商品为空时, 可选择“去购物”

购物车如何测试:功能点

 以上内容为转载,出自:守护往昔 - 博客园


第一步界面测试

  1. 打开页面后,通过直观的观察页面的布局是否合理,显示是否完整;
  2. 不同卖家的商品在不同的table区域显示,区分明显;
  3. 商品的最下面显示失效的商品;
  4. 页面的功能按钮可以正常显示;
  5. 页面的最低端显示“你可能喜欢”;
  6. 向下滑动页面,在购物车顶端展示“购物车”;
  7. 购物车中如果存在有商品降价、库存不足、限购件数等,在商品详情的下面,会有对应的字体展示;

第二步功能测试:

  1、若未登录,点击购物车,则提示用户输入用户名和密码,或者提示其他的非注册用户购物方式;

  2、所有页面链接功能正常,可以点击到正确页面;

  3、从商品信息页面添加的商品能显示在购物车中;

  4、购物车页面刷新后,新的商品能显示;新加入购物车商品排序(添加购物车中存在店铺的商品和购物车中不存在店铺的商品);

  5、商品未勾选的状态下,结算按钮是灰色无法点击的;·勾选商品,点击结算按钮后,进入确认订单信息页面;勾选商品后,已选商品的总价会显示,结算按钮变高亮可点击工作价格总计是否正确;

  6、购物车页面中,可以对添加的商品信息做信息的修改,并自动保存成功;

  7、购物车商品总数是否有限制;

  8、商品总数是否正确;全选功能是否好用;

  9、商品文字太长时是否显示完整;店铺名字太长时是否显示完整;

  10、不要的商品,可以删除;商品删除后商品总数是否减少;

  11、购物车有商品降价或者库存告急的,那么点击对应的tab,降价或者告急商品会归类后显示;购物车中下架的商品是否有特殊标识;

第三步性能测试:

  1、打开购物车页面要多久;

  2、结算时间需要多久;

  3、增加删除商品响应时间;

第四步兼容测试:

  1、不同浏览器上的测试功能是否正常;

  2、相同浏览器的不同版本测试功能是否正常;

第五步易用性测试:

  1、删除功能是否有提示;是否有回到顶部的功能;

  2、商品过多时结算按钮是否可以浮动显;


总结

首先,你需要明白购物车的作用,他在系统设计中主要是用于用户临时存放有意向购买的商品,因此在设计中,除了界面美观,好用之外,还要引导用户去进行付款操作。因此该模块还会和多数模块如:用户,商品,订单,支付等模块有复杂的关联,所以购物车模块的测试除了要保障基本的功能的实现,还需要进行考虑和其他模块之间的业务的关联及影响。最后还要考虑整体的兼容性及性能等等方面。

<think>我们正在准备软件试实习生的面试。根据引用内容,我们可以总结出几个关键点:1.试模型(如W模型)的理解(引用[1]) 2.试用例设计方法(引用[2])3.试流程(引用[2]和[3])4.试类型(如alpha试和beta试)(引用[3]) 5.可能涉及一些运维相关的命令(引用[4])因此,我们需要围绕这些方面来准备面试指南。**软件试实习面试准备指南**###一、软件试基础概念1. **软件试的定义与目的**软件试是通过运行程序来发现错误,并确保软件质量满足需求。目的是尽可能早地发现软件缺陷,并确保缺陷被修复。 2. **软件试模型**-**V模型**:强调试与开发阶段的对应关系,单元试对应编码,集成试对应设计,系统试对应需求分析,验收试对应用户需求。-**W模型**(引用[1]):试伴随着整个软件开发周期,试对象包括需求、设计等。例如,需求分析完成后,试人员应立即参与验证需求,尽早发现问,减少总体试时间。###二、试用例设计1. **试用例的要素**(引用[2])通常包括:用例编号、用例标、前置条件、操作步骤、预期结果、实际结果、优先级等。 2. **试用例设计方法**(引用[2])-**等价类划分**:将输入划分为若干等价类,从每个等价类中选取代表值进行试。-**边界值分析**:针对输入域的边界进行试(如最小值、最大值)。-**因果图法**:通过分析输入条件之间的组合关系来设计试用例。- **场景法**:根据用户场景设计用例,模拟用户操作流程。- **错误推法**:基于经验推可能存在的错误点。需要掌握每种方法的适用场景、操作步骤和优缺点。###三、软件试流程(引用[2]) 1. **需求分析**:分析需求文档,提取测试点。 2. **试计划**:制定试范围、资源、时间、策略等。3.**试设计**:设计试用例和试数据。 4. **试执行**:执行试用例,记录缺陷。 5. **试评估**:评估试覆盖率和产品质量,输出试报告。 ###四、试类型1.**功能试**:验证软件功能是否符合需求。 2. **性能试**:试系统在特定负载下的响应时间和稳定性。3.**验收试**:-**Alpha试**(引用[3]):在用户组织模拟环境下进行,由用户或第三方试公司执行。-**Beta试**(引用[3]):由最终用户在实际使用环境中进行,收集反馈意见。 ###五、常见面试1. **基础理论**:-什么是软件试?为什么要做软件试?-解释V模型和W模型,以及它们的区别。-什么是黑盒试和白盒试?它们分别适用于什么阶段? 2. **试用例设计**:-如何试一个登录页面?-如何试一个水杯?-给定一个场景(如微信发朋友圈),设计试用例。 3. **缺陷管理**:-缺陷的生命周期是怎样的?-你如何描述一个缺陷?(包括标、步骤、预期结果、实际结果、严重程度等) 4. **工具使用**:-是否使用过任何试管理工具(如JIRA、禅道)?-是否了解自动化试工具(如Selenium)? 5. **其他技能**:-是否了解数据库基本操作(如SQL查询)?-是否了解Linux常用命令(引用[4])?例如查看日志、文件权限管理、进程管理、磁盘管理等。###六、技能要求1. **基础知识**:软件试理论、试方法、试流程。2.**技术能力**:了解至少一种编程语言(如Python、Java)、数据库基础(SQL)、操作系统(Windows/Linux命令)。3.**工具使用**:试管理工具(如禅道)、缺陷管理工具(如JIRA)、自动化试工具(如Selenium)的基本概念。 4. **软技能**:沟通能力、学习能力、细心和耐心。###七、面试准备建议1.**复习基础理论**:重点掌握试模型、试用例设计方法、试流程。 2. **练习设计试用例**:针对常见应用(如登录、搜索、购物车)进行试用例设计练习。3.**熟悉工具**:了解常用试工具的基本操作。4.**模拟面试**:练习回答常见问,注意表达清晰有条理。§§相关问§§1.软件试中的黑盒试和白盒试有什么区别? 2.如何设计试用例来试一个电商网站的购物车功能? 3.在软件试中,缺陷的生命周期包括哪些阶段? 4.软件试实习生通常需要掌握哪些工具?</think>### 软件试实习面试准备指南 结合行业标准和引用内容,以下是针对试实习生岗位的完整准备方案,覆盖核心概念、高频及技能要求: --- #### **一、软件试基础理论** 1. **试模型** - **W模型**(必考): 试贯穿整个开发周期,需同步验证需求和设计文档。例如:需求分析阶段试人员需参与评审,识别逻辑矛盾或遗漏(引用[1])。 $$试活动 = \int_{需求}^{交付} (设计验证 + 代码验证) \,dx$$ - **V模型**:开发与试的对应关系(单元试→编码,系统试→需求分析)。 2. **试类型** - **Alpha试**:用户在模拟环境中验证产品(如公司内部试环境)(引用[3])。 - **Beta试**:真实用户在实际环境中试(如公版),收集反馈意见(引用[3])。 - *面试高频*: > _"Alpha和Beta试的区别是什么?请举例说明。"_ --- #### **二、试用例设计(重点考察)** 1. **设计方法论**(引用[2]): - **等价类划分**:输入域分类(有效/无效类),如试登录框: | 输入类型 | 有效等价类 | 无效等价类 | |----------|----------------|------------------| | 用户名 | 6-12位字母数字 | 特殊字符、空值等 | - **边界值分析**:试数据边界(如最小值-1、最大值+1)。 - **场景法**:模拟用户操作流(例如电商下单流程:搜索→加购→支付)。 2. **用例评审维度**(引用[2]): - 覆盖需求完整性 | 步骤可执行性 | 预期结果明确性 - *面试高频*: > _"如何试一个水杯?请设计试用例。"_ *参考答案:功能(装水/漏水)、安全(材质毒性)、用户体验(握感)等。* --- #### **三、试流程与缺陷管理** 1. **标准试流程**(引用[2][3]): ```mermaid graph LR A[需求评审] --> B[试计划] --> C[用例设计] --> D[执行试] --> E[缺陷跟踪] --> F[试报告] ``` 2. **缺陷生命周期**: 新建 → 指派 → 修复 → 复 → 关闭 - *关键点*:需清晰描述缺陷(步骤+预期结果+实际结果+截图)。 --- #### **四、技能要求与工具** 1. **硬技能**: - **数据库**:基础SQL(`SELECT`, `JOIN`, 数据校验) - **Linux命令**(引用[4]): ```bash grep "ERROR" /var/log/app.log # 日志分析 ps -aux | grep java # 进程检查 ``` - **自动化基础**:Selenium元素定位原理(如XPath)、Postman接口试。 2. **软技能**: - 需求理解能力 | 缺陷描述清晰度 | 团队协作意识 --- #### **五、高频面试清单** 1. 基础概念: - 解释黑盒试 vs 白盒试? - 回归试的作用是什么? 2. 场景: - 如何试登录功能? - 发现Bug后开发不认可,如何处理? 3. 工具使用: - 用过哪些缺陷管理工具?(JIRA/禅道) - 如何用Charles抓取手机端请求? > **提示**:回答时采用 **STAR原则**(情境→任务→行动→结果),例如: > _"在课程项目中,我负责登录模块试(情境)。通过等价类划分设计20条用例(任务),发现密码框未做长度限制(行动),推动开发修复后通过复(结果)。"_ --- #### **六、学习资源推荐** - **书籍**:《软件试的艺术》 - **实战平台**:LeetCode库、TestLink用例管理练习 - **模拟面试**:参考引用[3]的40道真解析
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值