robot+selenium编写webUI自动化用例-创新互联

通常我们可以用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  Collections
Library  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

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享题目:robot+selenium编写webUI自动化用例-创新互联
本文URL:http://myzitong.com/article/ipppi.html