Loadrunner如何遍历一个页面中的url并进行访问?

最近在网上到一个关于loadrunner遍历一个页面中的url并进行访问脚本,就把它用我们自己的项目实践了一下,发现有一点不完善。

原始版本:

Action()
{
char temp[64];
int num = 0 ;
int i = 0 ;
char *str ;
// char *temp ;
//获取函数,是一个数组
web_reg_save_param(
“UrlList”,
“LB/ALNUMIC=<a href=\”",
“RB=\”",
“ORD=all”,
LAST);

web_url(“localhost”,
“URL=http://www.baidu.com”,
LAST);
//获取数据的长度
str = lr_eval_string(“{UrlList_count}”);
lr_error_message(“%s”,str);
num = atoi(str);

for(i=1;i<=num;i++){
//格式化输出
sprintf(temp,”{UrlList_%d}”,i);
//生成参数
lr_save_string(lr_eval_string(temp),”Turl”);
//判定URL 是否合法
if (strstr(lr_eval_string(temp),”http”)) {
web_url(“TESTER”,”URL={Turl}”, LAST);
}else
{
lr_error_message(“Url is not exits”);
}

}
return 0;
}

把上面的url改成我们自己的项目的时候,运行出现在了问题,我们的项目在页面里面的url都是写的相对路径,也就是没有前面的域名地址,这样的相对路径是不能被web_url函数访问,然后就是提示了一大片url无效。它不能访问也就是差一个域名地址,那我把每一个这样的相对地址加一个不就可以访问了吗?

我们页面访问使用的是session,所以里面的相对地址前面都是以session开头,所以我在原来的版本上面增加了两个步骤,第一个就是获取每一次访问的session,然后以它判断是否是没有域名开头的usl,是的,再给它把域名加上去再访问。

以下是我改版的:

Action()
{
 char    temp[64];
 int  num = 0;
 int  i = 0;
 char  *str;
 char fullurl[1024];

//获取函数,是一个数组
 web_reg_save_param("UrlList","LB/ALNUMIC=<a href=\"",
        "RB=\"","ORD=all",
         LAST);

//获取每一次访问生成的session,以便后面判断url
 web_reg_save_param("SessionID",
  "LB=Object moved to <a href=\"/",
  "RB=/\">here</a>",
  "Search=Body",
  LAST);

web_url("localhost",
   "URL=http://xxx.xxxx.cn/",
   LAST);

//获取数组的长度
 str=lr_eval_string("{UrlList_count}");
 lr_error_message("s%",str);
 num=atoi(str);

for(i=3;i<=num;i++){

//格式化输出
  sprintf(temp,"{UrlList_%d}",i);

//生成参数
  lr_save_string(lr_eval_string(temp),"Turl");

//判定url是否合法
        if(strstr(lr_eval_string(temp),"http")){

web_url("TEST","URL={Turl}",LAST);
   
        }
  else if(strstr(lr_eval_string(temp),lr_eval_string("{SessionID}")))
  {
   //lr_error_message(lr_eval_string("{Turl}"));
   //完善url
   strcpy(fullurl,"http://xxx.xxxx.cn/");
   strcat (fullurl,lr_eval_string("{Turl}"));

//生成新的url参数
   lr_save_string(fullurl,"url");
   web_url("Every","URL={url}",LAST);
  }
  else
        {
            lr_error_message("Url is not exits");
   lr_error_message(lr_eval_string("{Turl}"));
        }

}

return 0;
}

时间: 2024-12-14 05:01:15

Loadrunner如何遍历一个页面中的url并进行访问?的相关文章

如何将一个HTML页面嵌套在另一个页面中

这个在做网页中常要用到,有些通用的内容可集中放在一个页面文件中,其它要用到这些内容的页面只需要包含(引用)这个通用文件即可.这样便于维护,如果有很多网页,当通用内容需要修改时,只改一个文件就可以了,不需要每个文件单独修改. 最典型的应用比如页脚的版权信息等内容可以放在一个叫做footer.html文件里, 然后其他页面文件在页面内容的最后包含这个文件就可以了,具体例子下面有. 要html文件嵌套,最简单的办法是使用SSI(Server Side Include)技术,也就是在服务器端两个文件就被

网站开发进阶 十 如何将一个html页面嵌套在另一个页面中

如何将一个html页面嵌套在另一个页面中 1.IFrame引入 <IFRAME NAME="content_frame" width=100% height=30 marginwidth=0 marginheight=0 SRC="import.htm" ></IFRAME> 你会看到一个外部引入的文件,但会发现有一个类似外框的东西将其包围,可使用 <iframe name="content_frame" margi

如何获取上一个页面中checkbox控件选中的值

php开发中,<php开发中.<php开发中.如何获取上一个页面中checkbox控件选中的值呢?并输出出来,以下是代码示例: <? $music=$_POST['music']; //取得所选中的checkbox个数 $coun=count$music; ifis_arrai$music{ echo'您选择的 : '; foreach$musicas$kei=>$var echo'  ['.$var.']'; echo$key; } ?> *****************

一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么?

一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了: 1.浏览器补全URL地址 在输入完URL之后,浏览器会自动检查该地址是否完整,例如是否有添加https协议,若发现不完整,会自动补全. 2.向DNS查询IP地址 每个域名都对应一个或多个提供相同服务服务器的 IP 地址,只有知道服务器 IP 地址才能建立连接,所以需要通过 DNS 把域名解析成一个 IP 地址. 3.得到IP地址后,建立连接,进行三次握手 即每次建立连接前,客户端和服务端都要先进行三次对话才开始正式传输内容,三次对

一个页面从输入url到页面加载显示完成,中间都经历了什么

第一种解释: 一般会经历以下几个过程: 1.首先,在浏览器地址栏中输入url 2.浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容.若没有,则跳到第三步操作. 3.在发送http请求前,需要域名解析(DNS解析)(DNS(域名系统,Domain Name System)是互联网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住IP地址.),解析获取相应的IP地址. 4.浏览器向服务器发起tcp连接,

一个页面从输入URL到页面加载显示完成,这个过程中发生了什么?

1.浏览器通过DNS查找域名对应的IP地址(DNS查询:浏览器缓存-->系统缓存-->路由器缓存-->ISP DNS 缓存 -->根域名服务器) 2.浏览器向Web服务器发送一个HTTP请求(TCP三次握手) 3.服务器301重定向(从http://example.com重定向到http://www.example.com) 4.浏览器跟踪重定向地址,请求另一个带www的网址 5.服务器处理请求(通过路由读取资源) 6.服务器返回一个HTTP响应(报头中把Content-type设

一个页面从输入URL到加载完成,发生什么事

1.浏览器会开启一个线程来处理这个请求,对URL分析判断如果是http协议就按照Web方式来处理: 2.调用浏览器内核中的对应方法,比如WebView中的loadUrl方法: 3.通过DNS解析获取网址的IP地址,设置UA等信息发出第二个GET请求: 4.进行HTTP协议回话,客户端发送报头(请求报文): 5.进入到web服务器上的WebServer,如Apache.Tomcat.Node.js: 6.进入部署好的后端应用,如PHP.Java.javascript.Python等,找到对应的请求

一个页面从输入URL 到页面加载显示完成的过程中都发生了什么

前端面试/笔试必考问题,越详细越好 先简单得讲: 浏览器根据请求的URL交给DNS域名解析,找到真实IP,向服务器发起请求: 服务器交给后台处理完成后返回数据,浏览器接收文件(HTML.JS.CSS.图象等): 浏览器对加载到的资源(HTML.JS.CSS等)进行语法解析,建立相应的内部数据结构(如HTML的DOM): 载入解析到的资源文件,渲染页面,完成. 详细得说: 1.当发送一个URL请求时,不管这个URL是Web页面的URL还是Web页面上每个资源的URL,浏览器会开启一个线程来处理这个

一个页面从输入URL到页面加载显示完成的详细过程

下面以访问baidu页面来做一个过程分析 输入 URL:http://www.baidu.com DNS 域名解析 计算机无法识别域名,计算机与计算机之间要想进行通信,必须通过ip地址用来定位该计算机所在的位置 在浏览器中,输入的ip地址或者域名,默认给你加了一个80端口号(对方的服务器监听的就是80端口) 158.12.25.652 域名就是为了好记 为了好记,所以我们的万维网提供了 一个 域名这样的概念 当你输入了 ip 地址后,浏览器会自动去 找DNS域名解析服务器, 建立 TCP 连接(