51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2246|回复: 3
打印 上一主题 下一主题

新手提问 lr_save_string后无法用lr_eval_string取出参数的值

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-7-9 20:06:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

各位大大,小弟压测时遇到一个问题,给一个参数用lr_save_string后无法用lr_eval_string取出该参数的值,日志中打印出来的值问参数名。
请问该如何才能取出参数{ParamTest1}的值,并在日志中打印出来?
脚本如下:

Action()
{
    lr_start_transaction("Test");
        lr_think_time(2);
        lr_save_string("hello world","{ParamTest1}");
        lr_log_message("~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~");
    lr_log_message("The value of {ParamTest1} is: %s ! ",lr_eval_string("{ParamTest1}"));
        lr_log_message("~~~~~~~~~~~~~ End ~~~~~~~~~~~~~");
    lr_end_transaction("Test",LR_AUTO);
        return 0;
}


运行结果如下:
Starting action Action.        [MsgId: MMSG-15919]
Action.c(12): Notify: Transaction "Test" started.        [MsgId: MMSG-16999]
Action.c(13): lr_think_time: 2.00 seconds.        [MsgId: MMSG-15948]
Action.c(14): Notify: Saving Parameter "{ParamTest1} = hello world".        [MsgId: MMSG-13798]
~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
The value of {ParamTest1} is: {ParamTest1} !         [MsgId: MMSG-17999]
~~~~~~~~~~~~~ End ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
Action.c(18): Notify: Transaction "Test" ended with "Pass" status (Duration: 2.0004 Think Time: 1.9997).        [MsgId: MMSG-16872]
Ending action Action.        [MsgId: MMSG-15918]
Ending iteration 1.        [MsgId: MMSG-15965]
Starting iteration 2.        [MsgId: MMSG-15968]
Notify: Next row for parameter ParamTest = 2 [table  = ParamTest].        [MsgId: MMSG-13876]
Notify: Getting new value for parameter 'ParamTest': table = 'ParamTest.dat' column = '0' row = '2'.        [MsgId: MMSG-13877]
Notify: Next row for parameter ParamTest1 = 1 [table  = ParamTest1].        [MsgId: MMSG-13876]
Notify: Getting new value for parameter 'ParamTest1': table = 'ParamTest1.dat' column = '0' row = '1'.        [MsgId: MMSG-13877]
Starting action Action.        [MsgId: MMSG-15919]
Action.c(12): Notify: Transaction "Test" started.        [MsgId: MMSG-16999]
Action.c(13): lr_think_time: 2.00 seconds.        [MsgId: MMSG-15948]
Action.c(14): Notify: Saving Parameter "{ParamTest1} = hello world".        [MsgId: MMSG-13798]
~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
The value of {ParamTest1} is: {ParamTest1} !         [MsgId: MMSG-17999]
~~~~~~~~~~~~~ End ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
Action.c(18): Notify: Transaction "Test" ended with "Pass" status (Duration: 2.0009 Think Time: 2.0006).        [MsgId: MMSG-16872]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2017-7-10 09:27:06 | 只看该作者
这样写:lr_save_string("hello word","ParamTest1");

评分

参与人数 1测试积点 +10 收起 理由
lsekfe + 10 积极回复获得测试积点10 赶快去商城换取奖.

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2017-7-10 11:31:25 | 只看该作者
y2907818 发表于 2017-7-10 09:27
这样写:lr_save_string("hello word","ParamTest1");

我试了下lr_save_string("hello word","ParamTest1")的情况下, lr_eval_string("ParamTest1") 跟 lr_eval_string("{ParamTest1}") 都取不到 hello word,而还是取的参数名 ParamTest1跟{ParamTest1}。
情形一
脚本如下:
Action()
{
  lr_start_transaction("Test");
        lr_think_time(2);
        lr_save_string("hello world","ParamTest1");
        lr_log_message("~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~");
  lr_log_message("The value of {ParamTest1} is: %s ! ",lr_eval_string("{ParamTest1}"));
        lr_log_message("~~~~~~~~~~~~~ End ~~~~~~~~~~~~~");
  lr_end_transaction("Test",LR_AUTO);
        return 0;
}

日志如下:
Starting iteration 1.        [MsgId: MMSG-15968]
Starting action Action.        [MsgId: MMSG-15919]
Action.c(12): Notify: Transaction "Test" started.        [MsgId: MMSG-16999]
Action.c(13): lr_think_time: 2.00 seconds.        [MsgId: MMSG-15948]
Action.c(15): Notify: Saving Parameter "ParamTest1 = hello world".        [MsgId: MMSG-13798]
~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
The value of {ParamTest1} is: {ParamTest1} !         [MsgId: MMSG-17999]
~~~~~~~~~~~~~ End ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
Action.c(20): Notify: Transaction "Test" ended with "Pass" status (Duration: 2.0036 Think Time: 2.0029).        [MsgId: MMSG-16872]
Ending action Action.        [MsgId: MMSG-15918]
Ending iteration 1.        [MsgId: MMSG-15965]


情形二
脚本如下:
Action()
{
  lr_start_transaction("Test");
        lr_think_time(2);        //lr_save_string("hello world","{ParamTest1}");
        lr_save_string("hello world","ParamTest1");
        lr_log_message("~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~");
        lr_log_message("The value of \"ParamTest1\" is: %s ! ",lr_eval_string("ParamTest1"));
        lr_log_message("~~~~~~~~~~~~~ End ~~~~~~~~~~~~~");
  lr_end_transaction("Test",LR_AUTO);
        return 0;
}

日志如下:
Starting iteration 1.        [MsgId: MMSG-15968]
Starting action Action.        [MsgId: MMSG-15919]
Action.c(12): Notify: Transaction "Test" started.        [MsgId: MMSG-16999]
Action.c(13): lr_think_time: 2.00 seconds.        [MsgId: MMSG-15948]
Action.c(15): Notify: Saving Parameter "ParamTest1 = hello world".        [MsgId: MMSG-13798]
~~~~~~~~~~~~~ Begin ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
The value of "ParamTest1" is: ParamTest1 !         [MsgId: MMSG-17999]
~~~~~~~~~~~~~ End ~~~~~~~~~~~~~        [MsgId: MMSG-17999]
Action.c(20): Notify: Transaction "Test" ended with "Pass" status (Duration: 2.0142 Think Time: 2.0133).        [MsgId: MMSG-16872]
Ending action Action.        [MsgId: MMSG-15918]
Ending iteration 1.        [MsgId: MMSG-15965]
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2017-7-10 14:21:29 | 只看该作者
        lr_save_string("hello word","ParamTest1");
        lr_save_string(lr_eval_string("{ParamTest1}"),"a");
       
        lr_log_message ("login failed: %s",lr_eval_string("{a}"));
       
        //lr_output_message(lr_eval_string("{ParamTest1}"));
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-24 08:15 , Processed in 0.071806 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表