十五年测试老手,长期负责WEB\APP 项目测试,目前主要负责团队管理工作。

Robot自动化测试

上一篇 / 下一篇  2013-02-13 17:08:09 / 个人分类:自动化测试

文章来源
  • 文章来源:【转载】

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~x Q*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#}tH0

2、  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}r5L5YV:UN,`C

I-W-S#XH3IT0

Documentation:注释51Testing软件测试网-Ou7gRi&mT

LIB:是整个项目所有Case需要用到的自定义库,ConnectCli.py库有下面函数:51Testing软件测试网 Y#h9Q2G }

1.cli_delay

}8_d\kdVI8V8|\r0

2.cli_connect

[`Lb n)k6z0

3.cli_close:

Bk0q9U4F}\+E'qI0

4.cli_sendcmd:

`6b|xrW#}0

5.cli_set51Testing软件测试网Yv.HV4_2H1T7M

6.cli_cmpassert:

9rM#T]sn!P}Nso0

Suite Setup是整个工程开始执行前的动作,Suite Teardown是整个工程执行完后动作,TestSetup是工程中每个Suite开始执行前动作,Test Teardown是工程中的每个Suite执行完后的动作

:?][/O `g0

这里Suite Setup:cli_connect |{IP},表示在整个测试开始前连接ECLI服务器端,Suite Teardown:cli_close,表示整个测试完成后断开连接

6n)^#t/c A0

Variable是整个项目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_0

Suite属性设置,和Project工程属性设置一样,只不过,SuiteSetup/Teardown对应本Suite所有Case,Test Setup/Teardown对应本suite每个Case执行前和后的动作51Testing软件测试网3~ sG+SMZ

 

| H&Tb#N0

4、  Case建立和设置

;n"vV ~|ce0yCI0

Init右键->>Add new case,在Init这个Suite下新建一个Case:init_switch_info

t#?2Tf,z+^V0

51Testing软件测试网 MV-?7zR'^mhm"Q

U1C d0WF]x)q0

Case属性设置,就是写测试用例了

`.YS3EG7rf'up q0

51Testing软件测试网 QA8zYhnD
51Testing软件测试网V }h#Nham_2]

测试用例: cli_sendcmd发送init.create命令,参数模拟函数入参,cli_dalay在等待0.5S后,cli_cmpassert判断返回结果

4wg'W+_T'O8o7`0

Tags:HuangYonggang,是一个标签,每个研发人员自己的测试用例打自己的标签,在写好所有Case之后,可以指定只RUN自己模块的Case

Bi,cu.wY0

5、  测试RUN

}V8~4O0N.p!O6h0

51Testing软件测试网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


TAG: Robot

thlcomeon的个人空间 引用 删除 thlcomeon   /   2013-10-24 20:53:32
你好,怎么用if,和for循环实现多次登陆。关键字是什么。谢谢
 

评分:0

我来说两句

Open Toolbar