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