美文网首页百人计划软件测试
Day18.前置处理器__熟悉常用组件

Day18.前置处理器__熟悉常用组件

作者: 伍个一 | 来源:发表于2020-06-22 23:55 被阅读0次

    单独的一个打卡,跟前面关联不强的,如果有问题没解决的,也可以尝试
    失误了,应该把Jmeter连接数据库放到前面的打卡里面的,这样子就可以在前置处理器取测试数据了。

    接口信息说明:
    用户管理模块
        登录接口
            api:post
            method:post
            request data:
                {
                    "loginName":"IDO",
                    "passwd":"123"//base编码
                }
        退出接口:
            api:get
            method:get
        添加用户接口:
            api:post
            method:post
            headers:{
               "Content-Type":"application/json",
               "token":""
            }
            request data:
                {
                    "login_name":"IDO",
                    "phone":"13100000000",
                    "real_name":"老徐",
                    "token":""
                }
        删除用户接口
            api:put
            method:put
            headers:{
               "Content-Type":"application/json",
               "token":""
            }
            request data:
                {
                    "login_name":"IDO",
                    "phone":"13100000000",
                    "real_name":"老徐",
                    "token":""
                }
    博文管理模块:
        添加博文接口:
            api:post
            method:post
            headers:{
               "Content-Type":"application/json",
               "token":""
            }
            request data:
                {
                    "blog_name":"21天打卡",
                    "bolg_title":"Jmeter打卡之Day16",
                    "blog_details":"21天打卡",
                    "token":""
                }
        删除博文接口:
            api:delete
            method:delete
            headers:{
               "Content-Type":"application/json",
               "token":""
            }
            request data:
                {
                    "blog_name":"21天打卡",
                    "bolg_title":"Jmeter打卡之Day16",
                    "blog_details":"21天打卡",
                    "token":""
                }
    

    1. 前置处理器说明

    • 在做功能测试的时候,前置处理器常用的有以下两种,其他的就先搁置一下,暂时用不到
    • 后置处理器的时候分析了使用场景,做接口管理,脏数据处理等操作,那么前置处理器用在什么场景?
    • 大家在做测试之前要做哪些事情?
    •       1.准备测试数据
      
    •       2.数据是否加密
      
    •       3.是否需要连接数据库取数据
      

    1.1 JDBC预处理程序

    • 由于之前的失误,没有提前给大家设置JDBC的打卡,这个JDBC的操作要延后才能进行
    • 换个角度看,大家平时在测试中操作数据库多么?都干什么?如果不会SQL的,移步隔壁的SQL打卡。
    • 场景
      1. 准备了大量的测试数据,CSV文件使用不方便,就放到数据库里,那么,测试之前需要把测试数据读取出来
      2. 接口参数比较多,一个一个入参比较麻烦,从库里导出准确数据,然后进行修改调整
    具体操作,明天进行,提前备好数据库
    

    1.2 BeanShell 预处理程序

    • BeanShell 这个在调整乱码的时候用到过,大家已经知道这个组件就是编写Java代码的了
    • 那么,这个组件的使用场景有哪些?
      1.最直接的,接口数据加密(执行测试用例之前进行加密)

    抛出来一个问题:大家了解的加密方式有哪些?适用于什么场合?

    • 常见的加密方式如下
    //base64加密
    import sun.misc.BASE64Decoder;//引入模板
    String tmp = new sun.misc.BASE64Encoder().encode("${passwd}".getBytes());//将原密码经过base64编码后赋给tmp
    //熟悉下面的语句么?抛出变量
    vars.put("passwd_base", tmp);
    //MD5加密在函数助手里,第二阶段详细聊
    //AES加密在函数助手里,第二阶段详细聊
    

    2.作业场景

    • a.之前大家提取公共变量的时候,把项目的接口相关信息抽离了出去,但是遗留了用户名和密码
    • b.在提供的接口信息中,登录接口中有一个密码base加密,一直没有完成过,今天,用前置处理器的beanshell来进行加密并传进登录接口中

    3.示例脚本

    3.1 图片示例

    加密前
    加密后

    3.2 脚本示例

    脚本示例

    相关文章

      网友评论

        本文标题:Day18.前置处理器__熟悉常用组件

        本文链接:https://www.haomeiwen.com/subject/dgmqfktx.html