技术分享 | 接口自动化中如何完成接口加密与解密?
加密是一种限制对网络上传输数据的访问权的技术。将密文还原为原始明文的过程称为解密,它是加密的反向处理。在接口开发中使用加密、解密技术,可以防止机密数据被泄露或篡改。在接口自动化测试过程中,如果要验证加密接口响应值正确性的话,就必须使用正确的解密方式先对其实现解密,再完成验证。
解决方案
通用加密算法
场景:了解数据使用的通用加密算法,例如 base64。
解决方案:使用通用的解密算法在获取加密响应信息后,对数据进行解密操作。
研发提供加解密 lib
场景:不了解对应的加密算法。
解决方案:需要研发提供加解密对应的 lib 包,完成数据解密。
提供远程解析服务
场景:既不是通用加密算法,研发也无法提供 lib 包。
解决方案:需要加密方提供远程解析服务,这样既解决了加解密问题,研发方也无需担心加解密算法暴露的问题。
实战练习
接下来对 httpbin 服务发起一个 base64 加密后的数据信息,httpbin 服务会将此加密数据再次返回,通过这个方式,模拟一个加密后的响应数据。
针对加密后的响应数据,在断言之前将其解析,获取到正常的数据再进行断言。
Python 版本
复制代码
Java 版本
复制代码
点击下方链接免费领取:性能测试+接口测试+自动化测试+测试开发+测试用例+简历模板+测试文档
http://qrcode.testing-studio.com/f?from=infoQ&url=https://ceshiren.com/t/topic/22265
评论