当前位置: 首页 > news >正文

小说网站防盗做的好电商运营培训课程

小说网站防盗做的好,电商运营培训课程,做网站 对方传销,网站设置地图目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 背景描述 项目要…

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

背景描述

项目要使用postman进行接口测试。

接口所需参数有:
appid:应用标识;
sign:请求签名,需要使用HMACSHA1加密算法计算,签名串是:{appid} u r l {url} url{stamp};
stamp:这个是时间戳;
option:业务参数;

问题是怎么在Postman发起请求时根据参数动态构建签名(sign)?

postman的脚本库中CryptoJS是支持各种算法的加密,包括HMACSHA1,签名算法有了。

难点是获取url中的path参数,当发起一个请求时开始可以固定一个path值的,自动化测试需要执行时获取path值,怎么获取呢?

1、创建一个GET请求

postman基础用法就不介绍了,先创建一个GET请求,URL中有配置各种动态参数

{{变量名}} :postman引用环境变量的语法;
{{$guid}}:postman预定义的环境变量用于获取一个GUID值;

在这里插入图片描述

2、在pre-request scripts构建签名

pre-request scripts 是个javascript执行环境,在请求发送之前执行;把他当做js用就行,不过有的js库是不支持的。

接下来就是动态获取签名了

1)appid环境变量中配置的固定值

2)stamp时间戳获取

//获取unix时间
getUnixTime:function(){return Math.round(new Date().getTime()/1000);
}

3)url值可以通过request.url获取然后解析出其中的path

//获取url的path部分
getUrlRelativePath:function(url){var arrUrl = url.split("//");var start = arrUrl[1].indexOf("/");var end=arrUrl[1].indexOf("?");var relUrl = arrUrl[1].substring(start,end);//stop省略,截取从start开始到结尾的所有字符console.log(relUrl);return relUrl;
}

4)构造签名串,使用秘钥加密即可

postman提供的加密算法库并不一定所有都支持,有时候需要向后台去换取签名;

var host=pm.environment.get("host");
var text=encodeURIComponent(plain);
pm.sendRequest(host+"/FaceIn/ToHmacsha1?plain="+text+"&secret="+sercret, function (err, response) {var json=response.json();//签名含有+等特殊字符需要url编码pm.environment.set("sign",encodeURIComponent(json.result));
});

签名串最好进行URL编码。

遗留问题:向后台换取签名的时候起初是返回字符串responsejson()解析不了的!

5)使用eval将定义的变量postmanUtil注入全局变量中然后调用

eval(environment.postmanUtil);
postmanUtil.setLsdzSign();

结果如图:

在这里插入图片描述

代码如下:

var postmanUtil={//获取unix时间getUnixTime:function(){return Math.round(new Date().getTime()/1000);},//获取url的path部分getUrlRelativePath:function(url){var arrUrl = url.split("//");var start = arrUrl[1].indexOf("/");var end=arrUrl[1].indexOf("?");var relUrl = arrUrl[1].substring(start,end);//stop省略,截取从start开始到结尾的所有字符console.log(relUrl);return relUrl;},//签名setLsdzSign:function(){var appid=pm.environment.get("appid");var sercret=pm.environment.get("appsercret");//时间戳var time=postmanUtil.getUnixTime();pm.environment.set("stamp", time);//地址 获取当前地址的path部分var path= postmanUtil.getUrlRelativePath(request.url);console.log(path);var url=path;var plain=appid+"$"+url.toLowerCase()+"$"+time;var hmac = CryptoJS.HmacSHA1(plain, sercret).toString(CryptoJS.enc.Base64);//获取签名,CryptoJS.HmacSHA1 无法满足签名算法只能从后台var host=pm.environment.get("host");var text=encodeURIComponent(plain);pm.sendRequest(host+"/FaceIn/ToHmacsha1?plain="+text+"&secret="+sercret, function (err, response) {var json=response.json();//签名含有+等特殊字符需要url编码pm.environment.set("sign",encodeURIComponent(json.result));});}
}
eval(environment.postmanUtil);
postmanUtil.setLsdzSign();

3、脚本写在环境变量中

在Pre-request Script写上面代码,要是单个接口还是可以的,即使很多接口只要Copy一份即可。

万一脚本需要改麻烦就来了,你需要去每个请求的 Pre-request Script窗口改,怎么解决呢?

可以解决,将postmanUtil定在ENVIRONMENT中就可以了。

做法如下:

在这里插入图片描述

其实就是将postmanUtil放入环境变量了,其它没有变,只要维护环境变量里的值就OK了,不用一个个去改。

再看pre-request script代码,这样就简单多了:

在这里插入图片描述

4、postman console的用法

不知道是否成功获取了环境变量,又或者想查看某个变量的值,postman也提供了很方便的控制台查看,菜单View下Show Postman Console可以打开如下控制台:

在这里插入图片描述

图中是console.log(sercret) 和 sendRequest()的结果

5、Collection Runner 自动化API测试

1)创建接口的测试用例

对于返回html的结果,只要测试body中包含某个值就算通过

在这里插入图片描述

对于返回Json结果,只要Code为0即为通过

在这里插入图片描述

窗口右侧有常用的脚本快捷操作,选中就可以生成,很方便

2)选择并运行自动化接口测试

点击主页左上角Runner进入,选择之前构建好的接口,并选择好环境,点击Run xxx 接口运行脚本测试

在这里插入图片描述

3)测试结果

可以看到结果2接口都成功返回预定的结果

在这里插入图片描述

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

无论现在的起点有多么低微,只要你有追求,愿意努力,相信并坚持自己的能力,你一定能创造出属于自己的辉煌,让梦想的火焰燃烧不灭!奋斗吧,勇敢的心!

奋斗是生命的底色,努力是成功的密码。不畏艰辛,放眼未来,勇往直前,追求卓越。用行动书写辉煌,用奋斗点亮人生,成就自己,创造无限可能!

只要心怀梦想,努力不懈,每一步都是向前的动力。成功需要时间,奋斗需要坚持,但只要你相信自己,勇往直前,未来的辉煌将属于你!

http://www.hkea.cn/news/225229/

相关文章:

  • 贵州软件开发 网站开发手机版百度一下
  • 企业网站建立答辩问题百度怎么发布广告
  • 温州快建网站地推拉新接单网
  • 濉溪县城乡建设委员会燃气办网站热狗网站排名优化外包
  • 网站能不能自己做免费的seo教程
  • 湖南的商城网站建设优化教程网下载
  • 做网站需要哪些工程师西安seo诊断
  • tp做的网站封装成app2023北京封控了
  • 增城做网站要多少钱推广普通话手抄报
  • 石家庄网站系统开发智能搜索引擎
  • 迅速网站网络营销平台推广方案
  • 学前端要逛那些网站微信引流主动被加软件
  • 韩国flash网站免费手机网站建站平台
  • 东莞做网站卓诚网络昆明长尾词seo怎么优化
  • WordPress个性萌化插件郑州seo优化哪家好
  • 专业手机移动网站建设免费的seo优化
  • 西安网站建设王永杰域名注册 万网
  • 网站营销优化方案北京做的好的seo公司
  • 企业网站排名提升软件优化南宁seo优化
  • 创意合肥网站建设杭州seo公司排名
  • 网站专题页是什么中国十大关键词
  • 五月天做网站网络策划与营销
  • 高校网站如何建设论文谷歌官网下载
  • 做网站内容软件个人网站怎么做
  • 收废铁的做网站有优点吗海南百度推广开户
  • wordpress 二维码插件下载信阳搜索引擎优化
  • 个人网站二级域名做淘宝客企业推广策略
  • 厦门做网站seo的seo服务公司招聘
  • 安徽池州做企业网站百度搜索官方网站
  • 芜湖商城网站建设青岛百度快速优化排名