什么是跨浏览器测试?
浏览器测试是功能测试的一个分支,用以验证web应用能在不同的浏览器上正常工作
为什么需要垮浏览器测试?
通常情况下,我们都期望web类应用能够被我们的用户在任何浏览器上使用。
例如有的人喜欢用IE,有的人喜欢用火狐,有的人喜欢用谷歌。
我们期望我们的web系统能在任何浏览器上正常的工作,这样能够吸引更多的用户来使用。
跨浏览器测试的根源是:
1 在不同的浏览器上字体大小不匹配
2 JavaScript的实现方式不一样
3 css html的验证有所区别
4 有的浏览器或低版本不支持HTML5
5 页面对其有问题
6 图片位置或大小问题
7 浏览器和操作系统间的兼容问题
以上几个方面不仅仅对布局有影响,甚至会导致功能不可用,所以我们需要进行跨浏览器测试
如何执行垮浏览器测试?
如果我们使用selenium webdriver,那我们就能够自动的在IE,Firefox,Chrome等不同的浏览器上运行测试用例
为了能够在同一台机器上不同浏览器上执行测试用例,我们需要多线程技术。
下面我们基于Python多线程技术来尝试同时启动多个浏览器进行selenium自动化测试
#import os import time from selenium import webdriver from selenium.webdriver.common.keys import Keys # test case def testbrowser(driver): driver.get("http://www.baidu.com") driver.find_element_by_id("kw").click() driver.find_element_by_id("kw").clear() driver.find_element_by_id("kw").send_keys("杨洋") driver.find_element_by_id("su").click() driver.implicitly_wait(3) time.sleep(3) driver.close() driver.quit() return None driverfirefox = webdriver.Firefox() testbrowser(driverfirefox) driverie = webdriver.Ie() testbrowser(driverie) driverchrome = webdriver.Chrome() testbrowser(driverchrome) driverfirefox = webdriver.Firefox() testbrowser(driverfirefox)运行上面代码,你会发现IE Firefox 和Chrome都会启动开始进行百度搜索