Selenium测试Ajax程序

发表于:2012-08-13来源:博客园作者:Jack_wangds点击数: 标签:selenium
上周末参加了Qclub的百度技术沙龙,听了百度的孙景卫讲了Web自动化测试,讲的非常好,然后在小组讨论时又有幸座在了一起。我们讨论的一个内容,就是Ajax应用程序比原来的非Ajax程序更不易测试,这里有两个主要原因。

  上周末参加了Qclub的百度技术沙龙,听了百度的孙景卫讲了Web自动化测试,讲的非常好,然后在小组讨论时又有幸座在了一起。我们讨论的一个内容,就是Ajax应用程序比原来的非Ajax程序更不易测试,这里有两个主要原因。

  第一:Ajax使得基于纯录制的方式无法工作,因为录制一个操作,这次返回需要5秒钟,下次会更多或更少。

  第二:一些测试工具是基于原来非Ajax程序来开发的,后面没做对应的升级。

  但是,同样有很多工具支持Ajax的测试,今天我们就来看一下大名鼎鼎的Selenium如何测试Ajax程序。

  准备Ajax程序

  这里我们使用ASP.NET MVC,实际上你可以使用任何程序来模拟一个AJAX调用。

image

  a. 准备一个页面,这里我们使用了JQuery.

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
<input id="GetContent" value="Get" type="button" onclick="GetAjaxContent();" />
 <div id="results" style="border:solid 1px red; display:none;">
 </div>
 <script type="text/javascript">
        function GetAjaxContent() {
            $.ajax({
                url: "Home/GetAjaxContent",
                success: function (html) {
                    $("#results").show().append(html);
                }
            });        
        }
</script>

原文转自:http://www.ltesting.net