robot framework接口测试之一-完整的测试用例

*** Settings ***
Library           Collections
Library           json
Library           requests
Library           RequestsLibrary
Library           HttpLibrary.HTTP

*** Keywords ***
登录大风车
    [Arguments]    ${jpushid}    ${loginName}    ${password}
    ${dict}    create dictionary    Content-Type=application/x-www-form-urlencoded
    create session    api    http://dfc-test.sqaproxy.souche.com    ${dict}
    ${data}    create dictionary    jpushid=${jpushid}    loginName=${loginName}    password=${password}
    ${req}    Post Request    api    //rest/account/login    data=${data}
    log    ${req.status_code}    #?
    log    ${req.content}
    ${reqj}    to json    ${req.content}    #?
    log    ${reqj}
    ${reqdata}    get from dictionary    ${reqj}    data
    ${TT}    get from dictionary    ${reqdata}    token
    ${procode}    get from dictionary    ${reqdata}    provinceCode
    ${shopcode}    get from dictionary    ${reqdata}    store
    set global variable    ${jpushid}
    set global variable    ${TT}
    set global variable    ${shopcode}
    set global variable    ${procode}
    ${form}    create dictionary    Content-Type=application/x-www-form-urlencoded
    set global variable    ${form}

MoGet
    [Arguments]    ${apiurl}    ${params}==${EMPTY}
    ${formget}    create dictionary    Content-Type=application/x-www-form-urlencoded
    ${proxy}    set variable    http://127.0.0.0:8888/
    set global variable    ${formget}
    create session    api    http://lol.sqaproxy.souche.com    ${formget}
    ${resget}    get request    api    ${apiurl}    params=${params}
    should be equal as strings    ${resget.status_code}    200
    log    ${resget}
    ${resj}    to json    ${resget.content}
    log    ${resj}

MoPost
    [Arguments]    ${apiurl}    ${type}==${EMPTY}    ${pd}==data    ${params}==${EMPTY}
    [Documentation]    … …
    ${proxy}    set variable    http://127.0.0.0:8888/
    ${top}    run keyword if    "${type}"=="form"    create dictionary    Content-Type=application/x-www-form-urlencoded
    ...    ELSE    create dictionary    Content-Type=application/json
    log    abc
    create session    api    http://lol.sqaproxy.souche.com    ${top}
    ${res}    run keyword if    "${pd}" =="data"    post request    api    ${apiurl}    data=${params}
    ...    ELSE    post request    api    ${apiurl}    params=${params}
    should be equal as strings    ${res.status_code}    200
    log    ${res.status_code}
    ${resj}    to json    ${res.content}
    log    ${resj}
    #set global variable    ${type}
 1 *** Settings ***
 2 Library           json
 3 Library           Collections
 4 Library           requests
 5 Library           RequestsLibrary
 6 Resource          基础关键字a.robot
 7
 8 *** Test Cases ***
 9 接受联盟
10     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498708    a12345678
11     ${data}    create dictionary    _security_token=${TT}    msgId=099e06c4b5b44cd2aaf69714c0c09ec4
12     MoPost    //manage/acceptAlly.json    form    data    ${data}
13
14 申请联盟
15     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498708    a12345678
16     ${data}    create dictionary    shopCode=000055    memo=“您好,申请联盟”    _security_token=${TT}
17     MoPost    //manage/addAlly.json    form    data    ${data}
18
19 拒绝联盟
20     [Setup]    登录大风车    161a3797c8346bb1fc1    15810001002    a12345678
21     ${data}    create dictionary    msgId=163b8f7ab4314e9cbab85d3790d194cc    _security_token=${TT}
22     MoPost    //manage/denyAlly.json    form    data    ${data}
23
24 获取我的盟友列表
25     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
26     ${data}    create dictionary    page=1    pageSize=10    jpushid= 161a3797c8346bb1fc1    _security_token=${TT}
27     MoGet    //manage/getAllyList.json    params=${data}
28
29 获取我的筛选盟友列表
30     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
31     ${data}    create dictionary    _security_token=${TT}
32     MoGet    /manage/getAllyListForSel.json    ${data}
33
34 供工作台获取联盟角标
35     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
36     ${data}    create dictionary    _security_token=${TT}
37     MoGet    /manage/getDashboardNum.json    ${data}
38
39 获取联盟消息列表
40     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
41     ${data}    create dictionary    page=1    pageSize=10    _security_token=${TT}
42     MoGet    /manage/getMsgList.json    ${data}
43
44 获取联盟信息
45     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
46     ${data}    create dictionary    _security_token=${TT}
47     MoGet    /manage/getOverview.json    ${data}
48
49 获取店铺联盟设置
50     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
51     ${data}    create dictionary    shopCode=${shopcode}    _security_token=${TT}
52     MoGet    /manage/getSetting.json    ${data}
53
54 获取当前盟友数量
55     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
56     ${data}    create dictionary    shopCode=${shopcode}    _security_token=${TT}
57     MoGet    /manage/isAllyNumValid.json    ${data}
58
59 搜索盟友
60     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498702    a12345678
61     ${data}    create dictionary    pageSize=5    page=1    province=${procode}    _security_token=${TT}
62     MoGet    /manage/searchAlly.json    ${data}
63
64 解除联盟
65     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498704    a12345678
66     ${data}    create dictionary    _security_token=${TT}    shopCode=002187
67     MoPost    /manage/removeAlly.json    form    data    ${data}
68
69 联盟设置
70     [Setup]    登录大风车    161a3797c8346bb1fc1    15868498704    a12345678
71     ${data}    create dictionary    _security_token=${TT}    linkName=4s用例一级    linkPhone=15868498705    shopDesc=哈哈哈哈
72     MoPost    /manage/setSetting.json    form    data    ${data}
时间: 2024-10-15 18:37:33

robot framework接口测试之一-完整的测试用例的相关文章

Robot Framework(九) 执行测试用例

3.1基本用法 Robot Framework测试用例从命令行执行,默认情况下,最终结果是XML格式的输出文件和HTML 报告和日志.执行后,可以组合输出文件,然后使用rebot工具进行后处理. 3.1.1开始测试执行 概要 指定要执行的测试数据 3.1.2使用命令行选项 使用选项 短期和长期期权 设置选项值 选项值为简单模式 3.1.3测试结果 命令行输出 生成的输出文件 退货代码 执行期间的错误和警告 3.1.4转义复杂的字符 3.1.5参数文件 3.1.6获取帮助和版本信息 3.1.7创建

Robot Framework 3.1.2 执行测试用例报错

robotframework执行测试用例报错,[WinError 2] 系统找不到指定的文件. 问题原因: Robot Framework 3.1.2 新版本不支持pybot. 问题解决: 1. execution profile 选择 custom script 2. script to run tests  填写 pybot实际路径 原文地址:https://www.cnblogs.com/joker666/p/12061038.html

robot framework中如何为每个测试用例,测试集准备数据或销毁数据

Suite Setup:在这个测试集的所有测试用例开始测试之前运行(类似于junit的@BeforeClass) Suite Teardown:在这个测试集的所有测试用例结束之后运行(类似于junit的@AfterClass) Test Teardown:在每个测试用例开始测试之后运行(类似于junit的@After) Test Teardown:在每个测试用例结束测试之后运行(类似于junit的@After) 用法: 用在Settings这里 后面直接加你要使用的关键字 如: 如上: Suit

robot framework 接口测试 http协议post请求json格式

讲解一个基础版本.注意区分url地址和uri地址. rf和jmeter在添加服务器地址也就是ip地址的时候,只能url地址,不能加uri地址,httprequester接口工具不一样,它直接是url+uri就等于url地址

Robot FrameWork测试案例

Robot FrameWork是一个自动测试框架,可到官网查看详细介绍. 安装 Robot Framework 本文中的Robot framework安装在Win7 (32 bit) 平台上. 接下来按顺序安装以下的软件/包. Software Version Post-steps Note Python python-2.7.6 Set ENV Var to PATH: C:\Python27 C:\Python27\Scripts   Robot Framework robotframewo

如何编写Robot Framework测试用例1---(基本格式篇)

引子 我们使用符合Robot Framework规范的一种表格语法来编写测试用例.用例一般会是下面这个样子 这样的表格存储到一个文件中,就是一组测试用例.RF支持多种格式,如HTML,TSV,纯文本等.它们长相大同小异,其实描述的都是一种内容.为了方便,推荐使用RIDE这个用例的编辑工具来编写测试用例,这些文本在RIDE环境下被打开长得是一个样子的. 测试用例与文件的关系 一个文件被称作一个测试套件(Test suit),期间可以包含多个测试用例.上图就是一个测试套件,里面包含2个测试用例,My

基于RFS(robot framework selenium)框架模拟POST/GET请求执行自动化接口测试

转载自:http://www.cnblogs.com/jerry-yin/articles/4812012.html 今天研究了一下基于RFS自动化测试框架实现HTTP的POST/GET请求发送执行自动化测试的过程. 首先还是要先感谢万能的google(PS:因为在百度中完全无法找到相关信息),同时还要感谢github上面那些无私奉献的软件工程师们(PS:因为这里需要用到github上面原创作者的安装和使用过程). 好了,感谢完了,现在就是翻译了. 第一步:安装及配置RFS环境 略(详细求度娘吧

2小时入门Robot Framework

1.介绍 1.1.介绍Robot Robot Framework是一个基于关键字驱动的自动化测试框架.通过该框架,测试人员可使用python封装关键字,并在非代码环境下使用关键字构建可被执行的测试用例 Robot Framework官方网站:http://robotframework.org/ 1.2.安装 1.2.1.Robot Framework Robot Framework支持Python和Jython,本文档针对ubuntu下Python进行讲解 下载地址:https://pypi.p

Robot Framework测试框架学习笔记

一.Robot Framework框架简介 Robot Framework是一种基于Python的可扩展关键字驱动自动化测试框架,通常用于端到端的可接收测试和可接收测试驱动的开发.可以用于测试声明涉及到多种技术和接口的分布式的,异构的应用系统. 测试用例位于HTML或者TSV(以tab分隔值)文件,使用在测试库中实现的关键词来在测试中运行程序.因为Robot Framework 是灵活和可扩展的,所以它很合适用于测试具有多种接口的复杂软件:用户接口,命令行,web service,编程接口等.