每篇一问:黑人为什么喜欢吃白色巧克力?
1、 lr_error_message定义:
a) 发送一个本地详细的错误信息到输出窗口、日志文件或者其他测试报告摘要。
2、 lr_error_message格式:
a) Return
Values:这个函数成功的返回值是那被发送的长度信息。失败的返回值是一个负数。
b) Parameterization:不能找任何理由为这个函数进行标准参数化。
c) C语言的格式是:int lr_error_message(const char *format,exp1,exp2,...expn);
d) Java语言的格式是:int lr.error_message(String message);
3、 lr_error_message注意:
a) 在虚拟用户执行日志,发送的信息包含这个函数列表位置和行,发送一个信息不需要这些细节,使用lr_message。
b) 不建议你在一个事务的中间发送一个消息到输出窗口,因为它将延长执行时间。可以使用lr_log_message代替发送一个只有虚拟用户的日志文件。考虑修复源代码的时候可以在参考脚本生成器执行日志处以红色显示的lr_error_message函数的信息,使用错误代码17999。即使当日志不作为运行时设置的时候,注意这个函数发送出来的信息。
c) 如果run-time-setting>general>miscellaneous>fail
open transactions on lr_error_message是被选中的,调用lr_error_message将会成为一个发送信息失败的事务,如果你想保存共用这个事务的失败,在调用lr_error_message之前,使用Lr_get_transaction_duration函数捕获时间,然后使用lr_set_transaction创建报告时间的事务
4、 lr_error_message例子:
a) C语言例子:登录失败返回一个信息
int status = web_url("Login",
"URL=https://secure.computing.com//login.asp?user={username}&session={ssid}",
"RecContentType=text/html", LAST );
if (status == LR_FAIL)
{
lr_error_message("Error: %s", "Unable to login to secure
computing");
return -1;
}
b) Java语言例子:登录失败返回一个信息
try {
lr.start_transaction("create");
_carmel = _carmelhome.create();
lr.end_transaction("create", lr.AUTO);
}
catch (Throwable t) {
lr.end_transaction("create", lr.FAIL);
lr.error_message("Exception occur while
calling EJB create");
t.printStackTrace();
}
每篇一答:怕咬到自己的手指
零测试