zoukankan      html  css  js  c++  java
  • loadrunner之用户自定义数据采集

         Loadrunner中lr_user_data_point、lr_user_data_point_instance两个函数可以用来记录一条自定义的Vuser运行数据,并将其输出到测试结果中,最后可以通过分析工具Analysis来分析数据采集情况。两者之间的区别是lr_user_data_point_instance函数可以用来记录指定事物实例的自定义数据。

    函数语法:

    int lr_user_data_point (const char *sample_name, double value);

    long lr_user_data_point_instance (const char *sample_name, double value, long transaction_handle);

    例一:

    Action()
    {


    web_set_max_html_param_len(
    "1024");

    web_reg_save_param(
    "JSESSIONID5",
    "LB/IC=jsessionid=",
    "RB/IC=\"",
    "Ord=11",
    "Search=body",
    "RelFrameId=1",
    LAST);

    web_url(
    "web",
    "URL=http://172.19.201.188:7001/web/",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t1.inf",
    "Mode=HTML",
    EXTRARES,
    "Url=images/login/3.swf", ENDITEM,
    LAST);

    web_reg_find(
    "Search=Body",
    "SaveCount=times",
    "Text={username}",
    LAST);

    web_submit_data(
    "logon.do;jsessionid=schvTJJpR1BCBYYv9hhhn6k5zMwzZJ7JtTp5yPKvjBm6QpJv1DsN!-1783399523",
    "Action=http://172.19.201.188:7001/web/pf/authentication/logon.do;jsessionid={JSESSIONID5}",
    "Method=POST",
    "TargetFrame=_parent",
    "RecContentType=text/html",
    "Referer=http://172.19.201.188:7001/web/",
    "Snapshot=t2.inf",
    "Mode=HTML",
    ITEMDATA,
    "Name=kind", "Value=1", ENDITEM,
    "Name=clientIPAddr", "Value=", ENDITEM,
    "Name=clientMacAddr", "Value=", ENDITEM,
    "Name=clientMachineName", "Value=", ENDITEM,
    "Name=username", "Value={username}", ENDITEM,
    "Name=password", "Value=1", ENDITEM,
    LAST);

    //lr_output_message("count=%d",atoi(lr_eval_string ("{times}")));

    if(atoi(lr_eval_string ("{times}"))>0) {

    web_url(
    "close.html",
    "URL=http://172.19.201.188:7001/web/pf/close.html",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t3.inf",
    "Mode=HTML",
    LAST);

    web_url(
    "redirectURL.jsp",
    "URL=http://172.19.201.188:7001/web/pf/redirectURL.jsp?redirect=true&kind=logon&U=1309938062295",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t4.inf",
    "Mode=HTML",
    LAST);

    web_url(
    "frameWork.jsp",
    "URL=http://172.19.201.188:7001/web/pf/webdesk/frameWork.jsp",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t5.inf",
    "Mode=HTML",
    EXTRARES,
    "Url=/web/styles/default/frame/images/lineBg.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/version.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/button-Table.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/button-info.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/button-login.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/images/logo_default.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/linemid.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/split.jsp", ENDITEM,
    "Url=/web/styles/default/frame/images/button-help.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/ArrowLeft.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/split.jsp", ENDITEM,
    "Url=/web/styles/default/images/popup_bg_menu.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/mainMessage.jsp?U=", ENDITEM,
    "Url=/web/styles/default/frame/images/line1.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/tabBg.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/line.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/naviMenuselect.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/lineleft.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=/web/styles/default/frame/images/buttonOff.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon1.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon4.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon3.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon2.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=/web/styles/default/frame/images/buttonOn.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=/web/styles/default/frame/images/buttonBg.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=system/webmessageshow.jar", "Referer=", ENDITEM,
    LAST);

    web_url(
    "commonAction.do",
    "URL=http://172.19.201.188:7001/web/cc/core/common/commonAction.do?action=ajaxRequest&ajaxRequestClass=epm.cc.core.web.common.action.AutoRefreshSessionAjaxRequest&ccuserNo=9001",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/navimenu.jsp",
    "Snapshot=t6.inf",
    "Mode=HTML",
    LAST);

    lr_user_data_point(
    "username",
    atoi(lr_eval_string(
    "{username}")));
    lr_end_transaction_instance(instance_id, LR_PASS);
    }

    else

    lr_end_transaction_instance(instance_id, LR_FAIL);

    return 0;

    }

     例二:

    Action()
    {
    long instance_id;

    web_set_max_html_param_len(
    "1024");

    web_reg_save_param(
    "JSESSIONID5",
    "LB/IC=jsessionid=",
    "RB/IC=\"",
    "Ord=11",
    "Search=body",
    "RelFrameId=1",
    LAST);

    web_url(
    "web",
    "URL=http://172.19.201.188:7001/web/",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t1.inf",
    "Mode=HTML",
    EXTRARES,
    "Url=images/login/3.swf", ENDITEM,
    LAST);

    web_reg_find(
    "Search=Body",
    "SaveCount=times",
    "Text={username}",
    LAST);

    web_submit_data(
    "logon.do;jsessionid=schvTJJpR1BCBYYv9hhhn6k5zMwzZJ7JtTp5yPKvjBm6QpJv1DsN!-1783399523",
    "Action=http://172.19.201.188:7001/web/pf/authentication/logon.do;jsessionid={JSESSIONID5}",
    "Method=POST",
    "TargetFrame=_parent",
    "RecContentType=text/html",
    "Referer=http://172.19.201.188:7001/web/",
    "Snapshot=t2.inf",
    "Mode=HTML",
    ITEMDATA,
    "Name=kind", "Value=1", ENDITEM,
    "Name=clientIPAddr", "Value=", ENDITEM,
    "Name=clientMacAddr", "Value=", ENDITEM,
    "Name=clientMachineName", "Value=", ENDITEM,
    "Name=username", "Value={username}", ENDITEM,
    "Name=password", "Value=1", ENDITEM,
    LAST);

    //lr_output_message("count=%d",atoi(lr_eval_string ("{times}")));

    if(atoi(lr_eval_string ("{times}"))>0) {

    instance_id
    = lr_start_transaction_instance("withresponse", 0);

    web_url(
    "close.html",
    "URL=http://172.19.201.188:7001/web/pf/close.html",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t3.inf",
    "Mode=HTML",
    LAST);

    web_url(
    "redirectURL.jsp",
    "URL=http://172.19.201.188:7001/web/pf/redirectURL.jsp?redirect=true&kind=logon&U=1309938062295",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t4.inf",
    "Mode=HTML",
    LAST);

    web_url(
    "frameWork.jsp",
    "URL=http://172.19.201.188:7001/web/pf/webdesk/frameWork.jsp",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=",
    "Snapshot=t5.inf",
    "Mode=HTML",
    EXTRARES,
    "Url=/web/styles/default/frame/images/lineBg.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/version.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/button-Table.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/button-info.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/button-login.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/images/logo_default.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/linemid.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/split.jsp", ENDITEM,
    "Url=/web/styles/default/frame/images/button-help.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getInfobar.do", ENDITEM,
    "Url=/web/styles/default/frame/images/ArrowLeft.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/split.jsp", ENDITEM,
    "Url=/web/styles/default/images/popup_bg_menu.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/mainMessage.jsp?U=", ENDITEM,
    "Url=/web/styles/default/frame/images/line1.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/tabBg.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/line.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/naviMenuselect.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/getNaviMenu.do", ENDITEM,
    "Url=/web/styles/default/frame/images/lineleft.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=/web/styles/default/frame/images/buttonOff.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon1.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon4.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon3.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=menu/images/item/big/icon2.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=/web/styles/default/frame/images/buttonOn.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=/web/styles/default/frame/images/buttonBg.gif", "Referer=http://172.19.201.188:7001/web/pf/webdesk/left/getMenuFromXml.do", ENDITEM,
    "Url=system/webmessageshow.jar", "Referer=", ENDITEM,
    LAST);

    web_url(
    "commonAction.do",
    "URL=http://172.19.201.188:7001/web/cc/core/common/commonAction.do?action=ajaxRequest&ajaxRequestClass=epm.cc.core.web.common.action.AutoRefreshSessionAjaxRequest&ccuserNo=9001",
    "TargetFrame=",
    "Resource=0",
    "RecContentType=text/html",
    "Referer=http://172.19.201.188:7001/web/pf/webdesk/top/navimenu.jsp",
    "Snapshot=t6.inf",
    "Mode=HTML",
    LAST);

    lr_user_data_point_instance(
    "username",
    atoi(lr_eval_string(
    "{username}")), instance_id);
    lr_end_transaction_instance(instance_id, LR_PASS);
    }

    else

    lr_end_transaction_instance(instance_id, LR_FAIL);

    return 0;
    }

         上面两脚本在Controller中执行完成后,就可以在Analysis中查看运行结果。启动分析工具后,点击Graph>>Add New Graph或者ctrl+a快捷键来打开新采集到得图表,可以看到User Ddfined Data Points下面有Ddfined Data(Sum)和Ddfined Data(Average)两类图表。双击对应的图表就会将用户自定义的数据分析结果添加到网页细分图里面。

         依次点击菜单Report>>Crystal Report>>Performance Report>>Data Point,就可以查看到各个Vuser运行时,用户自定义数据采集出来的具体信息了,如下图所示。对于自定义的一些相关业务交易信息之类的,在性能分析方面可以比较深入的分析出程序的瓶颈。

    专注于自动化、性能研究,博客为原创,转载请注明文章来源于:http://www.cnblogs.com/Automation_software/ 只求在IT界有一个清闲的世界让我静心的去专研,不求功名利禄,只为心中的那份成就感及自我成长、自我实现的快感。
  • 相关阅读:
    python爬虫开发与项目实践-学习笔记(一)
    python之TypeError
    学习笔记-python
    python学习之Unable to locate element
    Chrome浏览器之 webdriver(Chrome version must be >= 63.0.3239.0)
    POJ 1830 开关问题 高斯消元
    HDU 4135 Co-prime 容斥原理
    HDU 1796 How many integers can you find 容斥原理
    卡特兰数,组合数,斯特林数,逆元模板
    HDU 6134 Killer Names 数学 斯特林数
  • 原文地址:https://www.cnblogs.com/Automation_software/p/2099521.html
Copyright © 2011-2022 走看看