脚本是用来运行需要测试对象的主要力量。
脚本主要分了3个部分vuser_init和Action和vuser_end这三个部分,vuser_init 是虚拟用户创建的函数,vuser_end是运行结束后销毁虚拟用户的函数,Action是主要的代码运行测试的部分。
Action可以建立多个,每一个Action都负责各自的事情。
Action()
{
//输入字符串
char input[500]="command=";
//日志记录地址
char *address="D:LoadRunnerWorkSpaceRunLoglog.log";
long filename;//定义存储文件指针的变量
//输入参数,进行了参数化,可以进行配置
char *cmd = lr_eval_string("{InputParam}");
//输出参数
char *out = "";
lr_start_transaction("init"); //定义初始化事务
strcat(input,cmd);
lr_end_transaction("init",LR_AUTO);//结束初始化事务
lr_rendezvous("beginaction");//事务集结点
lr_start_transaction("call");//初始化访问接口的事务
web_service_call( "StepName=ExecuteCommand_102","SOAPMethod=Test|TestSoap|ExecuteCommand","ResponseParam=response","Service=Test","ExpectedResponse=SoapResult","Snapshot=t1397177849.inf",BEGIN_ARGUMENTS,input,END_ARGUMENTS,BEGIN_RESULT,"ExecuteCommandResult=outPutParams",END_RESULT,LAST);
lr_end_transaction("call",LR_AUTO);//结束访问接口事务
lr_start_transaction("log");//初始化记录日志事务
//获取输入值
out = lr_eval_string("{outPutParams}");
//输出信息
lr_output_message("调用日志|Cmd=%s|Re=%srn",cmd,out);
//写自定义日志文件
if ((filename=fopen(address,"a+"))==NULL)//打开文件
{
lr_error_message("can not open this file,address=%s",address);
return -1;
}
fprintf(filename,"调用日志|Cmd=%s|Re=%srn",out);
lr_end_transaction("log",LR_AUTO);//结束访问接口事务
lr_start_transaction("interval");
lr_think_time(0.1); //定义思考时间,思考时间和模拟程序对业务处理事件有些类似
lr_end_transaction("interval",LR_AUTO);
return 0;
}
创建完成脚本之后单次执行该接口查看action程序是否正确,能够正常运行。
如果能够正常运行,进行下一步操作。