|
本帖最后由 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
|
|