喵小妖7117 发表于 2016-3-4 11:13:17

LR中用户名是加密的,有了加密方式,如何改写脚本

通过LR录制脚本发现,用户名是加密的。找开发要了加密的方式encode64,代码如下:
// base64加密开始 encode64-->

seagull1985 发表于 2016-3-4 11:13:18

不能直接运行,提个方法给你吧,把要参数化的用户名(相信在你们数据库中)读出来,用JAVA加密后,输出到文本里面或是数据库里面,再拿出来放到LR里面来参数化。

喵小妖7117 发表于 2016-3-4 11:14:01

代码如下:
// base64加密开始 encode64-->
        var keyStr = "ABCDEFGHIJKLMNOP" +"QRSTUVWXYZabcdef" +"ghijklmnopqrstuv" +"wxyz0123456789+/" + "=";

        function encode64(input) {

        var output = "";
        var chr1, chr2, chr3 = "";
        var enc1, enc2, enc3, enc4 = "";
        var i = 0;
        do
        {
        chr1 = input.charCodeAt(i++);
        chr2 = input.charCodeAt(i++);
        chr3 = input.charCodeAt(i++);
        enc1 = chr1 >> 2;
        enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
        enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
        enc4 = chr3 & 63;
        if (isNaN(chr2)){
        enc3 = enc4 = 64;
        }else if (isNaN(chr3)){
        enc4 = 64;
        }
        output = output +
        keyStr.charAt(enc1) +
        keyStr.charAt(enc2) +
        keyStr.charAt(enc3) +
        keyStr.charAt(enc4);
        chr1 = chr2 = chr3 = "";
        enc1 = enc2 = enc3 = enc4 = "";
        } while (i < input.length);

        return output;
          
        }       
        //- base64加密结束

喵小妖7117 发表于 2016-3-4 11:19:56

怎么之前提的问?没显示全呢?

喵小妖7117 发表于 2016-3-4 11:21:10

我想要对用户名进行参数化,也就意味着每次用户名获取的值应该是加密后的值。因此我需要在脚本中写加密的脚本,然后过滤下参数化的用户名,用于成功登录。所以请教下大家,要如何改写以上的加密文件,使得其能够运用到脚本中,对用户名进行加密呢?

喵小妖7117 发表于 2016-3-4 15:49:13

seagull1985 发表于 2016-3-4 13:59
不能直接运行,提个方法给你吧,把要参数化的用户名(相信在你们数据库中)读出来,用JAVA加密后,输出到文 ...

多谢,我自己解决了。在LR中用脚本对用户名进行了加密解密

喵小妖7117 发表于 2016-3-4 15:54:41

方法答案见如下博文:
http://www.51testing.com/index.php?uid-15103841-action-viewspace-itemid-3707340
http://www.51testing.com/index.php?uid-15103841-action-viewspace-itemid-3707341
http://www.51testing.com/index.php?uid-15103841-action-viewspace-itemid-3707343

顺便吐槽一下:51testing的日志编写功能真不好用。字数超出了,不提醒,保存的时候直接没了。搞得我又要重新弄。反正各种不好用,不能直接贴图。

喵小妖7117 发表于 2016-3-4 16:03:32

方法答案见如下博文:
http://www.51testing.com/index.p ... pace-itemid-3707340
http://www.51testing.com/index.p ... pace-itemid-3707341
http://www.51testing.com/index.p ... pace-itemid-3707343

喵小妖7117 发表于 2016-3-4 16:04:08

不能设置自己的答案为最佳答案吗?明明都是我自己解答出来的

wuxi88 发表于 2016-3-8 10:24:32

自己提问,自己解答是可以的额,设置自己答案未最佳可能是不可以的吧,用这个函数lr_decrypt()
页: [1]
查看完整版本: LR中用户名是加密的,有了加密方式,如何改写脚本