Robot Framework自动化测试(三)---Selenium API

简介:

Robot  Framework  Selenium  API

 

说明:

   此文档只是将最常用的UI 操作列出。更多方法请查找selenium 关键字库。

 

 

 

一、浏览器驱动

 

通过不同的浏览器执行脚本。

 

Open Browser

Htpp://www.xxx.com

chrome

 

浏览器对应的关键字:

firefox

FireFox

ff

internetexplorer

 

Internet Explorer

ie

googlechrome

 

Google Chrome

 

gc

chrome

opera

Opera

phantomjs

PhantomJS

htmlunit

HTMLUnit

htmlunitwithjs

HTMLUnit with Javascipt support

android

Android

iphone

Iphone

safari

Safari

 

备注:

要想通过不同的浏览打开URL地址,一定要安装浏览器相对应的驱动。如chrome 的驱动:

chromedriver.exe 等。

浏览器默认为空时启动FireFox

 

二、关闭浏览器

 

关闭浏览器

Close Browser

 

 

关闭当前的浏览器。

 

关闭所有浏览器

Close All Browsers

 

 

关闭所有打开的浏览器和浏览器缓存重置。

 

 

三、浏览器最大化

 

Maximize Browser Window

 

 

 使当前打开的浏览器全屏。

 

四、设置浏览器宽、高

 

Get Window Size

800

600

以像素为单位,第一个参数800表示宽度,第二个参数600表示高度。

 

 

五、文本输入

 

Input Text

Xpath=//* [@]

输入信息

Xpath=//* [@] :表示元素定位,定位文本输入框。

 

 

 

六、点击元素

 

Click Element

Xpath=//* [@]

 

Xpath=//* [@] :表示元素定位,定位点击的元素。

 

 

 

七、点击按钮

 

Click Button

Xpath=//* [@]

 

Xpath=//* [@] :表示元素定位,定位点击的按钮。

 

 

 

八、注释

 

注释1

Comment

注释说明

 

 

注释2

# 注释说明

 

 

除了使用Comment 关键字进行注释外,Robot framework框架是基于python语言开发的,所以提供了python语言的注释“#”方式。

 

 

九、固定时间休眠

 

Sleep

42

 

Sleep

1.5

 

Sleep

2 minutes 10 seconds

 

Sleep表示执行到当前行固定休眠多长时间,以“秒”为单位。

42表示42秒;

1.5 表示1.5秒;

2 minutes 10 seconds 表示210秒。

 

 

十、等待元素出现在当前页面

 

Wait Until Page Contains Element

Xpath=//* [@]

42

error

Xpath=//* [@] :表示元素定位,这里定位出现的元素

42 : 表示最长等待时间。

Error : 表示错误提示,自定义错误提示,如:“元素不能正常显示”

 

 

 

十一、获取title

 

Get Title

 

 

获得当前浏览器窗口的title 信息。

 

这里只获取title 是没有意义的,我们通常会将获取的title 传递给一个变量,然后与预期结果进行比较。从而判断当前脚本执行成功。

 

 

 

十二、获取文本信息

 

Get Text

Xpath=//* [@]

 

 

Xpath=//* [@] : 定位文本信息的元素。

 

 

 

十三、获取元素属性值

 

Get Element Attribute

id=kw@name

 

 

id=kw@name : id=kw 表示定位的元素。@nam 获取这个元素的name属性值。

 

 

十四、cookie处理

 

获取cookie

get cookies

 

 

获得当前浏览器的所有cookie 

 

获得cookie

get cookie value

Key_name

 

Key_name : key_name 表示一对cookiekeyname 

 

删除cookie

delete cookie

Key_name

 

删除keyname cookie信息。

 

删除所有cookies

delete all cookies

 

 

删除当前浏览器的所有cookie

 

添加cookie

add cookie

Key_name

Value_name

添加一对cooke keyvalue

 

 

十五、声明变量

 

${a}

Set Variable

hello

定义变量ahello

 

${a}

${b}=

Set Variable

hello

world

定义变量ahello bworld 

 

 

 

十六、日志(输出)

 

${a}

Set Variable

Hello World

log

${a}

 

在测试报告中输出a变量的值hello word

 

 

 

十七、获得浏览器窗口宽、高

 

${width}

${height}

get window size

log

${width}

 

log

${height}

 

获得浏览浏览器窗口宽、高,通过log 将宽高,打印到报告中。

 

 

 

十八、验证

 

open browser

http://www.baidu.com

chrome

${title}

Get Title

 

should contain

${title}

百度一下,你就知道

 

Open Browser 通过chrome打开百度首页。

Get Title 获得浏览器窗口的titile ,并赋值给变量${title}

Should Contain 比较${title}是否等于“百度一下,你就知道”。

 

如果item1 不包含 item2 一次或多次,那么失败。

 

 

 

十九、表单嵌套

 

Select Frame

Xpath=//* [@]

 

Unselect Frame

 

 

Select Frame 进入表单,Xpath=//* [@] 表示定位要进入的表单。

Unselect Frame 退出表单。

 

 

二十、下拉框选择

Unselect From List By Value

Xpath=//* [@]

vlaue

 

 

 

Xpath=//* [@] 定位下拉框;

Vlaue 选择下拉框里的属性值。

 

 

二十一、If分支语句

 

${a} 

Set variable

2

 

 

${b} 

Set variable

5

 

 

run keyword if

${a}>=1

log

a大于1

 

...

ELSE IF

${b}<=5

log

b小于等于5

...

ELSE

log

上面两个条件都不满足

 

 

首先定义两个变量分别为 

If 判断 大于等于,满足条件log 输出 “a大于1 ”;

不满足上面的条件,接着else if 判断b小于等于,满足条件log 输出 “b小于等于5”;

上面两个条件都不满足,else  log输出“上面两个条件都不满足”。

 

备注:注意sele if else前面的三个点点点(...

 

 

 

二十二、for 循环语句

 

循环1

:FOR

${i}

in range

10

 

log

${i}

 

 

查看结果:

 

循环变量i 从0 循环10次。

 

 

循环2

@{a}

create list

aaa

bbb

:FOR

${i}

in

@{a}

 

log

${i}

 

@{a} 定义为一个字符串列表。

通过in 可遍历非整型(in range

 

 

说明:

Log if 分支,for 循环并非selenium关键字库的提供的方法,是由BuiltIn包提供。

 

目录
相关文章
|
3月前
|
jenkins 测试技术 Shell
利用Apipost轻松实现用户充值系统的API自动化测试
API在现代软件开发中扮演着连接不同系统与模块的关键角色,其测试的重要性日益凸显。传统API测试面临效率低、覆盖率不足及难以融入自动化工作流等问题。Apipost提供了一站式API自动化测试解决方案,支持零代码拖拽编排、全场景覆盖,并可无缝集成CI/CD流程。通过可视化界面,研发与测试人员可基于同一数据源协作,大幅提升效率。同时,Apipost支持动态数据提取、性能压测等功能,满足复杂测试需求。文档还以用户充值系统为例,详细介绍了从创建测试用例到生成报告的全流程,帮助用户快速上手并提升测试质量。
|
8月前
|
数据采集 测试技术 Python
自动化淘宝秒杀:使用Selenium WebDriver的实战指南
本文详细介绍了如何利用Selenium WebDriver自动化淘宝秒杀操作,包括环境配置、代码实现及注意事项,旨在帮助读者提升秒杀成功率,同时提醒合理使用以遵守平台规则。
388 8
|
9月前
|
数据采集 存储 JavaScript
自动化数据处理:使用Selenium与Excel打造的数据爬取管道
本文介绍了一种使用Selenium和Excel结合代理IP技术从WIPO品牌数据库(branddb.wipo.int)自动化爬取专利信息的方法。通过Selenium模拟用户操作,处理JavaScript动态加载页面,利用代理IP避免IP封禁,确保数据爬取稳定性和隐私性。爬取的数据将存储在Excel中,便于后续分析。此外,文章还详细介绍了Selenium的基本设置、代理IP配置及使用技巧,并探讨了未来可能采用的更多防反爬策略,以提升爬虫效率和稳定性。
508 4
|
7月前
|
Web App开发 数据采集 JavaScript
CDP与Selenium相结合——玩转网页端自动化数据采集/爬取程序
本文介绍了Selenium、Chrome DevTools及Chrome DevTools Protocol (CDP) 的基本功能与应用。Selenium是一款开源自动化测试工具,适用于网页端应用程序测试和数据采集,具备跨平台特性。Chrome DevTools内置浏览器中,提供调试、分析Web应用程序的功能,包括元素、控制台、源代码和网络选项卡等。CDP是一套用于与Chromium内核浏览器通信的API,支持自动化测试和性能分析。文中还展示了Selenium与CDP结合使用的示例,如捕获网络请求数据和打印网页内容,并推荐了相关书籍和资源以供深入学习。
1062 39
CDP与Selenium相结合——玩转网页端自动化数据采集/爬取程序
|
7月前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
230 31
Selenium IDE:Web自动化测试的得力助手
|
7月前
|
Web App开发 IDE 测试技术
Selenium:强大的 Web 自动化测试工具
Selenium 是一款强大的 Web 自动化测试工具,包括 Selenium IDE、WebDriver 和 Grid 三大组件,支持多种编程语言和跨平台操作。它能有效提高测试效率,解决跨浏览器兼容性问题,进行性能测试和数据驱动测试,尽管存在学习曲线较陡、不稳定等缺点,但其优势明显,是自动化测试领域的首选工具。
466 17
Selenium:强大的 Web 自动化测试工具
|
9月前
|
Java 测试技术 C#
自动化测试之美:从Selenium到Appium
【10月更文挑战第3天】在软件开发的海洋中,自动化测试如同一艘航船,引领着质量保证的方向。本文将带你领略自动化测试的魅力,从Web端的Selenium到移动端的Appium,我们将一探究竟,看看这些工具如何帮助我们高效地进行软件测试。你将了解到,自动化测试不仅仅是技术的展示,更是一种提升开发效率和产品质量的智慧选择。让我们一起启航,探索自动化测试的世界!
|
7月前
|
监控 数据管理 测试技术
API接口自动化测试深度解析与最佳实践指南
本文详细介绍了API接口自动化测试的重要性、核心概念及实施步骤,强调了从明确测试目标、选择合适工具、编写高质量测试用例到构建稳定测试环境、执行自动化测试、分析测试结果、回归测试及集成CI/CD流程的全过程,旨在为开发者提供一套全面的技术指南,确保API的高质量与稳定性。
|
8月前
|
SQL 测试技术 API
如何编写API接口的自动化测试脚本
本文详细介绍了编写API自动化测试脚本的方法和最佳实践,涵盖确定测试需求、选择测试框架、编写测试脚本(如使用Postman和Python Requests库)、参数化和数据驱动测试、断言和验证、集成CI/CD、生成测试报告及维护更新等内容,旨在帮助开发者构建高效可靠的API测试体系。
|
8月前
|
安全 测试技术 API
如何实现API接口的自动化测试?
实现API接口的自动化测试涉及多个关键步骤:确定测试范围和目标、编写测试用例、选择自动化测试工具、搭建测试环境、编写测试脚本、执行测试、分析结果和回归测试。选择合适的工具和考虑团队熟悉度是成功的关键。常用工具包括Postman、JMeter和SoapUI。通过这些步骤和工具,可以有效提高测试效率和质量,确保API的稳定性和可靠性。