RobotFramework作业

RobotFramework 作业 1

确保 32位Python 3.6.2 安装成功

安装 如下 RF使用中需要的工具和库 1. RF 在两个Python中安装 robotframework 执行命令 pip install robotframework 2. seleniumlibrary 在两个Python中安装 seleniumlibrary 执行命令 pip install --upgrade robotframework-seleniumlibrary 3.pycharm插件IntelliBot 下载 IntelliBot插件 https://github.com/jcyrss/songqin-testdev/raw/master/others/softwares/intellibot.jar 在Pycharm中,点击菜单 file - settings - plugins 在弹出对话框中 选择 install plugin from disk 选择下载的jar文件 4. 可选择操作 pycharm 可以点击菜单 File -> Import Settings -> 导入下面的pycharm 配置文件 https://github.com/jcyrss/songqin-testdev/raw/master/rf/files/settings.jar 根据视频,将如下 自动化用例 拷贝到 一个 名为 baidu.robot的文件中,然后用 robot命令行 运行一下 *** Test Cases *** 搜索松勤 Import Library SeleniumLibrary Open Browser http://www.baidu.com chrome Set Selenium Implicit Wait 5 Input Text id=kw 松勤\n ${firstRet}= Get Text id=1 Should Contain ${firstRet} 松勤网 

RobotFramework 作业 2

不要用RIDE,请直接在pycharm中,创建一个测试套件文件。

该文件中包含 一个settings表和一个测试用例表
settings表中导入库SeleniumLibrary

测试用例表中包含 两个测试用例:

用例1:
定义一个RF变量var1为整数 100
定义一个RF变量var2为字符串 '5' 用RF关键字 should be true 验证变量 var1 * int(var2) == 500 用例2 (没有学过Selenium同学可以不做): 登录百度网站搜索 "北京时间" ,检查第一个搜索项显示当前的年份是否是 2018年。 SeleniumLibrary 有关键字 Get Text, 其参数 如果使用 css选择元素的方法 以'css='开头,后面加上 css选择表达式 
测试套件文件 s1.robot
*** Settings ***
Library  SeleniumLibrary

*** Test Cases ***
测试1
    Open Browser    http://www.baidu.com/    chrome
    Set Selenium Implicit Wait    5
    Input Text    id=kw    北京时间\n
    ${date}=    Get Text    css=.op-beijingtime-date
    log to console   ${date}
    Should Be True    $date.startswith('2017年')
    Close Browser


测试2
    ${var1}   convert to integer   100
    ${var2}   set variable    5
    should be true  $var1 * int($var2) == 500

  

RobotFramework 作业 3

创建一个测试套件文件,实现 2个测试用例:
用例1:

    1.  用Python语言开发一个测试库 course_mgr.py。
        该库有一个函数 listCourse 可以返回教管系统的所有课程(可以使用requests库开发)。
        (还不会使用Python的同学,拷贝参考答案中的Python代码,产生库文件) 2. 用RF测试用例来使用 listCourse 关键字, 根据其返回的课程列表, 将所有的课程名输出到日志文件中(使用循环) 验证是否和预期课程相同 用例2: 登录网站https://www.vmall.com/index.html 获得所有热销单品的名称,打印在log报表中


测试库 course_mgr.py

import requests

def listCourse():
    params = {'action':'list_course', 'pagenum':'1', 'pagesize':20 }
    response = requests.get("http://localhost/api/mgr/sq_mgr/",params=params)

    bodyDict = response.json()

    return [ one['name']  for one in  bodyDict["retlist"]]


if "__main__" == __name__:
    cnamelist = listCourse()
    for one in cnamelist:
        print (one)

  

测试套件文件 s1.robot

*** Settings ***
Library    SeleniumLibrary
Library    course_mgr
Library    Collections


*** Test Cases ***
测试1
     ${courseList}=   ListCourse
     :FOR   ${ele}  IN  @{courseList}
       \    log to console   ${ele}


     ${expected}=      Create List     python语言    初中化学
    Lists Should Be Equal     ${courseList}     ${expected}



测试2
    Open Browser    https://www.vmall.com/    chrome
    Set Selenium Implicit Wait    4
    ${eles}=    Get Webelements   css=.home-hot-goods .grid-items:not(.grid-items-sm) div
    :FOR   ${ele}  IN  @{eles}
       \   log to console   ${ele.text}
       \   ${eletxt}=   evaluate  $ele.get_attribute('innerText')
       \   log to console   ${eletxt}

    Close Browser

  

猜你喜欢

转载自www.cnblogs.com/xiao-qing/p/9230927.html