ride out

更新时间:2022-11-26 14:18:11 阅读: 评论:0


2022年11月26日发(作者:出国留学考试有哪些)

RobotFramework中RIDE⽤法总结

今天总结下RobotFramework最基本的⽤法,⼀来呢,希望⾃⼰以后看到这篇总结,很快能回忆起如何使⽤RobotFramework。⼆来呢,以初学者的姿态

总结RobotFramework,希望帮助到刚⼊门,却⽆从下⼿的新⼿们,毕竟⽹上很多资料可能是⼀些⼤神整理的,跳跃性很⼤。

⽬录

⼀,环境的搭建

关于robotframework环境搭建请参考笔者的另外⼀篇博⽂:

⼆,最基本流程

2.1创建项⽬NewProject

File->NewProject

注:选择directory原因是,在directory的项⽬下可以创建测试套件,如果是tpye为file,则只能创建测试⽤例,这不利于⽤例的管理。

2.2创建测试套件NewSuite

右键项⽬Test,点击NewSuite。

注:选择file原因是,在file的测试套件下可以创建测试⽤例,如果是tpye为directory,还得重新再继续建file的测试套件,才能创建测试⽤

例,因为测试⽤例只能在file类型下创建。

2.3创建测试⽤例NewTestCa

右键测试套件,点击NewTestCa。

最终页⾯显⽰

三,Ride各个⾯板说明

3.1测试套件⼯作区说明

3.1.1测试套件Edit区

⼤体分成4个部分。

(1)加载外部⽂件

Library:加载测试库,主要是[PYTHON⽬录]Libsite-packages⾥的测试库。具体操作可查看博⽂下⽅的“”。

Resource:加载资源,主要是你⼯程相关的资源⽂件。具体操作可查看博⽂下⽅的“”。

Variables:加载变量⽂件,不怎么⽤,可暂时忽略。

(2)定义内部变量

AddScalar:定义变量。

AddList:定义列表型变量。

AddDict:

(3)元数据定义

AddMetadata:定义元数据。

(4)ttings

⼀般ttings是隐藏的,点击ttings按钮,则会显⽰。

Documentation:⽂档,每⼀项都有。可以给当前的对象加⼊⽂档说明。

SuiteSetup指的是测试套件启动的时候就执⾏某个关键字。(例:我在SuiteSetup设置了Sleep|5c,表⽰等待5秒,要注意关键字的参数

要使⽤|分隔)

SuiteTeardown指的是测试套件结束的时候就执⾏某个关键字。

TestSetup指的就是案例启动的时候执⾏某个关键字。

TestTeardown指的就是案例结束的时候执⾏某个关键字。

TestTemplate:测试模版,这是可以指定某个关键字为这个测试套件下所有TestCa的模版,这样所有的TestCa就只需要设置这个关键

字的传⼊参数即可。

TestTimeout:设置每⼀个测试案例的超时时间,只要超过这个时间就会失败,并停⽌案例运⾏。这是防⽌某些情况导致案例⼀直卡住不

动,也不停⽌也不失败。

ForceTags:在⽂件型Suite这⾥还可以继续给⼦元素增加ForceTags,但是他不能删除⽗元素设置的tags。

DefaultTags:默认标记,其实和ForceTags没啥区别的。

Arguments:传⼊参数。

ReturnValue:返回值。

3.1.2测试套件TextEdit区

测试套件测试⽤例⽂本信息。

3.1.3测试套件Run区

ExecutionProfile:选择运⾏⽅式,⾥⾯有pybot、jybot和customscript。默认pybot即可。

Start:运⾏案例。若该测试套件下的测试⽤例前⽆勾选,则默认执⾏该测试套件下所有的⽤例。若测试⽤例勾选,则执⾏该测试陶见下勾选

的⽤例。

Stop:停⽌案例。

Report和Log:报告和⽇志,要运⾏之后才能点击。他们的区别,报告更多是结果上的展⽰,⽇志更多是过程的记录,更多使⽤的还是⽇志。

Autosave:⾃动保存,如果不勾选,在修改了案例之后如果没有保存的话,运⾏案例时会提⽰是否保存。勾选则在运⾏时⾃动保存了。

Arguments:pybot的参数(或者jybot等)。完整版的参数可以在doc命令⾏输⼊--help

OnlyRunTestswiththeTags:只运⾏这些标记的测试案例。在ca的tting⾥可以添加tag。

SkipTestswiththeTags:跳过这些标记的测试案例。在ca的tting⾥可以添加tag。

3.2测试⽤例⼯作区说明

3.2.1测试⽤例Edit区

(1)ttings

Documentation:⽂档,每⼀项都有。可以给当前的对象加⼊⽂档说明。

Setup指的就是案例启动的时候执⾏某个关键字。

Teardown指的就是案例结束的时候执⾏某个关键字。

Tags:标记某个测试⽤例。在Run区中OnlyRunTestswiththeTags和SkipTestswiththeTags,会通过这个标志位来识别是否运⾏或

跳过⽤例。

Timeout:设置每⼀个测试案例的超时时间,只要超过这个时间就会失败,并停⽌案例运⾏。这是防⽌某些情况导致案例⼀直卡住不动,也

不停⽌也不失败。

Template:测试模版,这是可以指定某个关键字为这个测试套件下所有TestCa的模版,这样所有的TestCa就只需要设置这个关键字的

传⼊参数即可。

(2)表格区

最重要的部分,编写测试⽤例。

第⼀列⼀般写的是关键词,关键词的来源包括BuiltIn库,第三⽅导⼊库,⾃⼰编写的导⼊库。详见博⽂下⽅关于库的说明:。

使⽤技巧:

通过ctrl+alt+space可以⾃动带出相关关键字。以及相关⽤法,⾥边有对⼊参的说明。

Ctrl+⿏标悬浮(即⿏标在某个关键字上),可以直接显⽰关键字的相关⽤法。

第⼆三四五列,⼀般是⼊参,红⾊的表⽰必填的⼊参。浅灰⾊表⽰选填的⼊参。深灰⾊表⽰⽆需填写。

输⼊sho再同时按住ctrl+alt+space键,则可以⾃动带出相关关键字,以及选中关键字的⽤法。

对于已输⼊的关键字,忘了其⽤法,可以点击输⼊框再同时按住ctrl+alt+space键,即可查看该关键字的⽤法。

3.2.2测试⽤例TextEdit区

同测试套件。

3.2.3测试⽤例Run区

同测试套件。

四,Robotframework库的介绍

4.1BuiltIn内建库

⾸先先介绍下robotframework的库,通过点击F5快捷键。⽬前只有内建的库BuiltIn,关于内建的库BuiltIn的关键字说明请查看另外⼀篇博

⽂:。

注:其实关键字就是⽅法名函数名⽽已。

4.2第三⽅库

只有内建的库往往还不能满⾜需求,还可以导⼊第三⽅库,如操作页⾯的Selenium2Library。

第三⽅库,主要是[PYTHON⽬录]Libsite-packages⾥的库,⼀般安装的库会在此⽬录下。Selenium2Library库的安装也可以详看笔者的另

外⼀篇博⽂:。博⽂中有说明Selenium2Library库的安装。

在测试套件下的⼯作区的右⽅,点击Library,在弹出框的name栏输⼊“Selenium2Library”,点击OK即可。

当⼯作区的Library那⼀⾏⿊⾊显⽰,说明导⼊成功(如果显⽰红⾊说明导⼊不成功,可⾃⾏百度解决)。

点击F5快捷键查看,可查看多了⼀个Selenium2Library的库。

4.3导⼊⾃⼰编写的库

⽐如说有些功能想⾃⼰编写,⽐如说如下代码,想要导⼊实现校验url的功能,⽂件名为(⽂件名随意取的,最好是英⽂的),

该⽂件保存在D:robotframeworkMyLibrary,此时需要将该路径添加到[PYTHON⽬录]Libsite-packages下的后缀名为pth的⽂件(⽂件名随

意取的,最好是英⽂的)中。

#-*-coding:utf-8-*-

"""

⾃⼰编写,验证获得⼀个URL地址的扩展名。

"""

importre

defMatchurl(str0):

u'''

验证url的有效性

'''

str1=("[.]",str0)

listt=['php','html','asp','jsp']

ifstr1[-1]inlistt:

return"TRUE"

el:

return"FAIL"

if__name__=='__main__':

str_input=''

printmatch_url(str_input)

然后重启ride,在测试套件的⼯作区的右⽅,点击Library,在弹出框的name栏输⼊“Myimport”,点击OK即可。

点击F5,即可看到导⼊⾃⼰编写的库。

注意,在⽂件中编写函数描述时,前⾯要加u,否则F5查看时,会乱码。

注意,在⽂件中函数命名为MatchUrl和Match_Url,在ride中都会解析为MatchUrl。

五,⽤例编写及执⾏

5.1编写百度搜索的测试案例。

关于lenium2Library的关键字使⽤,可⾃⾏百度“robotframework的lenium2Library的操作⼿册”,⽹上⼤把说明。

这⾥提⼀句,关于定位元素,可以通过id,name,xpath,link,css,tag等定位。

Id定位:id=kw

Name定位:name=wd

Xpath定位:xpath=//input[@id='kw']

Link定位:link=link_text

Css定位:css=#kw

Tag定位:tag=input

具体定位⽅式跟lenium的如出⼀辙,可以查看笔者另外⼀篇博⽂:。

5.2分层⽅法-案例层和流程层分离

如果想改变输⼊框的输⼊词,则需要不停的复制ca,为了减少冗余,可以做⼀个简单的分层,把搜索流程剥离成⼀个关键字,然后再不同

的ca中调⽤这个关键字,然后传递不同的参数,以进⾏不同数据在同⼀流程下测试。

那如何分层呢?

5.2.1创建UrKeyword

先选中ca中所有的脚本,右键选择ExtractKeyword。

此时左边区域会出现“搜索测试”UrKeyword,该UrKeyword在测试套件下,⼀般测试套件不放置UrKeyword,建议UrKeyword放

置在Resource下。

5.2.2创建Resource

如果存在可以不需要创建。

右键项⽬Test,点击NewResource。

我这⾥新建的Resource叫做.

5.2.3将UrKeyword移⾄MyResource下。

5.2.4UrKeyword⼊参设置

由于搜索数据可变,将其作为⼊参,变量⽤${}表⽰,在ttings的Arguments设置,若是有多个⼊参,那么⽤|分隔,如${⼊参1}|${⼊参1}

5.2.5导⼊Resource

需要在测试套件中导⼊Resource,才能使⽤该Resource下的UrKeyword。这⼀步别忘了哦。如果之前导⼊过,则忽略。

在测试套件下的⼯作区的右⽅,点击Resource,在弹出框的name栏输⼊“”,点击OK即可。

当⼯作区的Resource那⼀⾏蓝⾊显⽰,说明导⼊成功(如果显⽰红⾊说明导⼊不成功,可⾃⾏百度解决)。

点击F5快捷键查看,可查看多了⼀个的库。

5.2.6查看测试⽤例

会发现原来的⼀串表格代码编程“搜索测试”UrKeyword,且还有个必须输⼊的⼊参。

这样可以轻松的添加多个测试案例了。

5.3分层⽅法-流程层和元素层分离

将搜索测试中的内容继续分层,将底层的关键字继续拆分。

5.3.1创建Resource

如果存在可以不需要创建。

右键项⽬Test,点击NewResource。

我这⾥新建的Resource叫做。

创建之后,记得在⼯作区下,导⼊资源哦。如何导⼊,详见“”。

5.3.2创建UrKeyword

选中OpenBrowr那⼀⾏,右键选择ExtractKeyword。

5.3.3将UrKeyword移⾄下。

5.3.5剩余关键字

剩余关键字重复5.3.2-5.3.4操作。

输⼊搜索关键字

点击搜索

校验标题

关闭浏览器

⽽此时搜索测试页⾯如下:

5.4运⾏测试⽤例

选中需要运⾏的⽤例,点击运⾏按钮。

可以在Run区查看到⽤例执⾏情况。

点击Report(或者直接复制下⽅的url),可以查看到测试报告,绿底表⽰测试通过。

点击Log(或者直接复制下⽅的url)。

本文发布于:2022-11-26 14:18:11,感谢您对本站的认可!

本文链接:http://www.wtabcd.cn/fanwen/fan/90/25583.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:v
下一篇:我要购物
标签:ride out
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图