可以写进简历的软件测试电商项目,不进来get一下?

前言

说实话,在找项目的过程中,我下载过(甚至付费下载过)N多个项目、联系过很多项目的作者,但是绝大部分项目,在我看来,并不适合你拿来练习,它们或多或少都存在着“问题”,比如:

1.大部分项目是web项目,很难找到app项目,特别是有app安装包的项目大部分
2.app项目只有前端代码,没有后端服务代码,你只能以“使用者”的角色练习
3.大部分有app安装包的项目,项目作者提供的是试用app,很难保障个人隐私、账号安全等
4.大部分项目缺少部署指南,看起来一头雾水
5.有的项目涉及的业务,如果你缺少业务基础,很难上手,如支付、区块链、货币等
6.很少有统一的、能涵盖多端使用的项目

这些问题,我相信在你的学习过程中,也遇到过,并且很难解决。

但请放心,我都帮你解决好了!

在我浏览了上百个项目,亲手搭建了十多个项目之后,终于为读者粉丝们挑选出非常适合练手的一个软件测试项目,可以说非常之全面。

有了它,你就再也不用担心这类招聘了~

在这里插入图片描述

一、项目介绍

涉及技术

前端: HTML CSS JS/JQ(Bootstrap、node.js、angluar.js 等可以了解下) AJAX
PHP: PHP+MySQL session 和 cookie Nosql(redis memcache mongdb) 接口技术 缓存技术 优化技术等等
服务器方面: Linux Nginx
开发环境: WAMP 或者是 LAMP 比较常见,除此以外还有 LNMP 等

简历中或者是面试中尽量不要提及版本号,如果要写则需要把版本号对齐,否则不要写版本号

电商项目里的技术特点?

1.技术更新较快:根据市场的需求,不断迭代更新;
2.技术涉及面广:除了 PHP,还会用到 Python,GO 等其他的一些语言;数据库中 MySQL,nosql 是最频繁使用的(当然也有的公司会用 oracle,但是 PHP 一般都是以 MySQL 为主),服务器端使用 Linux(少部分公司会用到 Unix),还经常涉及到服务器安全、系统安全等安全方面的技术;
3.分布式:从前的单一的机器上运行,现在是分散到不同机器上,最后将数据集中汇总。集中式向分布式进行发展是由需求来推动;
4.高并发、集群(高可用集群)、负载均衡:由并发问题采用集群进行处理,其中,集群会涉及服务器的主从以及分布问题,使用负载均衡。(权重高低)高可用是对用户而言,用户的服务不中断(系统升级,服务不中断,公司电商系统的部分更新等);
5.海量数据:每年商家的各类活动(双 11,双 12 等等)订单量、浏览数、商品量、活动相关数据都将会超级大超级多(一般随同高并发出现);
6.业务复杂:电商业务并不简单:并不是商品展示出来后,简单的加入购物车后购买就完成了。除此以外后台业务逻辑是相当复杂,比如优惠(包邮、满减),秒杀,抢购等;
7.系统安全:系统上线必须通过系统安全部门审核通过,安全性问题正逐步的被放到台面上,而且很多企业对这块相当重视。

系统功能

本商城系统是一个综合性的 B2C 平台,类似京东商城、天猫商城

用户

1.用户可以通过注册成为商城的会员,登录商城
2.根据会员等级获得相应的优惠和特权
3.用户可以浏览商品,可以根据商品类型进行搜索
4.用户可以对购物车进行操作(增删改查商品的数量、商品详情等)
5.用户下订单、退订单,对订单的结算等

商家

1.商家可以入驻商城,在商城里开店售卖自己的商品
2.商家也有商家等级,如果在商城好评和商品销售量到达一定数量,可获得商家的一些特权
3.商家可以管理自己店铺的商品:上架下架商品;设定库存量;设定自己店铺的会员制度等

电商项目的思维导图

在这里插入图片描述

以上是大部分常用模块,如有其它模块自行补充。根据上图的体系架构,一层层的进行归纳记忆,从项目——模块——功能一点点的往深入熟悉记忆,并且加以理解。

项目团队构成

产品经理:1 人,确定需求以及给出产品原型图。
项目经理:1 人,项目管理。
UI 设计 :1 人, 制作项目原型效果图。
前端团队:1 人,根据产品经理给出的原型制作静态页面。
后端团队:3 人,实现产品功能。
运维 :1 人 ,负责公司运维项目的系统。
测试团队:2 人,测试所有的功能。(小公司不会有测试)

上述是以团队为单位,有的公司技术部不止一个团队,还有运维、UI、交互设计师等等,视情况而定

项目开发流程

在这里插入图片描述

二、电商面试常见问题

1.说说你最近做的这个项目的背景,简单的介绍一下你这个项目?(这个题至少要说清这个项目给什么类型公司或者什么行业做的,然后再来介绍这个项目的基本功能模块就可以.)你负责的模块是什么? 你负责的模块都有什么功能?

我们公司之前主要以实体店为主,进行批发与零售,业务也相对比较传统。为了适应市场需求,增强公司竞争力,提升业务绩效,另一方面,也为基于互联网的商务模式创新奠定基础。所以开始 xxx 商城建设项目,其中包含商品管理、订单管理、类目管理、客户管理、合作商管理、客服管理、购物平台、内容管理等,很大程度上分担了人工的压力,对提高客户服务效率和客户满意度能够起到较好的作用。(先大体的描述下项目,然后能够挑一两个自己最为熟悉的模块进行叙述)

2.项目的整体结构(从框架和具体技术来说)

框架方面:从大处进行描述,比如本项目是属于电商项目,采用的是 TP 框架,运用php+MySQL+Apache 进行开发。因为 TP 框架是开源的、轻量级的,所以用起来更加方便快捷,从效率和成本方面来讲都是性价比比较高的,所以那时候团队决定用这个框架进行开发。然后再从框架的一些优点特性进行说明下,让面试官觉得你对这个框架很了解技术:描述技术时首先用从自己比较熟悉的模块入手(比如说注册验证时会用到的 JS 技术、正则匹配、ajax 无刷新验证等等),然后由此慢慢的向其他方面的技术进行拓展,在说具体技术的时候如果能说到目前比较新或者是比较有难度的技术,能够让面 试官眼前一亮,这样能为自己的面试增加不少分。

3.你这个项目有多少人做? 开发多少?测试多少? 什么架构?

20个左右,开发10个,测试3个,ui测试2个 运维2个 B/S架构和app

4.B/S架构的系统从哪些点去测?

功能:链接测试、导航菜单、页面的跳转、表单测试、数据测试、业务逻辑测试
兼容性:跟客户确认其常会用的浏览器,再加上IE、火狐和谷歌等进行兼容性的测试
界面:字体颜色大小、图标和字段间距等
性能:连接速度、负载测试、压力测试
安全性:权限控制、链接封装、日志记录的测试、登陆密文、修改密码后重新登陆、登陆失效时间。

5.分布式架构,对比传统架构的优势。

①最为明显的一点,在传统的架构中,如果某个功能需要进行维护,那么我们必须停掉整个服务,这对于公司的运营会造成损失。分布式系统在核心功能模块使用单独服务器,维护部分模块不影响用户的其他操作。
②在海量数据处理方面,传统架构显得比较乏力;分布式系统架构采用服务器集群,使用负载均衡,海量数据处理游刃有余!
③在性能(检索)以及维护方面,分布式系统架构也有较为明显的优势。

6.项目分了多少模块,你负责的是哪些模块,这些模块你用了什么测试技术

在项目中主要负责相关功能的开发,主要有:

  • 后台管理系统:主要实现商品管理、商品规格参数管理、订单管理、会员管理等、CMS(内容管理系统)等,并且提供了跨域支持;
  • 前台系统:主要是面向用户访问,使用 js、ajax 进行前后台数据交互(一般是用 json 格式数据返回)
  • 会员登录:提供和用户信息相关的接口,比如说用户注册、查询等接口(登录时需要进行多重验证,特别注意安全方面)
  • 订单功能:主要是提供和订单相关的业务接口,在订单系统了做了严格的数据校验以及高并发写的支持(这里可以说使用队列实现),并且使用了定时器实现对下单的时间控制,比如说关闭超时未付款的订单;
  • 搜索功能:主要是提供商品的搜索,可以采用 Sphinx 全文搜索,当然也有其他的搜索方式;
  • 会员系统:主要是维护用户的信息,已购买订单、优惠券、系统消息、修改密码、绑定手机等功能;
  • 缓存:主要是用 Redis 实现,并且对 Redis 做了集群来保证 Redis 服务的高可用(缓存方面除了 redis 外还有 memcached)
  • 支付系统:主要是负责订单的支付、对账等功能,主要是对接了支付宝的接口;

根据个人的实际情况选择最为熟悉的模块,进行叙述

7.你的项目上写了用了什么测试技术,面试官会展开的问你这个技术

8.这个项目一共写了多少测试用例,执行了多少时间,发现了多少个bug

9. 这个项目你印象最深的bug是什么,后面怎么解决的

10.项目上线了吗?如果上线了在哪里可以看到,如果没有上线,为什么

11.你对项目的某某模块是怎么设计测试用例的,为什么这么设计

12.这个项目的数据库用的是什么,设计的表有多少张

13.这个项目后面有迭代吗?如果有是怎么迭代的,迭代后又是怎么进行测试的

14.这个项目有用到自动化测试吗?自动化测试脚本用什么语言写的,哪些模块用了自动化测试

15.项目周期,会问你这个项目做了多久,测试是什么时候介入的

16.对于大流量的网站,您采用什么样的方法来解决访问量问题?

17.Sql 语句的优化?

18.什么是页面静态化?

19.如何实现用户的安全登录?

20.Redis 有几种持久化的方式?redis 缺点是什么?

21.高并发如何处理?

受篇幅限制无法完整展示,以上面试题答案,查看方式:http://c3v.cn/1KVJub

三、功能需求描述
登陆功能怎么测试?

1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录,能否能跳转到正确的页面  2.输入错误的用户名, 验证登录失败,并且提示相应的错误信息  
3.输入错误的密码, 验证登录失败,并且提示相应的错误信息  
4.用户名为空, 验证登录失败,并且提示相应的错误信息  
5.密码为空, 验证登录失败,并且提示相应的错误信息  
6.用户名和密码都为空,点击登陆  
7.用户名和密码前后有空格的处理

性能方面的测试

1.打开登录页面,需要多长时间
2.输入正确的用户名和密码后,登录成功跳转到新页面,需要多长时间

安全性方面的测试

1.密码是否在前端加密,在网络传输的过程中是否加密 
2.用户名和密码的输入框,能否防止SQL注入攻击  
3.用户名和密码的输入框,能否防止XSS攻击  
4.错误登陆的次数限制(防止暴力破解)  
5.是否支持多用户在同一机器上登录  
6.一个用户在不同终端上登陆  
7.用户异地登陆

用户体验测试

1.页面布局是否合理,输入框和按钮是否对齐  
2.输入框的大小和按钮的长度,高度是否合理  
3.是否可以全用键盘操作,是否有快捷键  
4.输入用户名,密码后按回车,是否可以登陆  
5. 牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用

兼容性测试

BS架构:不同浏览器测试,比如:IE,火狐,谷歌,360这些。
APP:在主流的不同类型,不同分辨率,不同操作系统的手机上测试,华为,vivo,oppo等

支付功能怎么测试(特别重要)

1、从功能方面考虑

1)用户的使用场景:包括正常完成支付的流程;支付中断后继续支付的流程;支付中断后结束支付的流程;单订单支付的流程;多订单合并支付的流程;余额不足;未绑定银行卡;密码错误;密码错误次数过多;找人代付;弱网状态下,连续点击支付功能功能,会不会支付多次;分期付款等;
2)不同终端上支付:包括PC端的支付、笔记本电脑的支付、平板电脑的支付、手机端的支付等;
3)不同的支付方式:银行卡网银支付、支付宝支付、微信支付等;
4)从产品容错性上:包括支付失败后,能否再次支付、能否退款;

2、从性能方面考虑

多个用户并发支付能否成功;
支付的响应时间;

3、从安全性方面考虑

使用Fiddler拦截订单信息,并修改订单金额,或者修改订单号,(下两个订单A,B,付款时拦截订单B,并把订单B的订单号改为A订单的订单号)无法完成支付;

4、从用户体验方面考虑

  • 是否支持快捷键功能;
  • 点击付款按钮,是否有提示;
  • 取消付款,是否有提示;
  • UI界面是否整洁;
  • 输入框是否对齐,大小是否适中等。

5、兼容性

BS架构:不同浏览器测试。
APP:不同类型,不同分辨率,不同操作系统的手机上测试

购物车怎么测试?(特别重要)

1.功能测试

a)未登录时:

将商品加入购物车,页面跳转到登录页面,登录成功后购物车数量增加。

b)登录后:

  • 所有链接是否跳转正确;
  • 商品是否可以成功加入购物车;
  • 购物车商品总数是否有限制;
  • 商品总数统计是否正确;
  • 全选功能是否可用;
  • 删除功能是否可用;
  • 价格总计是否正确;
  • 商品文字太长时是否显示完整;
  • 购物车中下架的商品是否有标识,是否还能支付;
  • 新加入购物车商品排序(添加购物车中存在的店铺的商品和购物车中不存在的店铺的商品);    - 是否支持快TAB、ENTER等快捷键;
  • 商品删除后商品总数是否减少;
  • 收藏功能是否可用;
  • 购物车结算功能是否可用。

2.兼容性测试

BS架构:不同浏览器测试,比如:IE,火狐,谷歌,360这些。
APP:在主流的不同类型,不同分辨率,不同操作系统的手机上测试,华为,vivo,oppo等

3.用户体验测试

  • 删除商品是否有提示;
  • 是否支持快捷键功能;
  • 是否有回到顶部的功能;
  • 商品过多时结算按钮是否可以浮动显示;
  • 购物车有多个商品时,能不能只对单个商品结算;
  • 界面布局、排版是否合理;
  • 文字是否显示清晰;
  • 不同卖家的商品是否区分明显。

4.性能测试

打开购物车页面要多长时间

【电商项目实战】对应的相关文档,教程,源码获取入口

 

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

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

相关文章

[挖坟]如何安装Shizuku和LSPatch并安装模块(不需要Root,非Magisk)

2023年12月13日,LSPatch 停止维护 2024年1月8日,LSPosed 停止维护 2024年1月8日,ZygiskNext 停止维护 2024年1月9日,KernelSU 停止维护 这里使用 ColorOS 14 演示,其他品牌手机类似 安装 Shizuku 官网: https://shiz…

网络安全 | 什么是攻击面管理?

关注WX: CodingTechWork 介绍 攻击面管理 (Attack Suface Management, ASM) 可以持续发现、分析、修复和监控构成组织攻击面的网络安全漏洞和潜在攻击媒介。ASM可以识别目标,并根据其暴露给恶意攻击者的可能性来评估风险,获得攻击者的视角,…

【模糊逻辑】Type-1 Fuzzy Systems的设计方法和应用-1

【模糊逻辑】Type-1 Fuzzy Systems的设计方法和应用 4.1 时间序列预测4.2 提取规则的方法4.2.1 One-pass method(一次性方法)4.2.1.1数据赋值法例子1 4.2.1.1 WM方法 4.2.2 最小二乘法4.2.3 基于导数的方法4.2.4 SVD-QR方法4.2.6 迭代法 4.1 时间序列预测…

Oracle的物理结构解析

这些图是我自己画的,我也会在我的公众号【会用数据库】解析。理解起来非常简单,而且非常好记。不用死记硬背,有兴趣可以来公众号看呀。

matrix-breakout-2-morpheus

信息收集: 1.nmap存活探测: nmap -sn -r 192.168.10.1/24 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-04-06 12:13 CST Nmap scan report for 192.168.10.1 Host is up (0.00056s latency). MAC Address: 00:50:56:C0:00:08 (VMware) Nmap…

OpenHarmony实战:Combo解决方案之ASR芯片移植案例

本方案基于 OpenHarmony LiteOS-M 内核,使用 ASR582X 芯片的 DEV.WIFI.A 开发板进行开发移植。作为典型的 IOT Combo(Wi-FiBLE)解决方案,本文章介绍 ASR582X 的适配过程。 编译移植 目录规划 本方案的目录结构使用 Board 和 So…

多线程+互斥+条件变量题目

欢迎来到Cefler的博客😁 🕌博客主页:折纸花满衣 🏠个人专栏:题目解析 目录 👉🏻 完成两个线程通过条件变量实现交替打印错误代码加优化(c线程库版本)版本2(使用phtread.h库&#xff…

蓝桥杯每日一题:约数个数(质因数)

题目描述: 输入 n 个整数,依次输出每个数的约数的个数。 输入格式 第一行包含整数 n。 第二行包含 n 个整数 ai。 输出格式 共 n 行,按顺序每行输出一个给定整数的约数的个数。 数据范围 1≤n≤1000, 1≤ai≤10^9 输入样例&#xff…

机器学习知识点全面总结

机器学习按照模型类型分为监督学习模型、无监督学习模型两大类。 1、有监督学习 有监督学习通常是利用带有专家标注的标签的训练数据,学习一个从输入变量X到输入变量Y的函数映射。Y f (X),训练数据通常是(nx,y)的形式,其中n代表训练样本的大…

ARM汇编与逆向工程:揭秘程序背后的神秘世界

文章目录 一、ARM汇编语言:底层世界的密码二、逆向工程:软件世界的侦探工作三、ARM汇编与逆向工程的完美结合四、ARM汇编逆向工程的风险与挑战五、ARM汇编逆向工程的未来展望《ARM汇编与逆向工程 蓝狐卷 基础知识》内容简介作者简介译者简介ChaMd5安全团…

C语言第四十弹---预处理(下)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 预处理 1、#和## 1.1 #运算符 1.2、##运算符 2、命名约定 3、#undef 4、命令行定义 5、条件编译 6、头文件的包含 6.1、头文件被包含的方式 6.1.1、本地…

力扣面试150: O(1) 时间插入、删除和获取随机元素 HashMap结合数组

Problem: 380. O(1) 时间插入、删除和获取随机元素 文章目录 思路复杂度Code 思路 👩‍🏫 三叶题解 复杂度 时间复杂度: O ( 1 ) O(1) O(1) 空间复杂度: O ( n ) O(n) O(n) Code class RandomizedSet {static int[] nums new int[200_010];//存…

基于kmeans的聚类微博舆情分析系统

第一章绪论 1.1研究背景 如今在我们的生活与生产的每个角落都可以见到数据与信息的身影。自从上十世纪八十年代的中后期开始,我们使用的互联网技术已经开始快速发展,近些年来云计算、大数据和物联网等与互联网有相领域的发展让互联网技术达到了史无前例…

1、java语法入门(找工作版)

文章目录 一、Java简介二、Java常量与变量1、标识符2、关键字3、变量4、类的命名规则5、数据类型6、基本数据类型字面值7、变量的定义与初始化8、ASCII码和Unicode编码9、转义字符10、类型转换11、常量 三、Java运算符1、算术运算符2、赋值运算符3、关系运算符4、逻辑运算符5、…

电子积木方案开发商

东莞市酷得智能科技有限公司电子积木方案开发商 提供消费电子解决方案、提供IC技术支持,全国线上线下服务 积木小车底层驱动开发过程主要涉及到以下几个方面: 首先,需要对小车底盘结构、硬件、模块等有深入的了解。底盘承载着机器人定位、导…

C++——STL容器——string

目录 1.构造函数 模拟实现 2.析构函数 模拟实现 3.string遍历 3.1 c_str、size、lenth、capacity等 模拟实现 3.2 字符串元素访问 3.2.1 []操作符重载、at 模拟实现 3.2.2 front、back等 3.3 迭代器 模拟实现 4.赋值操作 4.1 赋值重载函数 模拟实现 4.2 assig…

如何保证全部流量走代理

最近因为某些原因,需要做一些确保高匿的事情,便花时间做了一定的调研,至于是什么事情这里不便多说。 本文主要还是聊聊我看到的一些使用代理软件误区和确保流量全部走代理的方法,甚至也可以说是Proxifier的用户使用手册&#xff…

吴恩达2022机器学习专项课程(一) 5.4 多元线性回归的梯度下降

问题预览/关键词 多元线性回归的函数是?如何向量化表达?如何计算多元线性回归的成本函数的梯度?正规方程法是什么?正轨方程法的缺点是什么? 笔记 1.多元线性回归函数 5.1章节描述过。 向量化函数 原版函数 2.计…

Redis中的持久化

持久化 .RDB手动触发save命令bgsave命令 自动触发bgsave的具体流程RDB的处理保存压缩校验 RDB的优缺点 AOF命令写入文件同步重写机制启动时恢复数据 本章重点回顾 . RDB RDB持久化是把当前进程数据生成快照保存到硬盘的过程,触发RDB持久化过程分为手动触发和自动触发 手动触发…

特朗普数字钱包被空投100万MVP,加密资产或将提供更多竞选资金

唐纳德.特朗普先生对待加密货币的态度正在发生改变,曾经他对加密货币持有负面的态度,曾多次在公开场合批评比特币等数字货币。然而,随着特朗普NFT等加密资产的上链,他对加密货币的态度也发生了巨大的转变。 据相关媒体报道&#x…