1)用户事务函数
int lr_start_transaction(const char* transation_name); |
|
int lr_end_transaction(const char* transaction_name,int status); | LR_PASS LR_FAIL LR_AUTO(默认值是LR_PASS) LR_STOP 可以通过lr_set_transaction_status修改 |
long lr_start_transaction_instance(const char* transaction_name, long handle); | handle是父实例的句柄,如果handle=0,则会创建一个父实例
|
int lr_end_transaction_instance(long handle,int status); |
|
double lr_stop_transaction(const char * transaction_name); |
|
void lr_resume_transaction(const char * transaction_name); |
|
int lr_set_transaction_status(int status); |
|
int lr_set_transaction_status_by_name(int status, const char * trans_name); |
|
int lr_set_transaction_instance_status(int status,long trans_handle); |
|
int lr_fail_trans_with_error(const char * format, expr1,expr2,...,exprn); | 将当前所有处于执行状态的事务修改为失败状态,然后发送一个错误消息,如果事务结束函数指定相关事务结束状态为LR_AUTO,则事务以失败状态结束否则按照指定状态结束 |
double lr_get_transaction_think_time(const char * transaction); | 只有对于当前处于运行状态的事务,才能返回大于等于零的结界 |
double lr_get_transaction_wasted_time(const char * transaction); | 返回指定事务当前的损耗时间,损耗时间通常指脚步消耗在为了支持测试分析而做的操作时间,例如一些循环赋值操作或插入的检查点操作。只能对当前处于运行状态的事务才能返回大于等于零的结果,否则将返回小于零的结果;二是使用它之前应该调用lr_wasted_time函数移除过损耗时间wasted time |
double lr_get_transaction_duration(const char * transaction_name) | 返回指定事务运行到lr_get_transaction_duration时所消耗的秒数 |
int lr_get_transaction_status(const char* transaction_name); | 获得指定事务的运行状态 |
void lr_wasted_time(long time);
| 用于移除所有当前运行状态事务的损耗时间。 merc_timer_handle_t timer; double time_elapsed; timer = lr_start_timer(); ... time_elapsed = lr_end_timer(timer); lr_wasted_time(time_elapsed*1000); lr_get_transaction_wasted_time("transactionname"); |
2)字符串处理函数
int lr_save_string(const char* param_value, const char *param_name); |
|
int lr_save_var(const char *param_value,unsigned long const value_len, unsigned long const options, const char * param_name); |
|
char * lr_eval_string(const char * instring); | 返回参数的实际内容 lr_eval_string("{ParamStr}"); lr_eval_string("ParamStr = {ParamStr}");
|
3)消息处理函数
lr_debug_message | 向日志文件或controller控制台输出一个debug类型消息 | |
lr_error_message | 向日志文件或controller控制台输出一个Errors类型消息 | |
lr_log_message | 向虚拟用户的日志文件发送消息 | |
lr_message | 向日志文件或controller控制台输出一个普通类型消息 | |
lr_output_message | 向日志文件或controller控制台输出一个通知类型消息 | |
lr_vuser_status_message | 向controller的虚拟用户状态窗口的虚拟用户状态窗口发送一个消息,同时消息也会发送到日志文件中 | |
int lr_set_debug_message(unsigned int message_level, unsigned int on_off) | 设置当前脚本的消息级别
| |
LR_MSG_CLASS_DISABLE_LOG | lr_debug_message指定的消息级别受runtime setting与lr_set_debug_message设置级别的共同影响. LR_SWITCH_ON开启前面参数指定的级别; LR_SWITCH_DEFAULT将采用runtime settings设置级别; LR_SWITCH_OFF关闭前面参数指定的级别; | |
LR_MSG_CLASS_BRIEF_LOG | ||
LR_MSG_CLASS_EXTENDED_LOG | ||
LR_MSG_CLASS_RESULT_DATA | ||
LR_MSG_CLASS_PARAMETERS | ||
LR_MSG_CLASS_FULL_TRACE | ||
unsigned int lr_get_debug_message | 返回当前的消息设置级别 |
默认情况下lr_debug_message输出的消息仅在vugen中看到,在controller中点击Tools-Expert Mode切换到专家模式,然后点击tools-options,切换到debug information后,选中general复选框
4) 脚本信息函数
lr_whoami |
|
lr_get_host_name lr_get_master_host_name |
|
lr_get_vuser_ip |
|
merc_timer_handle_t lr_start_time(); double lr_end_time(merc_timer_handle_t timer); |
|
lr_user_data_point lr_user_data_point_instance lr_user_data_point_ex lr_user_data_point_instance_ex |
|
5) 错误处理函数
void lr_continue_on_error(int value); | 0 取消出错继续执行设置 1 发生错误继续运行脚本 2 发生错误跳至下个action运行 3 发生错误跳至下一迭代来运行 4 发生错误结束当前用户 lr_continue_on_error(0);//下面是一些重要事务代码,因此关闭出错继续执行设置 ... lr_continue_on_error(1);//下面是一些非关键事务代码 |