自己动手写Web自动化测试框架(2):打开和操纵IE

发表于:2010-3-25 13:19

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:colblog.net    来源:51Testing软件测试网采编

分享:

  首先,我们先声明了一个InternetExplorer的引用,这里设为空引用。他以后会存储我们的IE实例,并且通过它,我们可以操纵IE进行一些操作。

  然后我们判断刚刚启动的进程p是不是为空,如果为空,就报错,说明不能启动IE(Can not Launch IE)。如果不为空,就可以进行下面的操作了。

  注意,这里我们用了比较特殊的方法来得到InternetExplorer实例,就是通过比较当前Windows中已经存在的进程编号,来找到刚刚启动的 IE实例,用allBrowser来获取所有的Shell Windows,然后逐个和刚刚启动的进程p的Handle号进行比较,如果相同,就说明是我们想要的进程,把他的InternetExplorer实例赋给我们ie。

  最后我们判断一下ie引用是否有了实例,因为刚刚的循环我们无法保证一定有实例被赋给ie,这里如果检查失败,就报错返回。

  通过上面的几步,我们已经启动并且拿到了InternetExplorer的实例,我们可以对这个实例进行一些操作了。举个最简单的例子就是浏览到某一个网页,下面的代码让这个浏览器指向了我的博客地址:

Console.WriteLine("Navigating ...");

object o = null;

ie.Navigate("www.colblog.net", ref o, ref o, ref o, ref o);

  这里都很简单,只有一个让人费解的地方就是object o。因为ie.Navigate需要5个参数,后面的4个是可选参数,所以我们只需要象征性的传入一个null就可以了,有一个同事问我为啥不直接传 null,还要申请一个object,其实原因就在于参数是ref的,必须有一个引用被传进去才行。关于后面的四个参数的讲解请看msdn上的讲解。

  运行一下就发现,程序顺利的打开一个IE窗口,并且链接到我的博客上

  下面附上源代码,不过需要登录才可以拿到,各位多多包含

  下一次我们来了解得到网页中的各个Element。


相关链接:

自己动手写Web自动化测试框架(3):操纵Web控件

自己动手写Web自动化测试框架(4):验证Web控件

自己动手写Web自动化测试框架(5):判断浏览器是否加载完成

自己动手写Web自动化测试框架(6):自动化测试框架的规划

自己动手写Web自动化测试框架(7):框架架构的设计

自己动手写Web自动化测试框架(1) :概述

33/3<123
重磅发布,2022软件测试行业现状调查报告~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海漕溪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号