API高级
1:窗口跳转
案例:58租房:http://bj.58.com
业务场景:
1.登录58同城
2.点击租房
3.选择区域
4.选择租金
5.进行筛选
Get Window Handles:获取窗口的句柄
Select Window By Handle:切换到新窗口
注意:跳转窗口需要Select Window By Handle关键字,但是类库中没有对应的关键字,需要我们进行如 下操作
1:在D:\install\python\python\Lib\site-packages\SeleniumLibrary\locators\windowmanager.py中 添加 (自己的python路径下)
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:D:\install\python\python\Lib\sitepackages\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.curre
nt))
3:从新启动ride.py才能正常加载
可以参考:https://blog.csdn.net/youxitou/article/details/92656020
2:表单跳转
案例:https://qzone.qq.com/
业务场景:
1.登录qq空间
2.跳转表单
3.填充用户密码
4.主界面操作
Select Frame:选择表单
DOS下执行RF脚本
1:找到python中的Scripts目录,新建一个pybot.bat文件
2:在pybot.bat文件中添加下面的命令
@Echo off
python -m robot.run %*
3:在dos窗口输入命令执行
执行整个项目下的所有用例: pybot 项目路径
比如:pybot D:\install\python\robotframeworkwork\mashang\RF测试
RF+jenkins持续集成
1:在服务中启动Jenkins
2:在jenkins的插件中下载Robot Framework
3:下载插件groovy
3:创建项目
1:在构建中选择dos命令
4:在jenkins中生成RF的测试报告
在构建中选中Excute system Groovy script
在构建后操作中添加RF脚本和测试报告路径信息
(Publish Robot Framework test results)
运行后显示的测试报告
在Jenkins中绑定用户邮箱信息