[attach]121533[/attach]
Selenium怎么来的?
Selenium这个词,是化学元素硒(Se)的意思。在软件测试领域,它是绝对的自动化测试开源项目的标杆。取这个名字也是有讲究的,在当时乃至如今的软件测试领域,QTP(UFT)占有率非常高。Quick Test Professional是Mercury公司开发的,自然就是汞(Hg)。在生物学,研究发现硒对汞有拮抗作用,也就是硒克汞。Selenium取名的用意不言而喻。
Selenium控制浏览器的操作
Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。
这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。
有时候我们希望能让浏览器以某种尺寸打开,让访问页面在这种尺寸下运行,或者控制浏览器进行后退与前进操作等等。
今天主要介绍一下浏览器控制的一些常用属性和方法,他们大多集中在selenium.webdriver.remote.webdriver类中。不管是用哪种浏览器,他们都继承自remote.webdriver类,用的方法属性都是相同的。
下面举个几个控制浏览器的例子。
一、控制浏览器窗口大小
有时候我们希望能以某种浏览器尺寸打开,让访问的页面在这种尺寸下运行。例如可以将浏览器设置成移动端大小(480* 800),然后访问移动站点,对其样式进行评估;WebDriver提供了set_window_size()方法来设置浏览器的大小。
[attach]121534[/attach]
二、设置休眠时间
由于打开百度网址后,页面加载需要几秒钟,所以最好等到页面加载完成后再继续下一步操作。
[attach]121535[/attach]
三、控制浏览器前进后退
在使用浏览器浏览网页时,浏览器提供了后退和前进按钮,可以方便地在浏览过的网页之间切换,WebDriver也提供了对应的back()和forward()方法来模拟后退和前进按钮。下面通过例子来演示这两个方法的使用。
[attach]121536[/attach]
四、页面刷新
有时候页面操作后,数据可能没及时同步,需要重新刷新。
[attach]121537[/attach]
五、页面截图
自动化用例是由程序去执行的,因此有些时候打印的错误信息并不十分明确。如果在脚本执行出错的时候能够对当前窗口截图保存,那么通过图片就可以非常直观的看出出错的原因。WebDriver提供了截图函数get_screenshot_as_file()来截取当前窗口:
[attach]121538[/attach]
值得注意的是,当使用窗口截屏功能时,图片的扩展名必须是png!!
六、关闭退出浏览器
退出有两种方式,一种是close;另外一种是quit。
close用于关闭当前窗口,当打开的窗口较多时,就可以用close关闭部分窗口;
quit用于结束进程,关闭所有的窗口。
[attach]121539[/attach]
总结:欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) | Powered by Discuz! X3.2 |