还在为兼容性测试发愁?让我们用Python来轻松搞定吧

每天进步一点点,关注我们哦,每天分享测试技术文章

本文章出自【码同学软件测试】

码同学公众号:自动化软件测试,领取资料可加:Matongxue_8

码同学抖音号:小码哥聊软件测试

 

随着互联网的发展急速发展,浏览器的样式也层出不穷,这样测试前端功能的小伙伴的工作量就很大,需要测试前端功能在不同浏览器上面的页面展示效果,这样测试工程师的工作量也会增大,那么今天给大家讲一下如何用自动化来实现同时测试代码在不同浏览器上面的功能效果。想知道的请举起你可爱的小手手,哈哈。

在讲自动化驱动之前,首先给大家科普一下目前主流的浏览器及web兼容性测试中浏览器的选择。

 

目前主流的浏览器有:chrome、firefox、safari、IE edge、Opera等。其中IE edge ,Google浏览器 和firefox被称为现代浏览器,基本上页面测试都是要覆盖到的,但最终决定你必须要覆盖哪些浏览器,还是需要看一下自己公司的目标客户群体主要用的浏览器有哪些,然后把使用最多的浏览器都覆盖到,否则出现问题就会影响目标用户的体验。

 

我们接下来讲一下做到自动化驱动需要用到的技术点有哪些。

第一:自动化驱动就必须用到代码,我这边选择的是python语言

第二:代码驱动浏览器,就需要用到selenium,因为selenium是驱动web浏览器的主流工具,它可以跨语言使用,java,python都可以使用selenium这个工具。Python用selenium之前需要用pip install selenium进行下载。

第三:同时驱动多个浏览器是属于多任务,那么执行多任务就需要用多线程或者多进程去实现,我们这边选择用多线程来实现。多线程需要从threading模块导入Thread这个类,再进行后续操作。

 

多线程语法的讲解:

import threading

threading.Thread( target = function, args[, kwargs] )

参数说明:

· function - 线程函数的名字,需要用多线程执行的任务。

· args - 传递给线程函数的参数,他必须是个tuple类型。

· kwargs - 可选参数,同样是传递给线程函数的参数,他必须是个字典类型。

Thread类提供了以下方法:

· start():启动线程活动。

· join([time]): 等待至线程中止。这阻塞调用线程直至线程的join() 方法被调用中止-正常退出或者抛出未处理的异常-或者是可选的超时发生。

· isAlive(): 返回线程是否活动的。

· getName(): 返回线程名。

· setName(): 设置线程名。

 

免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可加:Matongxue_8/关注码同学公众号

 

知识点科普完了,我们实现我们的需求把。

首先我们定义多线程要执行的任务。以下代码表示的是打开对应的浏览器,然后访问百度网址,定位输入框,输入码同学三个字,然后点击搜索,查看不同浏览器上面的页面效果。

备注:driver = webdriver.Ie()/Firefox()/Chrome()实例化一个ie/firefox/chrome的driver对象,可以驱动对应的浏览器,解放双手,让代码代替人访问浏览器。

接下来用多线程驱动ie,firefox和chrome同时实现这个任务,代码如下:

运行的效果如下:

 

END

免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可加:Matongxue_8/关注码同学公众号

本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

 

推荐这些文章:

Selenium元素定位不到?JS注入轻松搞定!

本文章出自【码同学软件测试】
码同学公众号:自动化软件测试,领取资料可加:Matongxue_8
码同学抖音号:小码哥聊软件测试
 
在使用Selenium做web自动化测试过程中,经常会遇到一些组件无法通过Selenium直接识别和处理,比如<input>标签组合的下拉框,比如日期控件。面对这些元素,我们可以引入JS注入技术来解决问题。

Javascript
JavaScript是一种被广泛用于Web前端开发的脚本语言 ,常用来为网页添加动态功能(弹窗,点击事件....)通过HTML DOM,JavaScript提供了页面对象获取和操作功能。

DOM模型把HTML...

浏览器的上传文件的路径问题

问题
程序中有个上传文件的功能,直接用的html的file控件,在IE6上浏览文件时,显示的文件的路径,但在IE8,IE9,FireFox,Chrome中,通常只显示文件的名字,而不显示文件的路径(当然,在IE8、IE9中通过安全设置可以显示路径),如果只显示文件的名字,没有路径的话,上传的时候会提示文件不存在。
问题:
1、上述问题一般怎么解决的呢?
2、很多邮箱的附件用firefox和chrome是能添加上去的,他们是怎么实现的呢?

最佳回答
只要能上传图片,文件路径是上传图片后的路径,跟本地路径无关

...

《菜鸟轻松拿offer: 软件测试工程师面试秘笈》评选为2021年度最受读者喜爱的IT图书

《菜鸟轻松拿offer: 软件测试工程师面试秘笈》评选为2021年度最受读者喜爱的IT图书

 

 

...

pycharme通过selenium做web页面自动化测试时无法呼出浏览器页面

问题

代码在个这里面,执行后 没有任何响应
本以为是pycharme中没有Chrome浏览器,在setting中下载还报错,大佬们帮忙给看看

最佳回答
需要安装chrome浏览器webdriver驱动
chromedriver.exe
http://chromedriver.storage.googleapis.com/index.html
而且webdriver需要和对应的浏览器版本以及selenium版本对应
具体见Python+Selenium基础入门及实践

...

文章标题:还在为兼容性测试发愁?让我们用Python来轻松搞定吧
文章链接:https://www.dianjilingqu.com/51304.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>