1:通过pip安装扩展库
pip install robotframework-seleniumlibrary
2:下载谷歌游览器和对应驱动
https://www.cnblogs.com/loved-wangwei/p/8993013.html
3:将游览器驱动放在python的目录下
4:导入SeleniumLibrary扩展库
API演示
1:打开游览器(访问网站)
Open Browser http://www.baidu.com chrome
2:设置睡眠时间
sleep 时间(秒)
Set Browser Implicit Wait 时间(秒)
3:窗口最大化
Maximize Browser Window
4:设置窗口位置
Set Window Position 20 40
5:返回上一步
Go Back
6:跳转
Go To http://www.baidu.com
7:刷新
Reload Page
RF元素定位
API高级
一:窗口跳转
案例:58租房:http://bj.58.com
登录58同城>>点击租房>>选择区域>>选择租金>>进行筛选
Get Window Handles:获取窗口的句柄
Select Window By Handle:切换到新窗口
注意:跳转窗口需要Select Window By Handle关键字,但是类库中没有对应的关键字,需要我们进行如下操作
1:在E:\ceshi\python\Lib\site-packages\SeleniumLibrary\locators\windowmanager.py中添加
def select_by_handle(self, browser, toHandle):
browser.switch_to_window(toHandle)
def get_window_handles(self, browser):
return [ window_info[0] for window_info in
self._get_window_infos(browser) ]
def get_current_window_handle(self, browser):
return browser.get_current_window_handle()
2:E:\ceshi\python\Lib\site-packages\SeleniumLibrary\keywords\browsermanagement.py中添加
@keyword
def select_window_by_handle(self, locator=None): self._window_manager.select_by_handle(self.drivers.current, locator)
@keyword
def get_window_handles(self):
"""Returns and logs handles of all windows known to the browser."""
return self._log_list(self._window_manager.get_window_handles(self.drivers.current)) @keyword
def get_current_window_handle(self):
"""Returns and logs handle of current window known to the browser.""" return self._log_list(self._window_manager.get_current_window_handle(self.drivers.current))
3:从新启动ride.py才能正常加载
可以参考:https://blog.youkuaiyun.com/youxitou/article/details/92656020
二:表单跳转
案例:https://qzone.qq.com/
登录qq邮箱>>跳转表单>>填充用户密码>>主界面操作
Select Frame:选择表单