51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2710|回复: 2
打印 上一主题 下一主题

[原创] 如何以时间定义事务成败

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-27 12:13:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
在51testing  看到 LR的功能。
能以时间定义事务的成败。
例子代码 如下:
double time_elapsed, duration, waste;
merc_timer_handle_t timer;
Action()
{
lr_start_transaction("ACCP");
timer = lr_start_timer();
lr_think_time(3);
time_elapsed = lr_end_timer(timer);
// Convert to millisecond.s
waste = time_elapsed * 1000;
if(waste>3)
lr_end_transaction("ACCP", LR_FAIL);
else
lr_end_transaction("ACCP", LR_PASS);
return 0;
}


然后我自己录制的代码 中 自己定义了一个事务,然后想控制事务在1秒中内通过,然后才能判断事务成功。
但是 系统编译 抱错。
下面是我修改后的代码:
#include "web_api.h"

double time_elapsed, duration, waste;
merc_timer_handle_t timer;
Action()
{

        lr_start_transaction("lymlogin");
timer= lr_start_timer();
time_elapsed= lr_end_timer(timer);

        web_url("EMan",
                "URL=http://192.168.1.180:8099/EMan",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t1.inf",
                "Mode=HTML",
                LAST);

        web_url("index.jsp",
                "URL=http://192.168.1.180:8099/EMan/index.jsp",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t2.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=image/bg.gif", ENDITEM,
                "Url=image/button_sure_fb.gif", ENDITEM,
                LAST);

        web_submit_form("systemController",
                "Snapshot=t3.inf",
                ITEMDATA,
                "Name=loginID", "Value=lym", ENDITEM,
                "Name=loginPassword", "Value=sasdjk", ENDITEM,
                EXTRARES,
                "Url=image/main_h_1024.jpg", "Referer=http://192.168.1.180:8099/EMan/systemController?id=2", ENDITEM,
                "Url=image/bg.gif", "Referer=http://192.168.1.180:8099/EMan/systemController?id=2", ENDITEM,
                "Url=image/right.gif", "Referer=http://192.168.1.180:8099/EMan/systemController?id=2", ENDITEM,
                "Url=image/main_l_1024.gif", "Referer=http://192.168.1.180:8099/EMan/systemController?id=2", ENDITEM,
                "Url=image/state.gif", "Referer=http://192.168.1.180:8099/EMan/share/state1.jsp", ENDITEM,
                LAST);

        web_submit_data("designController",
                "Action=http://192.168.1.180:8099/EMan/designController?id=6745",
                "Method=POST",
                "RecContentType=text/html",
                "Referer=http://192.168.1.180:8099/EMan/systemController?id=2",
                "Snapshot=t4.inf",
                "Mode=HTML",
                ITEMDATA,
                LAST);

waste =time_elapsed*1000;
if(waste>1)

        lr_end_transaction("lymlogin", lr_fail_trans_with_error);
else
    lr_end_transaction("lymlogin",lr_pass);

系统提示错误信息:
Action.c (59): type error in argument 2 to `lr_end_transaction'; found `pointer to int function(pointer to char,...)' expected `int'
Action.c (61): undeclared identifier `lr_pass'
d:\\lrfile\\querye\\\\combined_querye.c (4): 2 errors, not writing pre_cci.ci

不懂。。如何能写 lr_pass);
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

3#
发表于 2007-10-29 11:11:29 | 只看该作者
timer= lr_start_timer();
time_elapsed= lr_end_timer(timer);
这里这两句不能这样写在一起的,第一句是开始时间,你紧接着就写time_elapsed是不对的。
按照你给出的代码来看,似乎应该把time_elapsed= lr_end_timer(timer);这句放到web_submit_data("designController",
                "Action=http://192.168.1.180:8099/EMan/designController?id=6745",这个前面。

楼主你看仔细例子的中间是有句lr_think_time(3);
这里的3和下面的if语句的waste>3,有很大关系的。
回复 支持 反对

使用道具 举报

该用户从未签到

2#
发表于 2007-4-28 09:23:37 | 只看该作者
LR_PASS是关键字来得,大小写敏感。
另外, lr_end_transaction("lymlogin", lr_fail_trans_with_error);好像也不对吧
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-9 00:49 , Processed in 0.069056 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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