千家信息网

robot+selenium编写web UI自动化用例

发表于:2024-10-18 作者:千家信息网编辑
千家信息网最后更新 2024年10月18日,通常我们可以用robot framework写接口自动化用例,但是有些站点如果未做前后端分离,迭代过程中又有大量的重复测试工作量,没有接口可调用验证,也有自动化测试需求,怎么办?这时候,那个深坑频现的
千家信息网最后更新 2024年10月18日robot+selenium编写web UI自动化用例

通常我们可以用robot framework写接口自动化用例,但是有些站点如果未做前后端分离,迭代过程中又有大量的重复测试工作量,没有接口可调用验证,也有自动化测试需求,怎么办?这时候,那个深坑频现的web UI自动化就势在必行了。robot只是自动化框架,好在他稳定而且扩展性极好,要想驱动web浏览器自动干活,只需要安装另外一个神器selenium,下文将提纲携领介绍web UI如何入门,一旦你入了门,其余的就是baidu和看官网帮助的工作量了,建议用到了在查,不然也没卵用。

用例编写前提:

  • 已经部署好了robot/python3环境,详见:
  • 安装selenium,推荐3.11.0版本: pip install selenium==3.11.0
  • 安装robotframework-seleniumlibrary,推荐3.1.1版本: pip install robotframework-seleniumlibrary==3.1.1
  • 安装webdriver,推荐比较流行的chromedriver,从这里下载:http://chromedriver.storage.googleapis.com/index.html
    chromedriver的版本需要和本机的chrome浏览器对应,才能正常使用;下载对应版本的chromedriver驱动文件,具体版本对应关系表:
    chromedriver版本 | 支持的Chrome版本
    v2.33 | v60-62
    v2.32 | v59-61
    v2.31 | v58-60
    v2.30 | v58-60
    v2.29 | v56-58
    v2.28 | v55-57
    v2.27 | v54-56
    v2.26 | v53-55
    v2.25 | v53-55
    v2.24 | v52-54
    v2.23 | v51-53
    v2.22 | v49-52
    v2.21 | v46-50
    v2.20 | v43-48
    v2.19 | v43-47
    v2.18 | v43-46
    v2.17 | v42-43
    v2.13 | v42-45

window平台的话,解压后放到本机chrome浏览器文件路径里,如:
C:\Program Files (x86)\Google\Chrome\Application
或者系统path里增加chromedriver的解压地址

在用例文件中引用selenium包

*** Settings ***Library  CollectionsLibrary  SeleniumLibrary

一个样例如下:

*** Test Cases ***my first html        #创建一个chrome浏览器    Open Browser    http://www.我的域名.cn/     chrome     #输入文本框    input text      id=inputName            admin    input text      id=inputPassword        admin    input text      id=inputCode            123    #点击按钮    Click Button    Xpath=//form/div/span/button        #单击A标签    | locator表示定位器        #Click Link | locator        #单击某个标签        #Click Element    Xpath=//ul[@id='systemSetting0']    ${cnt}          get title    log     ${cnt}    ${title}        get window titles    log     ${title}    Title Should Be    一个后台    Location should Contain  http://www.我的域名.cn/    Page Should Not Contain     不包含我    Page Should Contain         必须包含我        # 关闭打开的浏览器        Close Browser    Close All Browsers

执行用例你将会看到,一个chrome自动打开,并且输入密码,点击了登录,也可能速度奇快看不清,为了看的清晰,可以用sleep方法在每步停留几秒:

# 这里的单位是秒sleep   3

当然,如果你的web加载比较慢,用停留几秒来规避是不靠谱的,建议用这个方法:

Wait Until Page Contains Element

官方文档

http://robotframework.org/SeleniumLibrary/SeleniumLibrary.html

版本 浏览器 浏览 自动化 文件 推荐 域名 工作量 建议 接口 方法 标签 本机 工作 测试 输入 驱动 极好 势在必行 一个样 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 qq游戏四川麻将无法连接服务器 网络安全对孩子有危害吗 网络安全教育要重修吗 网络安全技术支撑费用明细 数据库表的字段多应该怎么处理 武汉群硕软件开发公司招聘 数据库表单设计器如何设计 linux如何搭建ftp服务器 如何写网络安全观后感 四川程序软件开发哪家可靠 杭州直销软件开发贵吗 台服魔兽怀旧服开了多少个服务器 阳泉网络技术销售价格 俞敏洪谈论互联网有没有高科技 奥丁神叛最新服务器 天意网络安全科技馆 成都软件开发学费 网络安全手抄报内容 看清楚 区块链与网络安全篮皮书 大学生网络安全知识教育 ai硬件系统包括服务器吗 新乡市天启网络技术有限公司 网络安全应不应该实名制 河北捡乐网络技术有限公司 excel数据库建立连接 网络技术的发展的定律主要有 发电厂网络安全监督项目 我的世界国际基岩版怎么开服务器 俞敏洪谈论互联网有没有高科技 数据库模块怎么设计
0