AEAI CRM 客户关系管理系统项目介绍
AEAI CRM 客户关系管理系统项目介绍1、业务背景AEAI CRM 客户关系管理系统是一个B/S架构为基础,主要应用在企业内部,为了使企业能够信息化、流程化管理的一款开源Java Web系统2、测试环境AEAI CRM 客户关系管理系统是以phpstudy中 Apache为web服务器,以一个开源的轻量级Web应用服务器——tomcat为应用服务器,开发语言为Java,使用的数据库为MySQL
AEAI CRM 客户关系管理系统项目介绍
- 项目背景
- 项目实现的主要功能
CRM(Customer Relationship Management)是用来管理公司与客户(个人和组织)、公司内部员工等之间的关系,客户信息沉淀以及带有审批流程的各商机、线索、等的业务流程。
主要实现了:
1)企业客户资源的管理,如潜在客户资源的新增、生成线索等管理
2)销售人员的管理,如销售总监可以将线索分配给销售人员后双方信息的互动
3)实现信息和资源的共享,从而降低企业运营成本
4)销售自动化
-
- 目标用户
主要应用在销售企业内部
-
- 架构和开发语言
是一个以B/S为基础架构,以Java为开发语言,基于Internet的开源 Web应用系统。本项目用到的应用服务器为tomcat,数据库为mysql
-
- 主要模块及功能
- 潜在客户模块:
- 主要模块及功能
用于新增潜在客户和生成线索(如果需要生成潜在客户,必须新增客户信息后,才可以生成线索)。
- 客户分组模块:
销售总监可以通过客户分组功能创建客户的分类,达到良好的对客户管理。
- 客户信息模块:
销售总监可以创建客户分组,然后进行分组管理,也可以安排销售人员,销售人员查看到自己的客户,进行完善,销售也可以直接增加客户提交后,由销售总监进行确认。
- 线索管理模块:
销售总监、销售人员、电销网销可以通过自己以有的客户,或者新增客户进行新增线索。然后由销售总监进行分配和处置线索。
- 拜访记录模块:
拜访后相关人员,需要填写拜访客户的相关信息,例如客户反馈的意见等等,销售总监进入系统,可以确认信息。
- 商机管理模块:
线索生成商机,然后相关销售人员对自己的商机信息进行完善后提交,在销售确认后可以生成订单。如果销售总监关闭了商机后,该商机信息被作废。
- 订单管理模块:
商机生成订单后,会在该模块中产生记录,然后销售人员需要对订单细节进一步完善,然后由销售总监进行确认。
- 基本流程:
全员新增潜在客户——新增客户信息——生成线索——总监分配线索——认领线索——生成商机——销售确认商机——生成订单——总监确认
基本流程:首先在潜在客户模块,信息采集员新增客户信息,再将有意向的客户生成线索,然后线索就出现在线索管理模块中,此时销售总监对线索进行分配,电销网销人员认领线索后需要完善线索信息以及客户信息,然后生成商机,这条商机就会出现在商机管理模块中,对接的销售人员就对商机信息进行完善提交,待总监确认后方可生成订单,订单就出现在订单管理模块,还是由销售人员对订单明细进行完善,最后由总监确认,流程完成。
- 自己负责的模块
线索管理模块
- 角色可以新增线索,编辑线索
- 新增线索时可以新增客户
- 总监对线索进行分配,指定跟进人员
- 由销售人员认领线索,并完善线索,并生成商机
- 总监可以通过分配重新激活搁置、关闭状态的线索
- 测试流程
- 流程分为几个部分
- 需求获取
- 需求评审
- 需求分析
- 测试用例设计
- 测试执行
- 流程分为几个部分
2.1需求获取
- 需求获取来源
- 需求评审会议记录文档
- 需求规格说明书:功能需求(分权显示、已认领的线索可以用来生成商机)
- 系统使用手册:获取文档中的页面设计原稿和注意事项(搁置状态:销售人员回到页面重新对该记录进行再次认领)等信息
- 数据库设计说明书:获取线索管理模块客户ID(与客户信息模块的交互)、创建时间、联系人、联系方式、状态等
- 设计规格说明说:主要内容业务描述、功能约束、界面设计、定义页面控制说明(控制方法名称+方法)、技术重点(生成商机页面内容需手动添加)
- 需求获取方式(svn)
2.2 需求评审
进行需求评审,将模糊不清、有歧义的内容拿出来讨论,等所有人确定好后建立基线
2.3测试需求分析
- 分析思路:点—面—交互、正常—特殊、异常
- 测试点分析
- 用户场景分析
- 功能交互
- 内部交互:新增线索后线索列表新增一条线索
- 内部交互:线索状态更改后线索列表中状态的更新
- 新增线索管理中新增客户功能与客户信息模块的交互
- 新增线索中插入选择客户按钮与客户信息模块的交互
- 由潜在客户生成的线索的交互
- 由线索生成商机的交互
- 按钮的功能交互:新增、编辑、删除、查看、生成线索功能交互
- 软件质量模型
- 功能性(新增、编辑、生成商机、查看、分配、认领、处置、删除)
- 适合
- 准确
- 保密安全性
- Web专项测试
- 连接测试
- 是否有死链接
- 连接书写规范(不超过255字)
- 页面跳转是否与标题一致
- 表单测试
- 测试数据的输入规则
- 测试表单的显示(适应性、界面)
- Cookie测试
- Cookie功能的实现
- 操作看是否产生cookie
- 查看cookie产生、失效的时间是否正确
- 删除、屏蔽查看影响(屏蔽时系统对cookie的提示)
- Cookie 测试用户刷新页面对cookie的影响
- 手动更改cookie值,查看能否篡改权限
- Cookie的加密处理 f12 中application cookie
- Cookie功能的实现
- Session测试
- 去配置文件修改(web.xml)session-timeout检验有效期是否合理
- 直接访问需要登陆后才能访问的页面地址(包含弹出窗口),复制出URL地址直接在粘贴在地址栏访问,如果能正常访问表示当前页面未做Session验证处理
- 传输过程中重要信息加密情况,可通过httpwatch查看
- 在同一浏览器登录同一账号、在同一浏览器登录不同账号、在不同浏览器登录同一账号
- 验证退出登录后回退的系统状态
- 文件上传测试
- 只能上传的文件类型
- 不能上传脚本或者可执行文件
- 上传超大文件似的信息提示
- 上传的文件保存在服务端硬盘,基本信息保存在数据库
- 上传文件自动重命名,防止冲突
- 数据库测试
- 连接测试
- 效率
- 易用性
- 可靠性
- 可移植
- 可维护
- 功能性(新增、编辑、生成商机、查看、分配、认领、处置、删除)
1、主要流程:就是上面讲过的流程
2、备选流程:录入的信息为有效状态,通过反核准更改状态为无效,不能进行下一步操作,只有通过核准将状态再改为有效,才能生成线索。
3、异常流程:比如说潜在客户模块,客户信息通过反核准按钮更改状态,再进行删除,这条记录就没有了,流程就走不下去。
- 需求评审流程
形成基线
- 评审发现的问题
2.4测试用例设计、编写、评审
- 测试用例设计方法
- 正交试验法:组合查询或搜索
查询中先确定因子和水平,因子为创建日期、状态、性质、名称、联系人、创建人,水平都是空与非空,使用正交设计助手,选择7因子2水平的正交表,将因子和水平映射到表中,每一行的组合是一条测试用例,再加上用的比较多的组合。
- 状态迁移:翻页功能模块、线索的搁置和关闭
- 等价类、边界值
新增中的联系方式规则是:数字,11位
有效等价类:数字、11
无效等价类:非数字、小于11,大于11
边界值:上点:11
离点:10、12
内点:11
- 编写:用到禅道(编号、项目名、用例名、重要级别、预置条件、测试输入、预期结果、)
- 评审流程及发现的问题
根据评审讨论意见修改测试用例,通过后形成基线
2.5测试执行
- SVN获取被测软件及资料
- JDK环境变量
- 卸载已有旧版本jdk :yum remove
- 上传并解压gz压缩包:rz tar -xzvf
- 移动到usr/local 下并改名: mv * usr/local jdk
- 设置环境变量:vi etc/profile.d/jdk.sh输入内容:
- JDK环境变量
Export JAVA_HOME=/usr/local/jdk
Export path=$path:$Java_home/bin
- 增加脚本的可执行权限 chmod +x
- 检验jdk是否安装成功 java -version
- 执行脚本:source
- Mysql数据库搭建
- 卸载maria db库yum remove
- 一键安装PERL DBI :yum install (dbi负责激活mysql模块)
- 创建一个mysl用户 userad -M mysql
- 上传安装mysql客户端和服务器 rz rpm -ivh *(顺序不能乱:客-服)
- 设置开机启动:systemctl enable mysql
- 启动mysql :systemctl start mysql
- 查询服务状态:systemctl status mysql (显示active :running)
- 设置一下mysql root用户密码 mysqladmin -u root password ’123456’
- 把mysql 3306端口加入到防火墙firewall -cmd --add -port=3306/tcp --zone=public --permanert
- 重启防火墙 firewall -cmd -reload
- 设置mysql允许远程登录
- 修改mysql服务器中character_set_server的字符集utf8 /etc/my.cnf
- 重启mysql服务 systemctl restart mysql
- CRM服务器搭建
- 上传、解压zip压缩包:rz unzip*
- 移动文件 mv
- 修改数据库连接配置文件hotweb中的password(加密paaedcryptor.cmd)
- 增加脚本执行权限 chmod +x /usr/local/aearcrm/bin/*.sh
- 删除旧日志:rm -f /usr/local/aearcrm/logs/*
- 修改mysql服务器配置,表名不区分大小写 vi my.cnf lower case table names=1
- 重启服务:systemctl restart mysqld
- 进入mysql创建数据库和表:mysql -u root-p
- 创建数据库和表 :create database aeaicrm、use crm、source /usr/../aeaicrm_mysql.sql
- 创建crm服务文件
- 设置开机启动aeaicrm:systemctl ennable crm
- 启动aeaicrm systemctl start
- 查询服务状态:systemctl status aeaicrm
- 设置防火墙6060端口访问 firewall -cmd --add-port=6060/tcp --zone=public --permanent
- 重启防火墙 firewall -cmd --reload
- 登录验证 http://192.168.80.128:6060/aeaicrm
(16)首先进行冒烟测试,通过后开始系统测试,每出现一个bug时就要到禅道将该条用例状态改为失败,编写缺陷报告,重点是:要仔细填写标题(格式是什么地方做了什么操作出现什么错误)、实际结果中要包含截图、判断好优先级别。
- 测试工具的使用
- Svn
- Update to reversion:回退到指定版本
- revert(回滚)操作,该操作表示用户放弃自己的更新代码,然后直接提交,这个时候你的代码就会使服务器上最新的代码,即A用户提交的新代码,你的代码不会被提交
- Diff with previous version 与前一版本的比较
- 禅道
- Httpwatch:找到post请求,查看cookie信息
- Xenu:输入测试连接,设置(最大层次),导出失败连接报表
- 禅道测试用例结果的填写
- 缺陷的管理
- Svn
- 工作成果
- 测试报告的内容
用例总数:98 缺陷数:24 通过率:75.5%
致命:0 严重:4 一般:15 建议性:5
-
- 印象最深的bug
- 在查询输入框,输入sql语言,输入’or 1=1 #时 ,表单页面空白
- cookie的篡改,将销售总监账号的cookie参数值复制到销售人员账号cookie中,会发现销售人员拥有销售总监才有的权限
- 登录时使用httpwatch查看,会发现密码用户名都是明文显示
- 自己的进步和不足
更多推荐
所有评论(0)