请选择 进入手机版 | 继续访问电脑版

ITIL,DevOps,ITSS,ITSM,IT运维管理-ITIL先锋论坛

 找回密码
 立即注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

查看: 1673|回复: 0

DevOps微课之云测试案例

[复制链接]
发表于 2018-10-12 10:12:29 | 显示全部楼层 |阅读模式
本帖最后由 adminlily 于 2018-10-12 10:16 编辑
8 ^$ k4 l  E) w. {8 o  W
: _# v( J4 ^6 d, k
ITILxf.com" target="_blank" class="relatedlink">DevOps微课系列旨在帮助用户学习DevOps实践。今天和大家介绍云测试案例。
- P7 @/ w2 }# q) O! o' {

/ n  O" M. r. ]+ D- d
本文适合的读者:

' m9 V; m2 S; R% v4 C7 ?5 {
/ A  {1 n' c% Q1 T
1、实现资源循环利用的实践者
; @# S- n0 r( b* F2 J/ ]

4 `# t9 i7 `* |+ e9 v
2、实现不同规格产品安全测试方案的实践者

& J. y: a! @* j

* S- C1 H  d1 i$ b  R
3、虚拟环境可视化编排、一键部署和释放环境的实践者
5 |5 `+ e% }& G  w

7 B) G3 W( I; x) J0 I: l; q
4、研发提效的管理者,DevOps爱好者
% B, |: ~. |$ V2 g: r3 Y
; Y$ x, D2 ]5 S
本方案适用于测试环境资源不足,测试不充分的项目。各项目可以结合自身特点对模板作适当的修改,即可实现本项目资源的循环合理利用。在特性移交和系统测试执行方面,各个团队也可根据自身特点,采纳使用。
+ |# N4 @' d5 g5 e# ^8 ^6 B3 c
/ |9 p# J% n, d) t' F. f# K
===================
【实践收益】通过实践可以解决以下几个问题:1. 有效解决项目资源不足导致测试用例执行不充分的现状。2. 在环境一键部署和删除、开发调试验证方面都有很不错的优势。3. 规划的特性移交方面,可以避免以前比较繁琐的流程。4. 规划的测试执行方面,可以解决目前测试结果不透明的现状。
7 v: c9 n9 G$ u
% I8 P5 B) j8 R( x- g" S
【项目痛点】
: i4 ^! t+ j' I' X. m$ U
对应商用产品项目支持多种规格,包括2核6G、4核16G、8核16G、14核20G等。面对环境资源有限、纷繁复杂的需求和应用场景,如何快速交付价值并保证不同规格的产品质量,便成为项目急需解决的问题。
1.png
       图1 项目现状分析
) ]6 e: S' X3 s$ N$ t* Q
/ g% \8 T/ @8 I5 R6 C6 e2 f) u
! T* l( O% r. J! _; @; m
8 g# ?; h3 I6 s) \9 d5 o; j
【解决思路】

5 ^* G" {* c: _  R
0 U4 H, `& F0 H, i# }
1、将云测试平台用于项目的实际测试执行和测试管理工作中,实现环境资源的重复利用,从而实现不同规格的全方面测试

) u. m) \7 W$ d4 B' ~' W/ O# u

3 ~* B# O" T- s- G! U
2、依托DevOps工具链,将云CI和云测试有效结合,深化“自动化测试/CI建设”实践,实现不同规格产品的自动化测试。

3 G4 Q: g* `+ H. {- d

! J6 E. Z, M! T1 j4 }0 _0 v
【云测试平台】

! M+ ~! f: f) |6 H" s+ a. f- s
  c. F( T8 ?  W$ x* X5 h* M3 Y
云测试平台功能概览:
1.png
图2 云测试平台功能概览

5 @6 H1 r  y4 n$ D3 h  W# h

: g7 K6 Q7 n6 ]; {
云测试平台可实现:
2 Z3 Y. o% D  [/ A

  {0 c1 x& [+ Y, R' k  a7 K+ _
  • 虚拟化环境一键动态部署,提供PAAS/IAAS应用测试环境一键自动部署和销毁;
    3 }: ?% H3 {8 _" s3 h

9 d7 \' p4 M6 x* n5 y' z* J

/ V1 }/ k' h( M. L8 T" W
  • 测试任务创建和执行;
    % R0 z" q4 ?% q6 N& S( I2 P9 @

( c* q( {) m0 X+ M/ m; ^
  • 测试结果展现和分析;
    - f/ U8 B7 R5 Q$ {6 A, A3 a
1 w1 h% Y5 R  J+ L' Z
【业务流程】
: P) C  ]+ k6 L% A$ f! g( S# Y! g

- m0 ^$ Y: {, B
如下图:
1.png
图3 业务流程

' F0 T8 G8 j3 T/ e

- j1 g' n5 I2 @2 w
流程说明:
  A: f# a5 H, F' b: I

7 m2 U1 b6 S, f  T
1. 自动化用例编写完成并合入gerrit仓库;

; x9 ~$ H- |3 q( @, }1 z7 c

4 R$ R; N  Y: h% h& o# R
2. 云测试平台提前创建好不同规格对应不同测试用例的测试任务;

/ q+ p5 o- C/ s5 E% R

' [. v3 n5 N, ~1 c
3. 云测试平台提前创建好不同规格测试环境对应的测试模板;

, s% R9 e- \7 d9 B0 W0 V# z+ I# @
$ I, i6 {; K/ C5 ^
4. 云CI上创建job,实现:代码更新->不同规格版本编译->A规格环境自动创建->A规格自动化用例执行->A规格环境销毁->B规格环境创建->B规格自动化用例执行->B规格环境销毁......->不同规格产品发布到制品库。
% O0 B  s0 ^1 v; M$ W8 E

7 B$ Y; r6 h7 \  |' B2 n5 @
【实践# Q, K' o/ n4 u" i8 g
: N8 o& D/ O! h$ Q* D8 D! E* Y
1. 云测试平台模板创建:依次点击:环境管理->EAAS环境(新)->模板选项卡

) `9 R  D$ x& j3 y

( s! a7 O' N3 A& c
2. 云测试平台不同规格任务创建:依次点击:任务管理->我的任务

2 t: m: \* C. p$ m# {  c3 R" V0 S
! q& p) p/ O+ K0 M, e  d: p$ T
3. 云CI拉通云测试实现多规格用例测试
! {4 r" Q6 T% W4 Z; f' T- S' o

3 O) T( O+ c3 a" L1 \! y+ r
【具体步骤】环境模板创建在云测试平台中建立不同规格的环境模板。
1.png
图4  2C 6G规格模板
1.png

   图5  14C 16G规格模板

4 u  x' o  G- `9 v- ?8 G9 a

- ^8 ?, W' I) R
模板的详细配置参考具体举例中“模板创建”。
' L% j" I. y' ^& B

2 w4 e% v2 Y2 R) k% B: R3 A5 l6 J
测试环境初始化任务创建4 B& x1 B) D3 V6 L" f! M! l

3 M4 h5 y' f$ ~) _( V1 }4 @" P& }) W4 I! Z. u1 |) c( o
在云测试平台->任务管理->我的任务中,创建“测试环境初始化”任务。
1.png
图6  2C 6G环境初始化任务
1.png

图7 14C 16G测试环境初始化任务

; H8 h6 K' L* z5 E- ]% Q0 I  e


3 j) X6 B8 C5 A+ G) U* `- [

测试环境初始化任务详细配置参考上述具体举例中“云测试平台不同规格任务创建”。

( W) p! k( ?5 S5 A/ G7 u

; }2 t' V& d7 t2 u

测试任务创建

1 B* u( q2 j* w, M
1.png
+ ]- j/ M2 Q- C$ `. v

图8 2C 6G测试任务

1.png

        图9  14C 16G测试任务

- }" [. U3 d: x# K- \5 v
5 m3 w0 j' X* C3 t* p! z5 N
测试任务具体配置参考上述举例中“云测试平台不同规格任务创建”。

2 a; Z! X- q& ^6 L8 P7 v6 r( w
. x; |' h3 {+ Z. @9 ?
云CI上创建job同时会发送邮件给团队成员;最后所有job执行完毕后,会释放所有环境占用的资源,白天开发会利用这部分资源进行开发验证调试,实现环境的循环利用。
' o  o! C( _. _4 \; a5 @, ~3 R4 w

/ s$ p; M! \5 Z5 g4 F. y

开发验证调试


) }& u/ z7 r, y. O* ^( S$ z


4 O$ _( H0 T1 e- }7 u8 s

云测试平台上保留开发人员创建的模板(模板不占用资源),环境一键恢复是很简单的事情。比如下图为云测试平台上开发人员创建的模板:
1.png
图10  模板
0 B, W) T; A3 K

# e  [& k, ~; j, E7 Y, M
8 L$ [) `9 [& p5 ~' B7 |! g. o
只需点击下图页面的“创建环境”按钮:
1.png
: I6 b4 ~: r  F9 j% [0 j+ ^$ f+ {7 w
图11  创建环境
6 \1 v" G1 Q5 q- V$ N+ Q
5 \* o; p( t, Z
然后点击开始创建环境即可实现环境的一键恢复。如果资源有限,环境用完即删,实现资源循环利用。

9 g3 E' u+ N& t

规划实践(特性移交)

* O% t& k8 b+ l

" D( e) N5 Y  ?  N* J* ~

目前特性移交还未在团队正式使用,但已经提出该实践建议,现大概介绍下。目前规划依托云测试进行特性移交,摆脱过去的繁琐的“发邮件并收集测试报告并反馈遗留问题”的方式。依托于云测试进行特性移交主要包括以下几个步骤:
- s  M* R& }; l. q% A
5 s9 T  t( B4 m/ e0 m
1. 开发人员功能开发完毕,测试人员编写好相关用例入库。

4 D  l* ]4 ?* ~
% b! M/ i. b4 q7 n  L3 D
2. 云平台上创建与特性相关的测试任务。建议一个特性一个任务,包括手动和自动的用例。移交时,若存在用例失败情况,并已经提jira单跟踪,开发人员及时对失败的用例进行失败分类。

9 p& f; M  `2 [5 k* {
* M( ~3 l: s9 A" I) b
3. 并创建一个全量用例的测试任务,特性移交前,执行全量用例,确定是否有特性受待移交特性的影响。
% W7 f, M6 X$ ~( i

* L$ }- v$ D/ d. r. I
4. 待特性移交时,QA或开发人员将云测试平台上相关任务的名称和id通过邮件告知系统测试人员。系统测试人员可通过云测试平台查看指定时间内,待移交特性相关用例的运行情况。如有失败用例,可通过失败分类查看失败原因,确定特性是否移交成功。
特性移交大致流程见下图:
1.png

图12  特性移交


. i, K& ?, u* g6 e- X" W8 V1 `- N

* }* b8 o5 U; y1 e- N3 {
规划实践(系统测试)
4 Y: D& S1 M5 t+ X2 X

5 @# a; @* h! |2 q) j
目前系统测试阶段主要为手动执行的用例,可通过云测试平台反馈测试结果,开发人员和管理人员可实时看到测试进度,达到了使用云测试平台对手工和自动化测试用例进行统一的管理、执行、分析。
4 H  u. _! r) ]: ?0 B
3 I3 d0 t/ r4 }& i/ b$ S
原创:张晓蕊

! \& N' @$ h5 L6 H7 L* \& B; ^; c9 N) g) J- K7 N
8 t0 {9 X6 n+ }9 c  q/ G' {




上一篇:腾讯织云的DevOps流水线应用平台践行之路
下一篇:DevOps 三十六计之日常运维-对误操作说“NO”
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

参加 ITIL 4 基础和专家认证、长河ITIL实战沙盘、DevOps基础级认证、ITSS服务经理认证报名
本站关键字: ITIL| ITSM| ISO20000| ITIL培训| ITIL认证| ITIL考试| ITSS| ITSS培训| ITSS认证| IT运维管理| DevOps| DevOps培训| DevOps认证| itop| itil4| sre| 开源ITSM软件

QQ|ITIL先锋论坛 ( 粤ICP备11099876号 )|appname

Baidu

GMT+8, 2022-5-23 05:09 , Processed in 0.116723 second(s), 31 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表