在客户端界面,输入用户名和密码后,点击登录,会经过一个第三方的加密控件加密,然后才发出报文,登录成功.
如果想做接口自动化测试,那么登录的时候发送的报文,怎么解决这个加密的问题呢?
目前只能够要开发人员延长 session 的有效期,从抓取的返回报文里面拿个 session 用着.
有什么方法可以通过这种加密控件,模拟登录成功吗?
如果这个加密只是对密码加密了,并没有什么时效限制的话,接口测试直接传这个加密后密文密码就可以了。
那就很好操作啦,我以前都是用 jmeter 来做的,把加密函数封装成 jar ,在 beanshell 前置处理器里面 引用 jar 内容 。再 vars.put()进内置函数里,最后在参数里通过 ${参数}的方式引用就好啦。
好像也不是第三方加密.. 就是先用 ase 密钥加密内容,然后用 rsa 密钥把 ase 的密钥加密. 再发出去.
第三方加密???可以说明一下不?我见过的 一般的登录 都是 Oauth 鉴权的方式。单纯的参数 或者头加密的话,就把加解密的函数拿来调用就可以
两种方法: 1、和开发要一个加密的 jar 包,加到接口测试工程中,加密的时候调用 2、直接和开发要源码,直接加到接口工程中
最好使用和开发同一种语言,如果自己再写一次加密算法,也是够累的
看你发送的请求里和这个加密控件相关的字段是什么?http 的话无非就是个 sign 之类的吧