<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>进化的测试 &#187; 性能测试</title>
	<atom:link href="http://magustest.com/blog/tag/performance-testing/feed/" rel="self" type="application/rss+xml" />
	<link>http://magustest.com/blog</link>
	<description>软件测试，自动化测试，白盒测试，Python</description>
	<lastBuildDate>Thu, 17 May 2012 14:19:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>LoadRunner模拟客户端发送JSON格式的请求</title>
		<link>http://magustest.com/blog/loadtest/json-format-request-using-loadrunner/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=json-format-request-using-loadrunner</link>
		<comments>http://magustest.com/blog/loadtest/json-format-request-using-loadrunner/#comments</comments>
		<pubDate>Thu, 25 Dec 2008 13:26:09 +0000</pubDate>
		<dc:creator>magus</dc:creator>
				<category><![CDATA[性能测试]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[LoadRunner]]></category>

		<guid isPermaLink="false">http://magustest.com/blog/?p=249</guid>
		<description><![CDATA[JSON格式的数据现在用的越来越多，在MySpace.CN，存在着2中web应用，一种是基于.NET平台的web应用，另一种是记录LAMP平台的web应用，要让这两种应用能够互相通信，需要制定一种通信格式，当时选择的就是JSON格式。今天接到一个任务，是要对一个批量获取用户数据的接口进行测试，这个接口介绍JSON格式的请求，返回JSON格式的结果。由于最近LAMP团队比较忙，而且我又不太懂怎么弄一个提交JSON的页面，所以只能找找LoadRunner有没有一些函数可以用。最终找到了web_custom_request这个函数。 1 2 3 4 5 6 7 8 9 10 11 web_custom_request&#40;&#34;request&#34;, //随便写个名字 &#34;Method=POST&#34;, //请求的方法 &#34;URL=http://10.60.0.13:8002/json/getUserAccounts&#34;, //请求地址 &#34;RecContentType=application/json&#34;, //指定相应头的Content-Type，这里是JSON &#34;EncType=application/json&#34;, //指定请求头的Content-Type，这里也是JSON &#34;Mode=HTML&#34;, RAW_BODY_START, //请求BODY开始的标识符 &#34;{\&#34;userIds\&#34;:[1300000001,1300002029,1300003163],\&#34;type\&#34;:0}&#34;, //BODY的内容 55, //上面一行BODY内容的长度 RAW_BODY_END, //请求BODY结束的标识符 LAST&#41;; 这样就是一个发起JSON格式请求，接受JSON格式数据的请求了。也是我写的第一个LR脚本，居然还不是录制的…… 在这里介绍一个计算BODY内容的长度的方法： 在Firefox上装好firebug这个插件 打开Firefox，然后打开控制台 在控制台里面输入BODY内容，然后用.length属性来获取该字符串的长度，如果对于上面这个例子，就是&#124;&#124; “{\”userIds\”:[1300000001,1300002029,1300003163],\”type\”:0}”.length &#124;&#124;，这样就能计算出结果“55” 很方便吧。而且还不会出错，不用数转义字符数目。 No related posts.
No related posts.]]></description>
			<content:encoded><![CDATA[<p>JSON格式的数据现在用的越来越多，在MySpace.CN，存在着2中web应用，一种是基于.NET平台的web应用，另一种是记录LAMP平台的web应用，要让这两种应用能够互相通信，需要制定一种通信格式，当时选择的就是<a href="http://www.json.org/json-zh.html" target="_blank">JSON格式</a>。今天接到一个任务，是要对一个批量获取用户数据的接口进行测试，这个接口介绍JSON格式的请求，返回JSON格式的结果。由于最近LAMP团队比较忙，而且我又不太懂怎么弄一个提交JSON的页面，所以只能找找LoadRunner有没有一些函数可以用。最终找到了web_custom_request这个函数。<br />
<span id="more-249"></span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="c" style="font-family:monospace;">web_custom_request<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;request&quot;</span><span style="color: #339933;">,</span>   <span style="color: #666666; font-style: italic;">//随便写个名字</span>
    <span style="color: #ff0000;">&quot;Method=POST&quot;</span><span style="color: #339933;">,</span>                         <span style="color: #666666; font-style: italic;">//请求的方法</span>
    <span style="color: #ff0000;">&quot;URL=http://10.60.0.13:8002/json/getUserAccounts&quot;</span><span style="color: #339933;">,</span>        <span style="color: #666666; font-style: italic;">//请求地址</span>
    <span style="color: #ff0000;">&quot;RecContentType=application/json&quot;</span><span style="color: #339933;">,</span>    <span style="color: #666666; font-style: italic;">//指定相应头的Content-Type，这里是JSON</span>
    <span style="color: #ff0000;">&quot;EncType=application/json&quot;</span><span style="color: #339933;">,</span>               <span style="color: #666666; font-style: italic;">//指定请求头的Content-Type，这里也是JSON</span>
    <span style="color: #ff0000;">&quot;Mode=HTML&quot;</span><span style="color: #339933;">,</span>
    RAW_BODY_START<span style="color: #339933;">,</span>                      <span style="color: #666666; font-style: italic;">//请求BODY开始的标识符</span>
    <span style="color: #ff0000;">&quot;{<span style="color: #000099; font-weight: bold;">\&quot;</span>userIds<span style="color: #000099; font-weight: bold;">\&quot;</span>:[1300000001,1300002029,1300003163],<span style="color: #000099; font-weight: bold;">\&quot;</span>type<span style="color: #000099; font-weight: bold;">\&quot;</span>:0}&quot;</span><span style="color: #339933;">,</span>  <span style="color: #666666; font-style: italic;">//BODY的内容</span>
    <span style="color: #0000dd;">55</span><span style="color: #339933;">,</span>                                    <span style="color: #666666; font-style: italic;">//上面一行BODY内容的长度</span>
    RAW_BODY_END<span style="color: #339933;">,</span>                  <span style="color: #666666; font-style: italic;">//请求BODY结束的标识符</span>
    LAST<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>这样就是一个发起JSON格式请求，接受JSON格式数据的请求了。也是我写的第一个LR脚本，居然还不是录制的……</p>
<p>在这里介绍一个计算BODY内容的长度的方法：</p>
<ol>
<li>在Firefox上装好<a href="https://addons.mozilla.org/firefox/addon/1843" target="_blank">firebug</a>这个插件</li>
<li>打开Firefox，然后打开控制台</li>
<li>在控制台里面输入BODY内容，然后用.length属性来获取该字符串的长度，如果对于上面这个例子，就是|| “{\”userIds\”:[1300000001,1300002029,1300003163],\”type\”:0}”.length ||，这样就能计算出结果“55”</li>
</ol>
<p>很方便吧。而且还不会出错，不用数转义字符数目。</p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://magustest.com/blog/loadtest/json-format-request-using-loadrunner/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

