Robot framework是诺西(NSN)开源的一套自动化测试工具,在通信设备自动化测试中很实用,它基于Python开发,主要模拟NMS网管配置数据到网元NODE,并读取配置看配置是否生效,ECI的测试简图51Testing软件测试网+q*c6]+L${
D4U0E[YT"A
C6~S_u\&B,I051Testing软件测试网i2E7Jr6|z~H|U9L,S
1、 环境建立51Testing软件测试网-r~xQ*y0w'i
首先安装Python,接着到http://code.google.com/p/robotframework/下载安装Robot framework,在目录C:\Python27\Scripts下会发现pybot.bat,说明安装成功,比如写好测试用例工程autotest,可以用pybot--suite autotest做整个Suite的测试,或者pybot ***.html单个Case的测试
!jgZ
r@M"w}R0 其实这样足够了,但是没有一个IDE环境,生成测试用例不够便利,诺西还开发了一个Robotframework IDE,就是Robot framework-ride,它依赖Wxpython,安装Wxpython之后,接着到http://code.google.com/p/robotframework-ride/安装Robot framework-ride,在目录C:\Python27\Scripts下会发现ride.py,利用IDE生成测试工程autotest,运行ride.pyautotest即可
OX"c#}tH02、 Project工程建立和设置
x[7SCx'@AU;j.T0首先在Python27\Scripts下运行ride.py,运行IDE,工具栏->>file->>NewProject新建自动化测试工程,建立D:\autotest工程51Testing软件测试网ENtl"|!ee
51Testing软件测试网#d d:y3f [-U
K
51Testing软件测试网k0^b"S1u+jj
T
工程属性设置51Testing软件测试网bG
D7{Iih
51Testing软件测试网%Q5}r5L5Y V:UN,`C
I-W-S#XH3IT0Documentation:注释51Testing软件测试网-O u7gRi&mT
LIB:是整个项目所有Case需要用到的自定义库,ConnectCli.py库有下面函数:51Testing软件测试网
Y#h9Q2G}
1.cli_delay
}8_d\kdVI8V8|\r02.cli_connect
[`Lb
n)k6z03.cli_close:
Bk0q9U4F}\+E'qI04.cli_sendcmd:
`6b|xrW#}05.cli_set51Testing软件测试网Yv.HV4_2H1T7M
6.cli_cmpassert:
9rM#T]sn!P}Nso0Suite Setup是整个工程开始执行前的动作,Suite Teardown是整个工程执行完后动作,TestSetup是工程中每个Suite开始执行前动作,Test Teardown是工程中的每个Suite执行完后的动作
:?][/O`g0这里Suite Setup:cli_connect |{IP},表示在整个测试开始前连接ECLI服务器端,Suite Teardown:cli_close,表示整个测试完成后断开连接
6n)^#t/c
A0Variable是整个项目Python需要用到的变量定义以及赋值,相当于别名
(z+l
RIaP$X
O0 51Testing软件测试网:L4c Bgs
3、 Suite建立和设置51Testing软件测试网a\,P
\j6_h{f~
Autotest右键->>Add suite,新建一个Suite:init
Z0_B%hLV c
Tv0
gLC){!gC/P ]"^0
m [ y ~$ON"I5m_0Suite属性设置,和Project工程属性设置一样,只不过,SuiteSetup/Teardown对应本Suite所有Case,Test Setup/Teardown对应本suite每个Case执行前和后的动作51Testing软件测试网3~ sG+SMZ
|
H&Tb#N04、 Case建立和设置
;n"vV
~|ce0yCI0Init右键->>Add new case,在Init这个Suite下新建一个Case:init_switch_info
t#?2Tf,z+^V051Testing软件测试网MV-?7zR'^mhm"Q
U1C
d0WF]x)q0Case属性设置,就是写测试用例了
`.YS3EG7rf'up q051Testing软件测试网 QA8zYhnD
51Testing软件测试网V}h#Nham_2]
测试用例: cli_sendcmd发送init.create命令,参数模拟函数入参,cli_dalay在等待0.5S后,cli_cmpassert判断返回结果
4wg'W+_T'O8o7`0Tags:HuangYonggang,是一个标签,每个研发人员自己的测试用例打自己的标签,在写好所有Case之后,可以指定只RUN自己模块的Case
Bi,cu.wY05、 测试RUN
}V8~4O0N.p!O6h051Testing软件测试网yAq-`_)rl
51Testing软件测试网`;e2oJ/I~3Y
Z!J
人工选择测试Case或者TAG来区分,最后在D:\autotest生成Report.html和LOG文件51Testing软件测试网'T5h
mK5c'D9[
51Testing软件测试网+@ kV3m~A xg
m]3\QQ'M0这是一个生成的Report.html文件
;j+n#S
wj {7j'a$fB0 51Testing软件测试网YB(L Pflul)m
IDE只是提供一个便利操作接口,很多时候用命令行pybot–i HuangYonggang ***.html标示只测试tag为HuangYonggang的Case51Testing软件测试网t?5rU#VJ6u p]
Y\8l
51Testing软件测试网D&ayHYU~KJ 51Testing软件测试网e.lW'V$p"Hk