首页 > 代码库 > Service-Level Agreement (服务水平协议)

Service-Level Agreement (服务水平协议)

Service-Level Agreement (服务水平协议)

    SLA是为负载测试场景定义的具体目标。例如,评测脚本中任意数量事务的平均响应时间,可以定义具体的目标或阈值。测试运行结束之后,LoadRunner将你定义的目标与实际录制的平均事务响应时间进行比较,如果实际的平均事务响应时间未超过你定义的阈值,SLA状态将为通过,否则不通过。

    作为目标定义的一部分,你可以指示SLA将负载条件考虑在内。这意味着可接受的阈值将根据负载级别而有所更改(例如,运行的Vuser数、吞吐量等)。随着负载的增加,你可以允许更大的阈值。

SLA与面向目标场景的主要区别是前者有一定的调整幅度,而面向目标场景是很具体的目标设定。

LR常见函数

1.事务函数

Lr_start_transaction();    //标记事务的开始

Lr_end_transaction();    //标记事务的结束,一般情况下,事务开始与结束联合使用

Lr_get_trans_instance_status();    //得到事务的状态,当事务由许多步骤组成,或者可能存在导致事务失败的执行点,这个函数非常有用,可以通过检查状态和终止Vuser,可以避免不必要的活动。

Lr_get_transaction_think_time(); //得到事务的指定思考时间。

Lr_stop_transaction();    //停止事务,该函数返回当前事务的持续时间,以毫秒为单位,当为错误时返回一个负数。

2.日志函数:

Lr_debug_message(); //发送调试信息到日志文件,这个函数将返回设定的字符,不包括终止null字符。错误时返回一个负值。

Lr_get_debug_message();  //返回当前调试的信息,其返回值根据不同设置返回不同的值。

Lr_error_message(); //发送错误信息到LR输入窗口或日志文件里,如果这个函数成功,返回发送的消息的长度。如果函数失败,它将返回一个负数。

Lr_log_message(); //发送信息到用户日志文件,如果这个函数成功,返回发送的消息的长度。如果函数失败,它将返回一个负数。

Lr_output_message(); //发送信息到输出窗口或日志文件

Lr_vuser_status_message(); //发送虚拟用户的状态到LR的Controller,如果它成功,这个函数返回0,如果事务的名字是非法的或如果和Lr_start_transaction事务开始名称不同时,返回1.

3.运行时函数:

Lr_abort();  //终止执行的脚本,它能停止执行action部分,Vuser end部分,以及结束脚本执行。当你需要手动终止运行的一个特定的错误条件可以使用这个函数。当你结束运行使用此函数时,状态是“停止”。

Lr_continue_on_error();  //当发生错误后运行的事件,参数为1表示发生错误继续运行脚本,参数为0表示取消出错继续运行脚本。

Lr_exit();//该函数允许你运行中退出脚本。在声明该函数的事务退出后不会出现在Controller的事务状态集合中,也不会被计入到通过和失败的事务数。

Lr_think_time();//设置思考时间,在性能测试中为了更好模拟以后操作,可以根据实际生产环境设置思考时间。

Lr_rendezous();//集合点,可以设置虚拟用户相同操作之间进行集合,通过集合点可以增加被测试应用的压力,从而达到压力测试的目的。

Lr_load_dll();//调用DLL文件,这个函数执行成功,将返回0, 如果导致内存溢出条件 返回10,如果文件不存在,返回11.

 

 

 

Service-Level Agreement (服务水平协议)