栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

RobotFramework-元素定位

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

RobotFramework-元素定位

目录

一、selenium中八大定位方式

二、API高级

1、窗口跳转

2、表单跳转

三、DOS下执行RF脚本

四、Robotframework+jenkins持续集成

1、在服务中启动Jenkins

2、在jenkins的插件中下载Robot framework

3、创建项目

3.1、在构建中选择dos命令

3.2、在jenkins中生成RF的测试报告

3.3、在Jenkins中绑定用户邮箱信息


一、selenium中八大定位方式

id,name,xpath,css,link_text,partial_link_text,class_name,tag_name

xpath方法:

1:通过绝对路径定位元素:
2:通过相对路径定位元素:xpath=//form/span/input
3:通过元素属性定位元素:xpath=//input[@autocomplete="off" and @]
4:通过部分元素属性定位:xpath=//input[contains(@autocomplete="of")]
5:通过元素文本定位元素:xpath=//a[text()="新闻"]

css

1:通过id进行定位:#ID
2:通过class定位:.class
3:通过元素属性定位:css=input[autocomplete="off"]
4:通过部分属性定位:css=input[autocomplete*="of"]
5:通过子元素定位:css=div#s-top-left a:nth-child(3)

 

二、API高级

1、窗口跳转

案例:58租房:【58同城 58.com】北京分类信息 - 本地 免费 高效

步骤:登录58同城>>点击租房>>选择区域>>选择租金>>进行筛选

Get Window Handles:获取窗口的句柄

Select Window By Handle:切换到新窗口

注意:跳转窗口需要Select Window By Handle关键字,但是类库中没有对应的关键字,需要我们进行如下操作

①在路径中添加

    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()

②同上

    @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))

③从新启动ride.py才能正常加载

参考地址:https://blog.csdn.net/youxitou/article/details/92656020

2、表单跳转

案例:QQ空间-分享生活,留住感动

步骤:登录qq邮箱>>跳转表单>>填充用户密码>>主界面操作

Select frame:选择表单

三、DOS下执行RF脚本

步骤:

①找到python中的scripts目录,新建一个pybot.bat文件

②在pybot.bat文件中添加下面的命令

@Echo off
python -m robot.run %*

③在dos窗口输入命令执行

执行整个项目下的所有用例: pybot 项目路径
	比如:pybot D:ceshiruanjianpythonrobotframeworkworkRF

四、Robotframework+jenkins持续集成

1、在服务中启动Jenkins

2、在jenkins的插件中下载Robot framework

3、创建项目

3.1、在构建中选择dos命令

3.2、在jenkins中生成RF的测试报告

3.2.1、下载插件groovy

3.2.2、在构建中选中Excute system Groovy script

System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

 3.2.3、在构建后操作中添加RF脚本和测试报告路径信息

3.2.4、运行后显示的测试报告

3.3、在Jenkins中绑定用户邮箱信息

Jenkins中的邮件设置 - 程序员大本营

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/395677.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号