51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 7501|回复: 5
打印 上一主题 下一主题

Java接口测试,研发自定义的md5加密方法,如何测,在线等…

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2015-5-28 18:59:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fridaymorning 于 2015-5-28 19:01 编辑

接口测试,求指点,求指点!!!!!!!!在线等


环境描述:java开发的接口,提供给手机APP。
接口比较多,比较笨的办法就是写Junit(能力有限,参数都写的死的,一个类一个方法的测),现在想用jmeter做。表喷我,说Jmeter一般用来做性能的都是高手,我想用jemetr来做,纯碎是因为方便后期回归。

之前做的接口:http://localhost:8080?login.json?a=1&b=2这样的。直接添加一个用户参数,http请求,查看结果树就能搞定。修改参数的时候直接在用户参数里面修改。

接口请求如下:
String1=UrlEncod(a=1&b=2&c=3),其中abc是参数,UrlEncod是一个加密方法。
Post的http://localhost:8080/login.html?value=String1&ID=123

研发提供了一个方法post的方法:postURL(String url, Map<String, Object> map).将参数以Map的形式添加进去。写Junit也是直接调用的这个方法。如下
@Test  //登录 异常      cellphone ""
    public void loginCellphoneEmpty() {
        Map<String, Object> map =new HashMap<String, Object>();
        map.put("cellphone","");
        map.put("password", "123456");
        String code=HasCode(map,post_url);
        assertThat(code, is("1"));
    }


跪求建议(求提供一个例子):
1、还是写Junit测试,怎么把数据都参数化。统一管理,不用一个类一个类的去修改测试数据。
2、Jmeter有2个方法。
      1)、写类继承AbstractJavaSamplerClient。方法类似研发给的。但是我得一个类写个,然后添加到Jmeter里面添加Java请求。是不是我理解不对,轻拍。
      2)、把研发给的方法打一个包,在测试计划中添加进去。然后添加BeanShell Sampler。参数从用户参数中获取。但是一直报错。没搞定。添加一个http请求,value值=${loginen}$ID=123.BeanShell Sampler如下。


         import java.util.HashMap;
         import java.util.Map;
         import com.fxr.sdk.util.Constant;
         import com.fxr.sdk.util.DESUtil;
         import com.fxr.sdk.client.SdkClient;


         SdkClient sdk = new SdkClient();
         Map map = new HashMap();
         map.put("cellphone", "18267102941");
         map.put("password", "123456");
         String fxr="http://127.0.0.1/login.json";
         String url=sdk.postURL(fxr, map);
         vars.put("loginen",url);




我现在唯一成的就是Junit。其他都没成功过。路走歪了,还是怎么的,求指点~~~~~~~~~~~~啊~~~~~~~~~~~~~~~~~就差以身相遇了

联系方式QQ:965091126















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

使用道具 举报

  • TA的每日心情
    奋斗
    前天 07:57
  • 签到天数: 2663 天

    连续签到: 3 天

    [LV.Master]测试大本营

    2#
    发表于 2015-5-29 11:39:38 | 只看该作者
    1/Junit想参数化,可以自己定义一个参数类啊,所有你自己写的接口类都包含这个类,然后直接在接口中修改参数值,不知道你是不是这个意思(可以向你们研发请教啊);
    2/Jmeter中BeanShell Sampler没用过,你可以录制一个接口操作,因为参数都是可视化的,你直接修改参数就可以了,也可以在测试计划中定义变量,每个接口使用变量名;没怎么明白你的描述.

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 恭喜你获得测试积点10

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-3-19 21:43
  • 签到天数: 59 天

    连续签到: 1 天

    [LV.5]测试团长

    3#
    发表于 2016-1-4 20:56:39 | 只看该作者
    http协议直接用jmeter的http sampler啊   为何要用java请求,多此一举
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2016-4-15 11:36:31 | 只看该作者
    问题解决了吗,,用jmeter接口测试可以
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2016-4-15 18:15:45 | 只看该作者
    UrlEncod只是编码非,加签加密几个办法:
    1.最新的jmeter似乎带有MD5加签
    2.用beanshell使用最原始的办法实现加签加密,太高级似乎包认不出
    3.自己写接口继承
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2016-4-15 18:19:33 | 只看该作者
    另你先搞清楚用的是编码urlencode,加签MD5,还是加密AES ,RSA.动态的加密jmeter我试验过2.13的似乎不行,还得自己写。最快的办法就是让开发把加密去掉,或者校验的时候写死PASS。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-2 08:35 , Processed in 0.068665 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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