RF系列2-WEB测试第一步

上一篇 / 下一篇  2018-05-30 11:06:03 / 个人分类:Robotframework

51Testing软件测试网"Fm/~ S#['B

eF${6U3AZ F0

一.打开ride,新建工程

?+}-i@ m0

1.建议type选择:direction和txt格式51Testing软件测试网xSqK;?#O j

V^1j3EF}0

2. 工程下新建文件夹测试用例51Testing软件测试网'`S t/N |$}l

3. 测试用例下新建套件testsuit1,并导入selenium库以及OperatingSystem库

WL2vtw0

   注:除bulit库外,其他库使用前都需要先导入才能使用,可按F5可查看关键字

)G#c(Js)q3h:Z!Z5v M0

,FZ qk%a#U'UrC0

4. Testsuit下新建测试用例testcase1

;sr_-q'{ u0

5. 测试用例输入以下内容51Testing软件测试网q)w.N x[ ^

  Open Browserhttps://www.baidu.com/chrome51Testing软件测试网%oCd:Iy/lw%vo

sleep2

Hb,y f!t0

Wait Until Element Is Visiblecss=#kw3051Testing软件测试网|#t:jDi(}]9X

Close Browser

.Ly&W(|j_]0

OperatingSystem.Runtaskkill /F /IM \ chromedriver.exe /T

5Sqk.[XK,K0

 

*g rei:Fezl0

用例执行:打开浏览器并等待输入框的现实,然后关闭浏览器,并关闭chromedriver.exe

;]8}\"Y(o0

 

1xc x,A o7]6U0

*注:输入关键字时,可以使用ctrl+space,自动带出相关关键字,如果该快捷键与输入法有冲突,请更改输入法按键设置后重启电脑即可生效

3g rw'}/K Q0

6. 切换到run标签,点击start按钮,执行用例,执行完成后,点击report可以查看报告

,QrZ3OS7z0

二.生成用户关键字

zI4[h-]2]0

鼠标选中用例第一行,底色变为蓝色,右键,选择extract keyword51Testing软件测试网s}is D'c3}8fx

#|N*OxA0

输入关键字名称以及参数,给browsertype一个默认参数51Testing软件测试网W|I*PP#s;~Kh

修改关键字内容:

1rd$QNgp0

Open Browser${url}${browsertype}

:^t%GsTF`A Igf.t0

修改用例:

J;}&b^o+uC0

打开浏览器https://www.baidu.com/

k%]^:C Q0

 51Testing软件测试网w4kJ6e*sCyg

执行下,结果没问题51Testing软件测试网;w[0Y!Gg7U-S [

关键字目前是在用例目录下,我们把关键字放到单独一个目录51Testing软件测试网,|h~)rE:[RR'l*wa

根目录新建文件夹-关键字51Testing软件测试网b Hx1h u

文件夹下新建资源文件-resource51Testing软件测试网^:A9]JO-cU

把之前的关键字拖到资源文件夹下51Testing软件测试网/A1v$rr(m&d#Q E7Py

这时我们发现原来用例里面的步骤变黑了,因为关键字移动了,我们需要去引用下

fVnC p'w Q0

Testsuit里resource引用下关键字所在的资源文件51Testing软件测试网+`W3W;kp9x'J

再跑下看看,

r+GbRW0

三.使用变量

(G0F3}k8V;o0

选中用例中的url,邮件选择extract variable,生成变量51Testing软件测试网:k4JuBR

51Testing软件测试网W!a4RV(}2Fu.Y

 51Testing软件测试网l6a'h3Cq2e,t,v

新建个文件夹以及资源文件,把改变量拖动到下面,并引用

8P+dpa_L#AB0

我们还可以导入外部变量文件(py文件

%CQ0Me Ou.r2f Yq.@0

变量文件myvars.py,文件内容如下:51Testing软件测试网 r(Zre4mu

#coding=utf-8

(prMK {/H w0

import datetime51Testing软件测试网)Xn.L/Q.d S

import random

~h(GJ$Ou:ZS%J0

 51Testing软件测试网xz.a`$U2g"[1Y

username='www'

&^2@:a7As!xP0

password='123456'

e @ qa#c/}0

#列表变量

7wW F1HlNsO0

LIST__LIST1 = ["ONE", "TWO"]51Testing软件测试网&k'{+^,B#a*OF{

randomani=random.choice(LIST__ANIMALS)51Testing软件测试网.V!IBgm'CR n$]

nows= datetime.datetime.strftime(datetime.datetime.now(),'%Y-%m-%d')51Testing软件测试网;r9cT$b$[0j`

#字典变量

6Q0r5q]b j-ku0

DICT__DICT1={'id1': 001, 'id2': 002}

iy]&_Qp1I0

使用Variable导入

8R)s!gJ:_J)jT&F0

调用:51Testing软件测试网_Txrygq

log${LIST1}

{IO"H n[g%j0

log${nows}

SdW2]9m#_0

log${DICT1.id1}51Testing软件测试网R;cz2Z6}?

log${randomani}51Testing软件测试网*WjX3DuSd

我们看下套件的引用51Testing软件测试网3J-ej)Oa#}M

sx(N]nF5wuE T:]y0

 

&t `/Sz9RO w+C6\0

有个问题,如果别的套件也要引用公共关键字以及公共资源文件,每次都要引入这么多比较麻烦了,

v;t3Bp(a;e`0

可以再创建个资源,引用全部公共资源,而套件只需要引入改文件即可

3th}*x3`6hT+y @0

2K}rzI0

在套件里只需要引用这一个文件即可51Testing软件测试网.n:O6{w_? Px

(^+c-`ME5Tx1p9mg0

四.自定义库

vI2XS hDx0

1. D:\Python27\Lib\site-packages目录下创建mylibrary文件夹51Testing软件测试网%~5]9U7r:lssr

2. 文件夹下新建mylib.py

(J.^ H`;z@-p7jq0

   输入:

1er%VTTB:d0

  #codeing=utf-851Testing软件测试网yv I S'Qy!t)@

class mylib(object):

jspe@#h2j3L:B0

    def printmsg2(self):

7g]PPS8T Zq T S2R0

        print 'hello rf!'51Testing软件测试网 Iypb2{sFsD{2X

 51Testing软件测试网@$IF%ijAQ

新建__init__.py,输入

#a:[)Q:M W0

from mylibrary.mylib import mylib51Testing软件测试网 FPM5m1P/YJvh)x

 

u\YIjv-t4Z0

class mylibrary(mylib):51Testing软件测试网 t.VW_4x

ROBOT_LIBRARY_SCOPE = 'GLOBAL'51Testing软件测试网.r&Dz kU~W^Z

3. 引用-mylibrary2库,就可以直接使用printmsg2方法了

6?-cP-b:];F f7br'X0

*如果库文件需要放到工程目录下,则需要把该路径添加到python的环境变量中

B R'_}0nkT0

python文件夹下创建.pth文件,输入库的绝对路径,就可以了51Testing软件测试网t!A6RrK+AK1K

也可以在运行时动态导入库51Testing软件测试网1W0@ VQ7M V:|(wMpR

Import Library |${CURDIR}/../自定义库/mylibrary251Testing软件测试网9vpDQ*O*~

工程的基本框架如下:51Testing软件测试网OC9alY0JK1})Z#z._k

51Testing软件测试网z? K)_lqD$xig

 

Z_2X h0g7jJ.@/^+zd&F0

 

D?O;h|k0

TAG:

 

评分:0

我来说两句

Open Toolbar