Selenium自动化测试工具使用总结

自动化测试工具——Selenium详解 Selenium是一个用于Web应用程序测试的工具。是一个开源的Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium可以直接运行在浏览器上,它支持所有主流的浏览器,支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。 阅读详情


关于如何使用Selenium的文章在网上已经很多了,本文主要结合我们的项目谈一下使用Selenium的经验。

       我们的项目完全基于Extjs开发,在网上看了很多自动化测试工具,比如LoadRunner、jmeter等,对Extjs的支持都不是很好。最后发现Selenium对Extjs的支持还可以,所以决定用这个试试。测试这类项目用Selenium有几个优点:

  1. 测试脚本非常简单,可以用IDE录制脚本,然后转换为java语言。
  2. Selenium是基于js执行的,可以在脚本中执行JavaScript。所以在编写脚本时,有些Extjs特有的组件或dom对象不能定位时,可以在脚本中写js代码实现。比如设置ComboBox的值,选中Grid中的某一行等。
  3. 用Selenium进行浏览器兼容性测试比较容易。只需要一套脚本,就可以在不同的浏览器中运行。


但Selenium的缺点也比较明显:

  1. 每次运行都要开启一个浏览器,运行效率比较低。尤其是做并发测试时,比较麻烦。跑50个用例,就要开启50个浏览器窗口。
  2. 并发测试时,在同一个机器商运行多个测试用例会共享session。这是一个比较令人头疼的问题。比如我用不同的用户跑两个登录的测试,第一个测试用例还未结束,运行第二个测试用例,这时第二个用户的登录session会覆盖前面用户的session。这个问题一直没有找到解决的方法,不知道是Selenium本身的问题还是我没有用对方法,如果有朋友知道怎么解决这个问题,希望不吝赐教。

 

 

洞见 SELENIUM 自动化测试 洞见SELENIUM自动化测试 写在最前面:目前自动化测试并不属于新鲜的事物,或者说自动化测试的各种方法论已经层出不穷,但是,能够在项目中持之以恒的实践自动化测试的团队,却依旧不是非常多。有的团队知道怎么做,做的还不够好;有的团队还正在探索和摸索怎么做,甚至还有一些多方面的技术上和非技术上的旧系统需要重构…… 本文将会从使用和实践两个视角,尝试对基于Web UI自动化测试做细致的... 阅读详情

相关推荐

Selenium基础 — Selenium自动化测试框架介绍

Selenium是一个用于Web应用程序测试的工具。只要在测试用例中把预期的用户行为与结果都描述出来,我们就得到了一个可以自动化运行的功能测试套件。Selenium测试套件直接运行在浏览器中,就像真正的用户在操作浏览器一样。Selenium也是一款同样使用Apache License 2.0协议发布的开源框架。Selenium工具的主要功能包括:测试程序与浏览器的兼容性,测试你的应用程序是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能,创建回归测试检验软件功能和用户需求。

测试-八戒 8948

EXT框架Web应用Selenium自动化之xpath

selenium xpath

YBsisterchang的专栏 6083

Selenium IDE测试ExtJs一种测试解决办法.docx

最近发现要使用ExtJs测试其实很麻烦,因为ExtJs的id是变化的,而Selenium IDE录制完后,ExtJs的下次打开页面,就无法进行回放了。因此很麻烦,不过通过一些网友进行交流得到如下一些测试方法:

ajax获取输入框的值_Python+selenium自动化之元素属性获取

本篇文章主要分享如何获取元素属性的方法,其实在之前的文章中也有用到,本篇汇总一下方便自己学习和回顾。案例还是以腾讯企业邮箱为例。获取元素文本获取元素文本是比较常用到的,如在邮箱登录页,获取“同时支持企业微信和微信扫码”的文本,这种可以看到的文本可以使用driver.text获取该内容。查看元素属性:同时支持企业微信和微信扫码获取title浏览器title的获取很直接,driver.title获取t...

weixin_39534978的博客 203

Windows/Mac/Linux三系统保姆级教程:用llama.cpp将safetensors模型转gguf格式(附常见错误解决)

本文提供Windows、Mac和Linux系统下使用llama.cpp将safetensors模型转换为gguf格式的详细教程,涵盖环境配置、转换原理及常见错误解决方案。通过跨平台兼容性处理,帮助开发者高效完成模型格式转换,优化边缘计算性能。

weixin_29227425的博客 270

NBIS单细胞教程:差异基因(五)

此文章是通过学习瑞典国家生物信息学基础设施(NBIS) 所开放的单细胞分析教程加上网上所查找的资料,自身的理解所形成的,可能会有不足之处。该部分是对不同集群之间的差异基因进行分析。参考来源:https://github.com/NBISweden/workshop-scRNAseq/blob/master/labs/seurat/seurat_05_dge.Rmd感兴趣的话可以阅读原文。

songyi10的博客 1万+

Selenium IDE测试ExtJs一种测试解决办法

[b] 最近发现要使用ExtJs测试其实很麻烦,因为ExtJs的id是变化的,而Selenium IDE录制完后,ExtJs的下次打开页面,就无法进行回放了。因此很麻烦,不过通过一些网友进行交流得到如下一些测试方法:[/b] [quote] 1. 使用Xpath进行定位 2. 适当使用selenium..runScript()方法 3.应用Selenium IDE的exten...

博学之,审问之,慎思之,明辨之,笃行之 406

论文理解【LLM-OR】—— 【PaMOP】Guiding Large Language Models in Modeling Optimization Problem

针对 LLM 求解运筹优化任务,PaMOP 通过约束划分树分离子问题,实现复杂优化问题的分块建模,并结合求解器反馈与反向翻译一致性检查迭代纠错,降低子任务复杂度,提升可执行率与建模准确性。

佚失的诗篇 1006

再谈Selenium测试之精要

最近在使用Selenium做ExtJs的测试的时候,有一些问题值得总结和反省下。 背景: 目前一个版本的功能使用ExtJs+Hibernate+Spring进行编写。ExtJs使用Ext Designer进行编写进行自动化功能测试:选用Selenium 在进行selenium录制的时候,会出现一些ID是变得的。因此在经过和编程人员的协商后,决定在Ext Designer编...

博学之,审问之,慎思之,明辨之,笃行之 137

UM2 3D 打印机 DIY 实践 (2) 电路篇

涉及到的东西非常多,实际上后面还会讲到。主要部件清单: 主板 mega2560 + Ramps1.4 + LCD12864 各一张 42 x38mm x3,xyz 轴各一台 42 x23mm x1,用在挤出机 泰坦远程挤出机 x1 TMC2225 驱动板 x4, 替代a4988、TMC2208,静音效果好,性价比高 s-250-12v 20A开关电源 x1。功率必须足够大,宁可选大一点的 大功率 MOS 管,25A x1 NTC .

afeiqiang的专栏 3601

eNSP-Pro配置又丢了?手把手教你用导出功能防患于未然

本文详细介绍了eNSP-Pro配置防丢失的全套方案,包括运行时内存、虚拟存储设备和宿主机文件系统的配置存储机制,以及多维度备份策略和特殊场景下的恢复技巧。通过优化保存流程、自动化定时导出和版本化管理,帮助网络工程师有效防止配置丢失,提升工作效率。

weixin_42665725的博客 239

Selenium测试ExtJs

待测的ExtJs页面其实只能在IE8上正常跑(由于需要用到ocx),但是刚好待测的功能可以不用ocx进行,所以在firefox也能正常跑。 由于本人是新手,为了避免从头写脚本,决定先用firefox录制测试用例,再导出为java或其他语言的web driver。 Firefox需要安装插件如下: Selenium IDE 2.9.1, FireBug, FirePath

bxprog的专栏 1818

23、工业物流中的多智能体路径规划与碰撞处理策略

本文探讨了工业4.0背景下工业物流中的多智能体路径规划(MAPF)与碰撞处理策略。分析了自动导引车(AGV)等移动资源的应用现状,综述了主流路径规划算法如A*、D*Lite、M*等,以及集中式与分布式碰撞检测方法。重点比较了五种碰撞避免策略:路径交叉、优先级、起始时间调整、无交叉路径和速度调整,提出了基于环境条件的策略选择流程,并通过流程图展示了评估、组合、测试与优化的全过程。文章强调应根据订单不确定性、时间约束、优先级和生产组织等因素综合选择或组合策略,以提升物流效率与系统可靠性。

mac99的博客 125

selenium自动化测试实战

一、Selenium介绍 Selenium 是什么?一句话,自动化测试工具。它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器,如果你在这些浏览器里面安装一个 Selenium 的插件,那么便可以方便地实现Web界面的测试。 Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver(WebDr...

打代码的小女孩 11万+

【雷达通信】雷达信号处理仿真【含Matlab源码 2509期】

雷达信号处理仿真 完整的代码,方可运行;可提供运行操作视频!适合小白!

订阅付费专栏Matlab(奶茶价版),可赠送奶茶价版付费专栏指定代码1份; 903

基于STM32F1XX 、HAL库的OPT4001-Q1环境光传感器驱动应用C语言程序设计

OPT4001-Q1 的输出是半对数 的,具有 9 个二进制对数满量程照度范围,每个范围内具有高度线性响应,使得 PicoStar™ 型号的测量能力为 312.5μlux 至 84klux,USON 型号的测量能力为 400µlux 至 107klux。// 禁用中断(示例)

PP_Cottage的博客 461

Selenium自动化测试工具的介绍与使用

什么是自动化测试 自动化测试指软件测试的自动化,在预设状态下运行应用程序或者系统,预设条件包括正常和异常,最后评估运行 结果。总的概括即:将人为驱动的测试行为转化为机器执行的过程。 进入今天的主角:selenium学习功能测试自动化首选工具就是selenium,它是一个web自动化测试工具。 selenium的特点 支持多平台:IE、Chrome、Firefox、edge、Safari 支持多语言:Python、C、Java、C#、ruby、js 免费小巧,支持分布式测试用例的执行,..

TANGY的博客 3万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

什么是Selenium?使用Selenium进行自动化测试!

Selenium 是一种开源工具,用于在Web 浏览器上执行自动化测试(使用任何 Web 浏览器进行 Web 应用程序测试)。等等,先别激动,让我再次重申一下,Selenium 仅可以测试Web应用程序。我们既不能使用Selenium 测试任何桌面(软件)应用程序,也不能测试任何移动应用程序。这很糟糕,对吧?我能感觉到你的痛苦。但请放心,有许多工具可以测试桌面软件和移动应用程序,例如:IBM 的 RFT,HP 的 QPT,Appium 等。

hlsxjh的博客 1137

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Selenium自动化测试框架

Selenium自动化测试

qq_44954371的博客 2万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

什么是Selenium?使用Selenium进行自动化测试

Selenium 是一种开源工具,用于在 Web 浏览器上执行自动化测试(使用任何 Web 浏览器进行 Web 应用程序测试)。等等,先别激动,让我再次重申一下,Selenium 仅可以测试Web应用程序。我们既不能使用 Selenium 测试任何桌面(软件)应用程序,也不能测试任何移动应用程序。这很糟糕,对吧?我能感觉到你的痛苦。但请放心,有许多工具可以测试桌面软件和移动应用程序,例如:IBM 的 RFT,HP 的 QPT,Appium 等。

weixin_71807218的博客 1018

使用Selenium进行自动化测试

对于很多刚入门的测试新手来说,大家都将自动化测试作为自己职业发展的一个主要阶段。可是,在成为一名合格的自动化测试工程师之前,我们不仅要掌握相应的理论知识,还要进行大量的实践,积累足够的经验,以便快速适应工作需求。

公众号:【伤心的辣条】 3837

Selenium自动化测试框架—简单了解

Selenium自动化测试框架—简单了解Selenium自动化测试框架Selenium IDESelenium API基础Selenium API高级 Selenium自动化测试框架 什么是框架? 框架(framework)是一个框子——指其约束性,也是一个架子——指其支撑性。是一个基本概念上的结构,用于去解决或者处理复杂的问题。 框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。

EndiveSprout_Peach 3868

UI自动化测试工具——Selenium学习

简单来说,就一句话:使用工具或者代码的方式代替手工测试的行为,就叫做自动化测试。自动化测试一般用于回归和冒烟测试阶段,减少重复性的劳动,提高测试效率,降低人为错误。什么样的项目适合做自动化测试:迭代周期长的项目UI页面变化不大的项目需求比较明确的项目自动化测试的流程:需求分析(分析哪些地方适合做自动化测试)自动化测试计划自动化测试用例(一般都是从手工测试用例中选取)缺陷报告测试报告什么样的项目适合做自动化测试:迭代周期长的项目UI页面变化不大的项目需求比较明确的项目。

m0_64021829的博客 1571
上一篇: final,finally,finalize的区别
下一篇: axis报No engine configuration file - aborting! 错误解决方法
weoln
博客等级 码龄21年 43粉丝 123原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值