1.代码开发
GITHUB 仓库地址:https://github.com/ChavyX/serviceProvideSystem
1.1代码开发过程
6月1日开发记录:
完成的工作:数据库搭建
遇到的困难:无
6月2日开发记录:
完成的工作:项目环境搭建
遇到的困难:无
6月3日开发记录:
完成的工作:域建模,域能力域服务接口定义,实现开发
遇到的困难:无
6月4日开发记录:
完成的工作:场景编排层实现开发
遇到的困难:无
6月5日开发记录:
完成的工作:测试开发
遇到的困难:无
1.2整体项目程序
核心包:
- dao:数据库相关交互层
- domain:核心域定义和实现
- service:域服务定义和实现
- scenario:场景编排层
2.测试
2.1单元测试
针对程序接口进行业务逻辑的单元测试,编写测试用例,配合 spring-junit 进行自动化单元测试。
单元测试需要关注两个点:
- 代码覆盖率
- 测试通过率
覆盖率主要是要求代码覆盖率达到 90% 以上,即覆盖全部代码分支,尽量覆盖全部代码逻辑,确保代码逻辑正确。
测试结果如上图,覆盖率 91%,达到要求
2.2压力测试
项目还是采用前后端分离的开发模式,压力测试针对后端暴露的接口进行压力测试,目标为 500qps 情况下程序能正常运行。
压力测试采用 jmeter 工具,模拟请求同时压到接口上去,查看接口性能的响应时间。
测试结果:在 600qps 的情况下程序能正常运行,预计在 1000qps 下程序会出现响应时间延长的情况。
2.3页面测试
页面测试主要针对页面的切换,响应,交互,功能黑盒测试,适配等进行测试。
2.4测试环境
程序一般部署在 linux 系统服务器上,测试环境:
linux 64x 系统
CPU 8核
运行内存 16G 以上
浏览器以 CHROM 浏览器为主,其他主流浏览器看情况兼容测试
2.5整体软件出口条件
性能条件:500 qps 正常运行
功能条件:无明显逻辑错误,无明显程序错误,无明显影响程序正常运行的BUG
页面条件:页面整体简洁美观,交互流畅
3.alpha版本发布
3.1数据库环境
数据库使用 MySQL 5.7 版本以上
(需要修改可以联系修改)
数据库账号:root
密码:123456
数据库表结构请运行提供的 SQL 脚本
3.2运行客户端
该项目是 BS 程序,运行于浏览器,若本地部署请访问 127.0.0.1:8087
若需要线上部署,请提供域名和服务器进行部署,服务器需要 netty 环境
3.3运行环境
该程序为 Java 程序,需要 JDK1.8 版本的环境,可安装 JDK 或 JRE
3.4程序功能
- 用户功能:登录,注册,查看用户信息
- 项目功能:发布项目,修改项目,删除项目,查询项目
- 合同功能:签署合同,查看合同
- 时间表功能:添加个人时间表,查看时间表,修改时间表,删除时间表项