51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3141|回复: 3
打印 上一主题 下一主题

[转贴] 我工作中的 API 测试 (JMeter,oauth)

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-6-27 13:40:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
前一阵子一直没有下载到JMeter_oauth-v2,所以使用了eclipse直接写代码进行api测试,后来找到了,哈哈,以下是大概过程:  
环境配置
  • apache-jmeter-2.6(apache-jmeter-2.3.4)
  • ApacheJMeter_oauth-v2.jar,用于提交oauth请求的jar,下载地址




  • jorphan.jar,如果你选择使用jmeter2.6,需要下载这个jorphan.jar包,替换原有lib/下面的包,原因:jmeter2.6缺少oauth-v2使用的相关函数,所以重新写了一下里面的函数,下载,这个问题在这里,如果使用jmeter2.3.4,就不用下载替换了。  

jmeter使用我在使用时,组织结构如下图:




说明:  
1.cookie用于保存登录后的cookie。这个是我在提交一个登录操作后,查看“请求”中的数据,将里面的Cookie data设置到cookie(使用全局变量,登录中会写)中。




2.登录登录操作,单独写在了一个线程组中,登录请求使用http请求,请求后,需要使用正则表达式提取器,将oauth_token和oauth_token_secret提取并保存下来,用于后续提交数据的令牌验证。




需要将这两个值放在全局变量中,一边后续线程调用,“登录全局变量”,使用Bean Shell Sampler 将oauth_token,oauth、_token_secret和cookie值保存在全局变量中,使用时:${__property(全局变量名)}




3./share/add.ashx发分享测试,使用CSV Data Config将本地用例导进来:




导入之后,需要根据用例个数设置线程数:




使用Oauth Request提交发分享请求:   



分享请求下面,写断言,我是用的是响应断言,如果登录响应中的数据,包含${expected_text}(csv中的预期值),即通过,否则失败。  



4. 查看结果树执行完成后,可以查看结果  

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1
回复

使用道具 举报

  • TA的每日心情
    无聊
    2024-7-12 13:16
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    2#
    发表于 2017-6-27 13:48:39 | 只看该作者
    不错,分析的很详细!!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2017-6-27 13:51:08 | 只看该作者
    乐哈哈yoyo 发表于 2017-6-27 13:48
    不错,分析的很详细!!

    谢谢支持!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2017-7-20 11:25:37 | 只看该作者
    谢谢分享!~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-21 12:37 , Processed in 0.065568 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表