Web自动化测试 —— capability参数配置

news2024/11/24 3:12:10

一、capability概述

  • capability是webdriver支持的标准命令之外的扩展命令(配置信息)
  • 配置web驱动属性,如浏览器名称、浏览器平台。
  • 结合selenium gird完成分布式、兼容性测试
  • 官网地址: https://www.selenium.dev/zh-cn/documentation/webdriver/capabilities/shared/

二、capability配置

def test_capability():
    # 切换成 windows 就会报错
    capabilities = {"browserName": "chrome", "platformName": "windows"}
    # 通过 desired_capabilities 添加配置信息
    driver = webdriver.Chrome(desired_capabilities=capabilities)
    driver.implicitly_wait(5)
    driver.get("https://ceshiren.com/")
    # 输入框输入搜索内容[霍格沃兹测试学院]
    text = driver.find_element(By.CSS_SELECTOR, ".login-button").text
    # 点击搜索按钮
    print(text)
    time.sleep(3)
    driver.quit()

三、Selenium Grid简介

  • Selenium Grid 允许我们在多台机器上并行运行测试,并集中管理不同的浏览器版本和浏览器配置(而不是在每个单独的测试中)。
  • 官网地址:https://www.selenium.dev/documentation/grid/

四、分布式运行

def test_ceshiren2():
    hogwarts_grid_url = "https://selenium-node.hogwarts.ceshiren.com/wd/hub"
    capabilities = {"browserName":"chrome","browserVersion":"101.0"}
    # 配置信息
    # 实例化Remote,获取可以远程控制的driver实例对象
    # 通过 command_executor 配置selenium hub地址
    # 通过 desired_capabilities 添加配置信息
    driver = webdriver.Remote(
        command_executor=hogwarts_grid_url,
        desired_capabilities=capabilities)
    driver.implicitly_wait(5)
    driver.get("https://ceshiren.com/")
    # 输入框输入搜索内容[霍格沃兹测试学院]
    text = driver.find_element(By.CSS_SELECTOR, ".login-button").text
    # 点击搜索按钮
    print(text)
    time.sleep(3)
    driver.quit()

今天的分享就到此结束了,大家还有什么不懂的可以评论区下留言哈,如果我的文章对你有所帮助的话,可以点赞三联支持一下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1045595.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ssm+vue的在线测试管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频: ssmvue的在线测试管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…

考完PMP,还能继续学什么?

大家好,我是老原。 最近有不少粉丝朋友来咨询我,项目经理有什么证书可以考?考过PMP了,还能学点啥来提升一下自己? 在我看来,项目管理可考的证书有很多,但很多项目经理也确确实实存在一些思维盲…

[学习笔记]ARXML - Data Format

参考AUTOSAR文档: https://www.autosar.org/fileadmin/standards/R22-11/FO/AUTOSAR_TPS_ARXMLSerializationRules.pdfhttps://www.autosar.org/fileadmin/standards/R22-11/FO/AUTOSAR_TPS_ARXMLSerializationRules.pdf 编码 arxml只允许使用UTF-8编码&#xff…

先来聊聊MySQL的binlog文件解析

先来聊聊MySQL的binlog文件解析 简介MySQL binlog的三种工作模式binlog相关参数mysqlbinlog解析工具 看腻了文章就来听听视频讲解吧:https://www.bilibili.com/video/BV1F94y1s7xe/ 简介 MySQL的binlog日志是用来记录MySQL对数据库有变更操作的记录,包…

TCP为什么是三次握手

TCP:Transmission Controll Protocol:传输控制协议;面向连接、可靠的、基于字节流的传输层协议 ​ 面向连接:客户端和服务端进行连接的协议 ​ 可靠性:保证信息能够从发送端到达接收端;这是…

四川玖璨电子商务有限公司抖音电商界的领跑者

在当今的电商市场中,四川玖璨电子商务有限公司以其卓越的表现和领先的地位,被广大消费者和业内人士所认可。作为抖音电商领跑者,该公司以其精湛的产品和服务,创新的营销策略,及客户至上的理念,成为这个充满…

Spring学习笔记12 面向切面编程AOP

Spring学习笔记11 GoF代理模式_biubiubiu0706的博客-CSDN博客 AOP(Aspect Oriented Programming):面向切面编程,面向方面编程. AOP是对OOP的补充延申.底层使用动态代理实现. Spring的AOP使用的动态代理是:JDK动态代理_CGLIB动态代理技术.Spring在这两种动态代理中灵活切换.如…

Lua多脚本执行

--全局变量 a 1 b "123"for i 1,2 doc "Holens" endprint(c) print("*************************************1")--本地变量(局部变量) for i 1,2 dolocal d "Holens2"print(d) end print(d)function F1( ..…

没有 RunInstallerAttribute.Yes 的公共安装程序

安装window服务时报“没有 RunInstallerAttribute.Yes 的公共安装程序”的问题

Pytorch单机多卡分布式训练

Pytorch单机多卡分布式训练 数据并行: DP和DDP 这两个都是pytorch下实现多GPU训练的库,DP是pytorch以前实现的库,现在官方更推荐使用DDP,即使是单机训练也比DP快。 DataParallel(DP) 只支持单进程多线程…

Aqara秋季品鉴会众新品亮相 空间智能全面进化

9月26日,全球IoT独角兽Aqara以“空间智能,全面进化”为主题在北京三里屯CHAO酒店举办了秋季品鉴会。会上正式发布了方舟智慧中枢M3、卡农智能墙壁开关Z1 Pro、银河系列高端灯具V1以及具备全新功能升级的场景传感器FP2,方舟技术升级至2.0版本。…

浅谈Deep Learning 与 Machine Learning 与Artificial Intelligence

文章目录 三者的联系与区别 三者的联系与区别 “Deep Learning is a kind of Machine Learning, and Machine Learning is a kind of Artificial Intelligence.” 人工智能(AI),机器学习(Machine Learning,简称ML&am…

玩转 CODING 自动化助手,助力高效研发!

点击链接了解详情 在日常工作中,您是否会遇到下面的情况: 作为研发人员,从需求拆分出来的开发子任务完成时,还要手动修改需求为完成状态,不仅耗时还容易遗漏; 作为产品经理,每天都要关注需求/任…

游戏开发过程中需要注意哪些问题呢?

游戏开发是一个复杂的过程,需要注意多个方面的问题。以下是一些需要特别关注的关键问题: 游戏设计: 确定游戏的核心玩法和目标受众。 制定详细的游戏设计文档,包括角色、关卡设计、游戏机制和故事情节。 技术选择:…

项目04-基于Docker的Prometheus+Grafana+AlertManager的飞书监控报警平台

文章目录 一.项目介绍1.流程图2.拓扑图3.详细介绍 二.前期准备1.项目环境2.IP划分 三. 项目步骤1.ansible部署软件环境1.1 安装ansible环境1.2 建立免密通道1.3 批量部署docker 2 部署nginx、MySQL以及cadvisor、exporter节点2.1 在nginx节点服务器上面配置nginx、node_exporte…

高效批量剪辑的秘诀与技巧,虚化背景技巧在视频剪辑中的应用与创意

你是否曾经为了制作一个高质量的视频而感到烦恼?视频剪辑是一项繁琐的工作,但是使用批量剪辑工具可以让这个过程变得更加高效。今天,我们将向您介绍一款强大的批量剪辑工具——视频工厂,帮助您轻松制作高质量视频。 首先&#xff…

linux中mysql启动失败以及数据迁移

背影:服务启动失败:报错数据库连接太多导致mysql挂了 解决过程: 在任何部署信息都不知道的前提下(因为是被临时拉来解决的): 1、通过【find / -name mysql】或者【whereis mysql】查找(ps&am…

两表查询常用SQL

1、两个表:table_a和table_b,求两表的交集,关键字:INNER JOIN SELECT a.*,b.* FROM table_a AS a INNER JOIN table_b AS b ON a.idb.id; 2、两个表:table_a和table_b,table_a为主表&#xff0…

新旅程、新经营丨神策 2023 数据驱动大会 10 月 27-28 日北京见

以数据驱动为手段 以客户旅程为抓手 实现更好的数字化客户经营 「新旅程、新经营,决胜数字化」 神策 2023 数据驱动大会 报名通道正式开启 识别二维码立即报名 历经八载,神策数据驱动大会已成为国内数字化转型和营销科技领域的年度盛会!本届大…

这个国庆场景下的创意数据应用,体现了数字经济时代的商业价值

在生成式AI爆火的2023年,数据协作和数据交换的商业价值越来越明显。大模型的训练正需要海量跨领域数据的“投喂”,才能真正创造商业价值涌现的奇迹。而如何在保护数据安全的前提下,有效发挥数据资产的商业价值,成为企业数字化亟需…