Recording录制选项
这里提供了两个大类的录制方式:
1. HTML-based script基于HTML的脚本
这种方式录制出来的脚本是基于HTML基础的,为每个用户操作生成单独的步骤,这种脚本更容易理解和维护,也更容易处理关联。对于正常的浏览器应用程序,推荐使用HTML录制模式。
一般来说如果我们是标准使用IE访问的B/S架构,我们应该使用HTML-BASE下的A script. containing explicit URLs only方式来录制脚本,这种脚本基于URL请求完成,不会带有任何前后依赖的内容。
选择HTML Advanced,出现两种script type
- A script describing user actions (web_link, web_submit_form)
脚本中的每一个函数直接对应着虚拟用户的一个动作,创建的函数主要有URL(Web_url)、link(Web_link)、image(Web_image)以及表单提交(Web_submit_form)等几类。
基于解释用户行为的脚本,注重描述用户做了什么操作类似于QTP,脚本简洁,基于用户操作模拟,浅显易懂,并且自身就包含了对象检查过程,无需校验
- A script containing explicit URLs only (web_url, web_submit_data)
将所有的URL、link、image都用Web_url函数来统一处理,在表单提交时则用Web_submit_data来处理。这样做的结果是脚本没有前一种方式那么直观,但如果网页中存在较多相似类型的链接时,这样做更容易处理脚本中的参数化和关联问题。
基于URL请求的脚本录制类型,这种方式不考虑用户的操作,只考虑客户端发送的请求,注重于实际上系统做了什么。
2. URL-based script基于URL的脚本
这种方式录制出来的脚本是基于URL请求的。如果我们是一个非IE标准的C/S架构,我们建议使用URL-BASE来录制脚本,这样我们可以确保不会遗漏任何HTTP请求。
这种是基于URL请求的脚本录制方式,我们会录制得到所有的http请求,导致脚本中包含了大量的web_url()函数Use web_custom_request only 自定义的http请求规则,更适合在自定义的http请求中进行二进制处理。采用这种方式生成脚本所有请求都生成web_custom_request () 函数。
对于web_link()、web_submit _form()等函数,需要前面页面的支持,也就是说必须先访问http://127.0.0.1:1080/WebTours/这个页面之后,才可以点击sign up now 按钮,如果不在http://127.0.0.1:1080/WebTours/这个页面,是无法点击sign up now 按钮的,包括web_submit _form()提交,也必须是在点击了sign up now 按钮之后的页面才可以提交。
而对于web_url(),web_submit _data()等函数则不需要要前面页面的支持,也就是说你可以直接访问http://127.0.0.1:1080/WebTours/login/p1 (相当于点击了sign up now ),而且还可以在当前页面进行提交。
两种录制模式的选择:
HTML-based优缺点:
(1)资源从内存中取出且在回放时下载。因此脚本更小且更容易阅读。
(2)由于只有较少的硬编码脚本,因此只有较少的动态值需要关联。
(3)可以插入图片检查之类的语句以检查结果是否正确。
(4)因为HTML模式回放时需要积极地解析返回的信息,因此它可能会比其他录制模式更加占用资源。
URL-based优缺点:
(1)适用于非browser的应用程序。
(2)录制来自sever的所有请求和资源,甚至抓取非HTML应用程序,因此需要做更多关联,脚本看起来也相当复杂。
综上,选择何种录制方式可以参考如下方案:
(1)如果应用是Web应用,首选是HTML-based录制模式;
(2)如果应用是使用HTTP协议的非Web应用,则首选URL-based录制模式;
(3)如果Web应用中使用了Java applet程序,且applet程序与服务器之间存在通信,则选用URL-based录制模式。