欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

selenium知识详情介绍

程序员文章站 2022-03-23 20:42:50
说起selenium,那必须是聊自动化测试的呀,其实在接触selenium之前,自己也曾将为了校招学习过一些其他的自动化测试工具,比如说现在用的比较老套的QTP,loadrunner等测试的框...

说起selenium,那必须是聊自动化测试的呀,其实在接触selenium之前,自己也曾将为了校招学习过一些其他的自动化测试工具,比如说现在用的比较老套的QTP,loadrunner等测试的框架,相比较而言,个人觉得还是selenium比较好用,关键是它是开源的,免费的,这个就是你好,我好.大家好的一个共赢的局面啦....

好啦,废话不多说了,现在开始进入正题了,关于selenium,官网上由两部分组成,一部分是selenium webdriver,一部分就是selenium ide,对于后者,我们在这里不多加解释,因为其ide的主要功能就是在浏览器中录制你自己的操作,然后将你自己刚刚的操作步骤用自动化的语言方式表示出来罢了,基本没有什么技术含量,不过它好的一点就是支持各种语言的转化,比如c++,java,python等当下使用的比较主流的语言.selenium ide是我当时在测一个项目页面的拖拽算子时,才安装起来使用的,不过说实话,它并没有给我自己想要的东西,不过唯一庆幸的就是花了一下午时间折腾这个东西,反而了解了它的内涵.后者就说这么多吧,毕竟我自己目前用的前者比较多一点的.对于前者,现在基本上天天都是在跑着的,我目前所使用的环境就是python 3.0+selenium的环境下进行的web自动化测试.关于web自动化测试,其实和大家接触到的许多自动化测试没有什么不同的,都是得测试浏览器的兼容性,得测用户的交互体验,得测试每一个功能是否完善,等等,其实是要测试的太多了,我再这边懒得写罢了,我这篇文章主要的目的就是把我在测试方面遇到的坑给大家说说.

说其selenium,我们不得不说的就是它的8中定位方式了,id,name,class name,xpath,css_selector,link_text,tag_name,partial_link_text.在这八种中大家使用做多的莫过于id,xpath,css_selector了,其实这八种定位各有各的好处,所以说大家到底使用哪个方式可以根据具体情况来定,一般推荐的就是css_selector,其实说白了,这些自动化测试就是解放了人的双手,用代码来模拟人的操作罢了,我曾经还听说过一句话,说是自动化测试就是给一群稍微回写代码的人用来装逼用的,因为手工测试完全可以代替那些点点点的动作呀,所以说没有必要进行自动化的测试呀,可是你要知道,自动化是点点点,但是代码写好以后永久使用,手工测试是可以,难不成你以后每次都要花费一个人力出来点点点的测试嘛,所以说自动化的存在就是有它存在的意义的,我们使用自动化测试也是蛮不错的,在selenium中,我们可能回遇到元素定位不到的问题,或者浏览器的速度比我们代码速度慢的问题,这时我们应该让程序等待一下,也就是seleep一下,还有就是在出现弹框问题的时候,我们应该使用driver.switch_to_(),这个来进行弹框的切换,遇到鼠标的双击和拖拉拽的时候,可以使用actionchains的包,导入后里面有具体的函数调用可以使用.我感觉我今天也是一时兴起写了一丢丢,没仔细写,大家看看就像了哈.