news 2026/6/25 21:23:28

怎样开始用selenium进行自动化测试?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
怎样开始用selenium进行自动化测试?

selenium自动化测试怎么开始,这些,是我的个人经验,分享出来给大家参考!

一开始,基本上很多人都是用selenium IDE录制脚本开始的,我也是!有一本书写得很不错:selenium初学者指南!So,从录制回放开始我的selenium,而在这个过程中,不断地去补充我的html css知识,熟悉selenium的api!

慢慢地,发现录制的脚本在回放的时候经常报错,通过检查发现,是定位上的错误,导致这种定位的错误的最大原因是系统前端采用了某种框架,如tigerUI,exj....所以HTML里面的标签很多都是动态的,比如id,class,name!这对selenium操作定位的元素而进行自动化来说是致命伤!

所以,开始自己写定位信息,这已经是必须的了!从而学习了xpth和css选择器,掌握了更加有效,快速和稳定地定位页面上的元素(定位的时候难免会碰到有iframe,这就得先切换到iframe中再进行定位了)!也就是,在selenium IDE上写脚本!

信心满满地在selenium IDE上写了长长地一段脚本,并且反复跑都能成功!总算尝到了一点点幸福的滋味!然后呢,问题来了,当我要修改和扩展这段的脚本的时候,才发现这效率是相当地低!一句句查!一句句改!多么痛的领悟!

另外,selenium IDE 默认启动的是火狐,在使用selenium RC 启动 IE 进行跑脚本时浏览器总是会报错!各种搞不定,各种不淡定!决定放弃使用IDE!

selenium有一个强大之处就是支持多种语方:java,C#,python等等,并且可以把录制的脚本转换成代码!我用的是java,果断走起!

不用说,当然是把脚本转为java代码了,在Eclipse中重新开始搞!

选择一个测试框架:有Junit和TestNg两个选择,公司用的是junit,所以,不用多说,我就用junit验证selenium脚本的运行结果!并且,Junit和TestNG都可以生成比较直观的测试报告!

写好一些代码,会看到整段代码中密密麻麻充斥着基本相同的代码:开始封装代码!把常用到API封装起来!封装好之后代码看着就舒服多了!

接下来,是不是也应该把代码中的定位信息用一个专门的文件放起来,再去读取里面的定位信息,这样,维护代码和维护定位信息就放在了两个地方,不用老是扎在代码和定位路径中,简单地分一下层!果断尝试!

到这里,脚本写出来了,常用的api封装起来了,定位路径分离出来了!整个代码简洁多了!写起来容易和舒服多了!这时候,该个性化定制一下自己的框架了,这里,就暂时不写下去了,已经离怎样开始selenium挺远的了!或许,到了这一步,你早就有自己对测试框架的想法和对脚本的设计方法了。。。。加油吧,把想法化为实际的动力,继续向前!

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 19:13:10

【笔记】WPF的Binding中AsyncState的使用方式

AsyncState 是 Binding 的一个可选“上下文数据”,仅在设置 IsAsynctrue 时参与异步取值流程。它会被传递给内部的异步数据调度器,用来影响异步行为(例如优先级或标识信息)。它不会让转换器异步执行,也不会自动在后台线…

作者头像 李华
网站建设 2026/6/10 13:23:19

【创新首发】【ISSA-RBF回归预测】融合柯西变异和反向学习的改进麻雀搜索算法优化RBF回归预测研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室🍊个人信条:格物致知,完整Matlab代码及仿真咨询…

作者头像 李华
网站建设 2026/6/25 20:54:19

基于单片机智能充电器系统设计

**单片机设计介绍,基于单片机智能充电器系统设计 文章目录一 概要二、功能设计设计思路三、 软件设计原理图五、 程序一 概要 基于单片机智能充电器系统设计概要可以归纳如下: 一、引言 随着电子设备的普及和人们对充电效率及安全性的日益关注&#xf…

作者头像 李华
网站建设 2026/6/15 15:25:16

基于单片机多路智能温控仪表设计

**单片机设计介绍,基于单片机多路智能温控仪表设计 文章目录一 概要二、功能设计设计思路三、 软件设计原理图五、 程序一 概要 基于单片机多路智能温控仪表设计概要如下: 一、引言 随着现代科技的快速发展,温度控制在工业自动化、实验室设…

作者头像 李华