SeleniumLibrary4.5.0 关键字详解(七)

SeleniumLibrary4.5.0 关键字详解(七)

库版本:4.5.0
库范围:全局
命名参数:受支持

简介
SeleniumLibrary是Robot Framework的Web测试库。

本文档说明了如何使用SeleniumLibrary提供的关键字。 有关安装,支持等信息,请参见 python3.9.0 + robotframework + selenium3 实例体验。

有关robotframework框架的更多信息,请参见 https://blog.csdn.net/mask5726/category_10537277.html。

SeleniumLibrary在内部使用Selenium WebDriver模块来控制Web浏览器。 有关常规Selenium的更多信息,请参见http://seleniumhq.org。

内容列表
1、元素定位
2、浏览器和窗口
3、超时,等待和延迟
4、运行故障功能
5、布尔参数
6、webDriver事件
7、线程支持
8、插件
9、引入
11、关键字

关键字
42 Get All Links
说明:

返回一个列表,其中包含当前页面中找到的所有链接的ID。

如果链接没有ID,则列表中将出现一个空字符串。

43 Get Browser Aliases
说明:

返回所有别名为NormalizedDict(标准化字典)的活动浏览器的别名。字典包含别名作为键,索引包含值。可以使用字典$ {aliases.key}或列表@ {aliases} [0]进行访问。

例子:

Open Browser https://example.com alias=BrowserA
Open Browser https://example.com alias=BrowserB
&{aliases} Get Browser Aliases # &{aliases} = { BrowserA=1|BrowserB=2 }
Log ${aliases.BrowserA} # logs 1
FOR ${alias} IN @{aliases}
Log ${alias} # logs BrowserA and BrowserB
END
有关更多信息和示例,请参见 Switch Browser。

SeleniumLibrary 4.0的新功能。

44 Get Browser Ids
说明:

返回所有活动浏览器的索引作为列表。

例子:

@{browser_ids}= Get Browser Ids
FOR i d I N @ b r o w s e r i d s @ w i n d o w t i t l e s = G e t W i n d o w T i t l e s b r o w s e r = {id} IN @{browser_ids} @{window_titles}= Get Window Titles browser= idIN@browserids@windowtitles=GetWindowTitlesbrowser={id}
Log Browser ${id} has these windows: ${window_titles}
END
有关更多信息和示例,请参见 Switch Browser。

SeleniumLibrary 4.0的新功能。

45 Get Cookie
参数:

name

说明:

返回以名称为对象的cookie的信息。

如果找不到带有名称的cookie,则关键字失败。 cookie对象包含有关cookie的详细信息。下表中记录了对象中可用的属性。

Attribute Explanation
name The name of a cookie.
value Value of the cookie.
path Indicates a URL path, for example /.
domain The domain, the cookie is visible to.
secure When true, the cookie is only used with HTTPS connections.
httpOnly When true, the cookie is not accessible via JavaScript.
expiry Python datetime object indicating when the cookie expires.
extra Possible attributes outside of the WebDriver specification
有关cookie信息的详细信息,请参见WebDriver规范。注意,将到期指定为日期时间对象,而不是像WebDriver这样的Unix Epoch本身指定的秒数。

在某些情况下,例如在云中运行浏览器时,cookie可能包含WebDriver规范中未定义的其他属性。这些其他属性在cookie对象的额外属性中可用,并且包含其他属性的字典。 SeleniumLibrary 4.0中的extra属性是新的。

例子:

Add Cookie foo bar
${cookie} = Get Cookie foo
Should Be Equal ${cookie.name} foo
Should Be Equal ${cookie.value} bar
Should Be True ${cookie.expiry.year} > 2017
SeleniumLibrary 3.0中的新功能。

46 Get Cookies
参数:

as_dict=False

说明:

返回当前页面的所有cookie。

如果as_dict参数为false,请参阅布尔参数以获取更多详细信息,然后cookie信息将以单个字符串的形式返回,格式为name1 = value1; name2 = value2; name3 = value3。当as_dict参数的值为true时,cookie信息将以Robot Framework词典格式返回。例如,字符串格式可用于日志记录目的,或在发送HTTP请求时在标头中使用。当结果可以传递到请求库的Create Session关键字的可选cookie参数时,字典格式很有用。

as_dict参数是SeleniumLibrary 3.3中的新增功能。

47 Get Element Attribute
参数:

locator
attribute

说明:

从元素定位器返回attribute的值。

有关定位器语法的详细信息,请参见“定位元素”部分。

例子:

${id}= Get Element Attribute css:h1 id
在SeleniumLibrary 3.2中删除了作为定位器一部分的传递属性名称。应该使用显式属性参数。

48 Get Element Count
参数:

locator

说明:

返回与定位符匹配的元素数。

如果您想断言匹配元素的数量,请使用“页面应包含元素”和“ limit”参数。关键字将始终返回整数。

例子:

${count} = Get Element Count name:div_name
Should Be True ${count} > 2
SeleniumLibrary 3.0中的新功能。

49 Get Element Size
参数

locator

说明:

返回由定位器标识的元素的宽度和高度。

有关定位器语法的详细信息,请参见“定位元素”部分。

宽度和高度均以整数形式返回。

例子:

${width} ${height} = Get Element Size css:div#container
50 Get Horizontal Position
参数:

locator

说明:

返回由定位器标识的元素的水平位置。

有关定位器语法的详细信息,请参见“定位元素”部分。

该位置以整数形式返回页面左侧的像素。

另请参阅获 Get Vertical Position。

51 Get List Items
参数:

locator
values=False

说明:

返回选择列表定位器的所有标签或值。

有关定位器语法的详细信息,请参见“定位元素”部分。

默认情况下返回可见标签,但是可以通过将values参数设置为true值来返回值(请参阅Boolean参数)。

Example:

${labels} = Get List Items mylist
${values} = Get List Items css:#example select values=True
SeleniumLibrary 3.0中新增了对返回值的支持。

52 Get Location
说明;

返回当前浏览器窗口的URL。

53 Get Locations
参数:

browser=CURRENT

说明:

返回并记录所选浏览器所有窗口的URL。

浏览器作用域:
browser参数指定将返回其Windows信息的浏览器。

浏览器可以是index_or_alias,例如在Switch Browser中。
如果浏览器为CURRENT(默认,不区分大小写),则选择当前活动的浏览器。
如果浏览器为ALL(不区分大小写),则返回所有打开的浏览器的所有窗口的窗口信息。

54 Get Selected List Label
参数:

locator

说明:

从选择列表定位器返回所选选项的标签。

如果有多个选择的选项,则返回第一个选项的标签。

有关定位器语法的详细信息,请参见“定位元素”部分。

55 Get Selected List Labels
参数:

locator

说明:

从选择列表定位器返回所选选项的标签。

从SeleniumLibrary 3.0开始,如果没有选择,则返回一个空列表。在早期版本中,这导致了错误。

有关定位器语法的详细信息,请参见“定位元素”部分。

56 Get Selected List Value
参数:

locator

说明:

从选择列表定位器返回选择的选项的值。

如果有多个选择的选项,则返回第一个选项的值。

有关定位器语法的详细信息,请参见“定位元素”部分。

57 Get Selected List Values
参数:

locator

说明:

从选择列表定位器返回选择的选项的值。

从SeleniumLibrary 3.0开始,如果没有选择,则返回一个空列表。在早期版本中,这导致了错误。

有关定位器语法的详细信息,请参见“定位元素”部分。

58 Get Selenium Implicit Wait
说明:

获取Selenium使用的隐式等待值。

该值以人类可读的字符串形式返回,例如1秒。

有关更多信息,请参见上面的“隐式等待”部分。

59 Get Selenium Speed
说明:

获取每个Selenium命令之后等待的延迟。

该值以人类可读的字符串形式返回,例如1秒。

有关更多信息,请参见上面的 Selenium Speed 部分。

60 Get Selenium Timeout
说明:

获取各种关键字使用的超时。

该值以人类可读的字符串形式返回,例如1秒。

有关更多信息,请参见上面的超时部分。

61 Get Session Id
说明:

返回当前活动的浏览器会话ID。

SeleniumLibrary 3.2的新功能。

62 Get Source
说明:

返回当前页面或框架的整个HTML源。

63 Get Table Cell
参数:

locator
row
column
loglevel=TRACE

说明:

返回表格单元格的内容。

该表使用locator参数定位,并使用行和列找到其单元格。有关定位器语法的详细信息,请参见“定位元素”部分。

行索引和列索引都从1开始,并且页眉和页脚行都包含在计数中。可以通过使用负索引从头开始引用行和列,因此-1是最后一行/列,-2是倒数第二行,依此类推。

表中任何位置的所有和元素均被视为单元格。

有关loglevel参数的说明,请参见Page Should Contain。

64 Get Text
参数:

locator

说明:

返回由定位器标识的元素的文本值。

有关定位器语法的详细信息,请参见“定位元素”部分。

65 Get Title
说明:

返回当前页面的标题。

66 Get Value
参数:

locator

说明:

返回由定位器标识的元素的value属性。

有关定位器语法的详细信息,请参见“定位元素”部分。

67 Get Vertical Position
参数:

locator

说明:

返回由定位器标识的元素的垂直位置。

有关定位器语法的详细信息,请参见“定位元素”部分。

该位置以整数形式返回页面顶部以外的像素。

另请参阅 Get Horizontal Position。

68 Get WebElement
参数:

locator

说明;

返回与给定定位符匹配的第一个WebElement。

有关定位器语法的详细信息,请参见“定位元素”部分。

69 Get WebElements
参数:

locator

说明:

返回与定位器匹配的WebElement对象的列表。

有关定位器语法的详细信息,请参见“定位元素”部分。

从SeleniumLibrary 3.0开始,如果没有匹配的元素,则关键字将返回一个空列表。在以前的版本中,关键字在这种情况下失败。

70 Get Window Handles
参数:

browser=CURRENT

说明:

以列表形式返回所选浏览器的所有子窗口句柄。

可以用作“选择窗口”排除的窗口列表。

如何选择此关键字的浏览器范围,请参阅获取位置。

在SeleniumLibrary 3.0之前,此关键字名为List Windows。

71 Get Window Identifiers
参数:

browser=CURRENT

说明:

返回并记录所选浏览器所有窗口的id属性。

如何选择此关键字的浏览器范围,请参阅获取位置。

72 Get Window Names
参数:

browser=CURRENT

说明:

返回并记录所选浏览器所有窗口的名称。

如何选择此关键字的浏览器范围,请参阅获取位置。

73 Get Window Position
说明:

返回当前窗口位置。

该位置相对于屏幕的左上角。返回值是整数。另请参阅设置窗口位置。

例子:

${x} ${y}= Get Window Position
74 Get Window Size
参数:

inner=False

说明:

以整数形式返回当前窗口的宽度和高度。

另请参阅设置窗口大小。

如果将内部参数设置为True,则关键字将返回HTML DOM window.innerWidth和window.innerHeight属性。有关如何设置布尔参数的更多详细信息,请参见布尔参数。内部是SeleniumLibrary 4.0中的新功能。

例子:

${width} ${height}= Get Window Size
${width} ${height}= Get Window Size True
75 Get Window Titles
参数:

browser=CURRENT

说明:

返回并记录所选浏览器所有窗口的标题。

如何选择此关键字的浏览器范围,请参阅获取位置。

76 Go Back
说明:

模拟用户单击其浏览器上的“后退”按钮。

77 Go To
参数:

url

说明:

将当前浏览器窗口导航到提供的URL。




作者:马克社区何老师