Skip to content

Commit 87ed97e

Browse files
committed
iniy
1 parent 230918b commit 87ed97e

File tree

55 files changed

+4347
-1
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+4347
-1
lines changed

1-Context.md

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
虎鲸计划:提升测试动力
2+
===
3+
4+
![](images/orca-mini.fw.png)
5+
6+
<!-- type 1-Context.md 2-Support.md 3-Manager.md > README.md -->
7+
8+
9+
# 背景
10+
11+
伴随着研发团队的成长,测试工作也出现了众多痛点:
12+
13+
1. 测试环境构建对测试人员部署有一定能力要求,人工处理量大,并且容易出错;每个人都需要具备部署能力,在文档有限、培训有限条件下,很难做到人人掌握。
14+
15+
2. 从零搭建项目测试环境特别冗长,近几年几乎没有改变。
16+
17+
3. 项目间测试环境具有共性,一个项目对应一套虚拟环境(虚拟机集群),甚至一个测试迭代对应一套环境,冗余度非常高,需考虑做资源的整体整合。
18+
19+
4. 测试环境搭建流程,没有做到统一性、规范性,对项目组、测试或其他部门来说,没有做到已有资源的整合(文档标准化、部署标准化、自动化或半自动化)。
20+
21+
以上种种情况,导致我们的IT基础设施中虚拟机的数量非常庞大,用途非常不明确,资源越来越紧张,与项目的互动同步越来越脆弱。
22+
23+
我们需要学习一下行业当中的优秀IT企业对基础设施编排的做法,对测试工作管理的最佳实践,以及测试与开发之间环境搭配的最佳实践。
24+
25+
# 目标
26+
27+
提升测试动力,本期方案主要的目标是:
28+
29+
* 测试工作管理支撑平台的升级,采用容器平台,节省资源;
30+
31+
* 打造测试环境管理工作流,统筹规划开发环境、测试环境,简化部署过程,统一规范标准,融合共用资源。
32+
33+

2-Support.md

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# 测试工作支撑
2+
3+
## Zentao
4+
5+
禅道开源版:http://dl.cnezsoft.com/zentao/docker/docker_zentao.zip
6+
7+
数据库用户名:root,默认密码:123456。
8+
9+
注意:需要关闭selinux
10+
---
11+
```
12+
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
13+
reboot
14+
```
15+
16+
下载安装包,解压缩。 进入docker_zentao目录
17+
18+
1、构建镜像
19+
```
20+
docker build -t zentao .
21+
```
22+
23+
2、运行镜像
24+
```
25+
docker run --name zentao -p 80:80 -d \
26+
-v /data/www:/app/zentaopms -v /data/data:/var/lib/mysql \
27+
-e MYSQL_ROOT_PASSWORD=123456 \
28+
zentao:latest
29+
```
30+
31+
## TestLink
32+
33+
1、为应用程序和数据库创建新网络
34+
```
35+
docker network create testlink-tier
36+
```
37+
38+
2、为MariaDB持久性创建卷并创建MariaDB容器
39+
```
40+
docker run -d --name mariadb \
41+
-e ALLOW_EMPTY_PASSWORD=yes \
42+
-e MARIADB_USER=bn_testlink \
43+
-e MARIADB_DATABASE=bitnami_testlink \
44+
--net testlink-tier \
45+
--volume /path/to//mariadb:/bitnami \
46+
bitnami/mariadb:latest
47+
```
48+
> 注意:您需要为容器指定一个名称,以便TestLink解析主机
49+
50+
3、为Testlink持久性创建卷并启动容器
51+
```
52+
docker run -d --name testlink -p 80:80 -p 443:443 \
53+
-e ALLOW_EMPTY_PASSWORD=yes \
54+
-e TESTLINK_DATABASE_USER=bn_testlink \
55+
-e TESTLINK_DATABASE_NAME=bitnami_testlink \
56+
-e TESTLINK_USERNAME=admin
57+
-e TESTLINK_PASSWORD=p@ssw0rd
58+
-e TESTLINK_EMAIL=admin@example.com
59+
--net testlink-tier \
60+
--volume /path/to//testlink:/bitnami \
61+
bitnami/testlink:1.9.19-debian-9-r133
62+
```
63+
64+
然后,可以通过 http://your-ip/ 访问TestLink
65+
66+

3-Manager.md

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# 测试环境管理
2+
3+
## 测试环境架构
4+
5+
* 以裸机或者工作站为基础,操作系统可以是linux或者window;
6+
7+
* 在上面的基础之上,部署自动化套件,提供自动化平台;
8+
9+
* 运用测试环境管理能力,批量启动需要的虚拟机。
10+
11+
![](images/automate.png)
12+
13+
14+
## 自动化工作流
15+
16+
1. 开发、测试、运维人员编写Vagrant工程文件,并提交到Git仓库;
17+
18+
2. 负责人向管理员提交工单需求,申请自动化平台资源;
19+
20+
3. 管理员审批工单需求,并同意新虚拟机群准入;
21+
22+
4. 管理员拉取Vagrant工程,执行测试环境管理,并校验。
23+
24+
![](images/automate-flow.png)
25+
26+
27+
## 现有环境梳理
28+
29+
1. 本篇测试环境,既不取代软件在客户现场的部署方式,也不覆盖项目组中个性化的需求(基于其他虚拟化)。
30+
31+
2. 容器平台依然为容器化部署项目的主要部署地,假如需要验证部署方案,本篇方案是首选。
32+
33+
3. 测试环境伴随测试工作,应该是一个多变的临时的环境,也即每次测试迭代都应该从初始环境开始,而不应该携带上一次测试留下的痕迹,测试迭代结束后应该立即清理本轮测试环境。
34+
35+
4. 后期,我们会加上持续部署工具,以辅助我们对环境的管理。
36+
37+

4-Vagrant.md

+349
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)