51Testing软件测试论坛

标题: 关于waste time的疑问 [打印本页]

作者: 青miao    时间: 2012-12-12 13:46
标题: 关于waste time的疑问
最近一直在看云层老师的书,看到下面一段代码
Action()
{
    int i;
        int baseIter=100;
        int wasteTime;
        char dude[1000];
        merc_timer_handle_t timer;
    lr_start_transaction("Demo");
        for(i=0;i<=baseIter*1000;i++){
                sprintf(dude,"This is the way we waste time in a script=%d",i);
                }
        wasteTime=lr_end_timer(timer);
        lr_wasted_time(wasteTime*100);
        lr_end_transaction("Demo",LR_AUTO);                                                         
        return 0;
}
         -----------《性能测试进阶指南LR11》P206-207

书上说运行脚本,可以输出waste time的时间。但是我实际运行,没有输出这个时间(不知道是电脑本身的原因还是其他,若设置循环控制条件i<=baseIter*1000,似乎跑很久都不会停下来,我将它改成了10)
结果如下:
unning Vuser...
Starting iteration 1.
Starting action Action.
Action.c(10): Notify: Transaction "Demo" started.
Action.c(16): Notify: Transaction "Demo" ended with "Pass" status (Duration: 12.6527).
Ending action Action.
Ending iteration 1.
Ending Vuser...
Starting action vuser_end.

并没有waste time 的时间输出。恳请大家帮帮忙看看,这究竟是什么原因
作者: 青miao    时间: 2012-12-13 10:02
没人回答啊,各位大神!!!求助啊
作者: 青miao    时间: 2012-12-13 10:02
我在顶一次
作者: 西风一任秋    时间: 2012-12-13 12:26
刚刚试了下,将wasteTime定义改为Double类型,然后加个lr_start_timer就可以了
作者: 青miao    时间: 2012-12-13 13:47
回复 4# 西风一任秋

   大神,用你的办法改了我这边还是不行啊。能再给看看嘛,谢谢
    Action.c (9): operands of = have illegal types `pointer to void' and `int'

代码
Action()
{
    int i;
        int baseIter=100;
        double wasteTime;
        char dude[1000];
        merc_timer_handle_t timer;
    lr_start_transaction("Demo");
        timer=lr_start_time();
        for(i=0;i<=baseIter*1000;i++){
                sprintf(dude,"This is the way we waste time in a script=%d",i);
                }
        wasteTime=lr_end_timer(timer);
        lr_wasted_time(wasteTime*100);
        lr_end_transaction("Demo",LR_AUTO);                                                         
        return 0;
}
作者: 青miao    时间: 2012-12-14 10:18
快要沉了~~大神
作者: coolluo    时间: 2012-12-14 17:11
Action()
{
    int i;
        int baseIter=100;
        int wasteTime;
        char dude[1000];
        merc_timer_handle_t timer;
    lr_start_transaction("Demo");
        timer=lr_start_timer();
        for(i=0;i<=baseIter*10;i++){
                sprintf(dude,"This is the way we waste time in a script=%d",i);
                }
        wasteTime=lr_end_timer(timer);
        lr_wasted_time(wasteTime*10);
        lr_end_transaction("Demo",LR_AUTO);                                                         
        return 0;
}
我的代码是这样的,可以看到waste time 的时间
作者: 青miao    时间: 2012-12-17 10:10
回复 7# coolluo

是这样的,谢谢!
作者: 云层    时间: 2012-12-17 10:42
兄弟。。。你坑我了。。

书上有这句  timer=lr_start_timer();
你自己抄没有了导致没有wasted time的。。。。害的我专门去翻了翻书还以为是我写出bug了呢




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2