-
Notifications
You must be signed in to change notification settings - Fork 1
Jingguo Yao edited this page May 5, 2017
·
24 revisions
名词:
- DEV:开发人员在自己的开发机器上搭建的环境
- CI-ENV:用于CI的环境
- T:测试人员进行测试的环境
- UAT:用于全员内测和新功能内部展示。
- PROD:生产环境
- CI: CI服务器
- dev-test: 包括运行unit test和其他一些检查。
- ci-test:包括dev-test和一些额外的test case。
+------+ +-----+ +---+ +--------+
| PROD | <-- | UAT | <-- | T | <--- | CI-ENV |
+------+ +-----+ +---+ +--------+
^
|
+----+ +--------+
| CI | <-- | Gitlab |
+----+ +--------+
^
|
+-----+
| DEV |
+-----+
开发流程:
- 开发人员在Gitlab开一个issue
- 开发人员在DEV环境进行开发
- 开发人员在DEV环境运行完dev-test之后,提交一个merge request (MR)到Gitlab,并通知相关开 发人员进行review
- 开发人员和review人员进行交互
- 在得到所有review人员的一个LGTM之后,开发人员合并MR到master branch
- CI使用CI-ENV运行ci-test,如果ci-test失败,发邮件给相关开发人员,开发人员fix issue。
在开发人员完成一个大的功能实现后,启动如下测试流程:
- 开发人员为本次测试创建一个branch-XXX
- 测试准备:环境配置,代码更新和数据准备。
- 测试人员运行测试用例,如果发现问题,提交issue。开发人员在branch-XXX上fix issue。 开发人员在fix issue,需要把相应的改动加到master branch
- 每个功能点必须有相应的unit test
数据采集 性能指标
cache:
- mongodb
- redis
数据库:MySQL 5.7
Java: 1.8
- Guava
- JUnit
- Jackson or GSON
Gradle
-
Build tool: Gradle
-
Java version: 1.8
-
Library:
-
Guava
-
Jackson
-
SpringMVC
-
Web container: Tomcat 8.5