自动化测试Selenium【基础篇二】

news2024/9/25 23:23:26

自动化测试Selenium【基础篇二】

  • 🍎一.Selenium基础使用
    • 🍒1.1 信息打印
      • 🍉 1.1.1打印标题
      • 🍉 1.1.1打印当前网页标题
    • 🍒1.2 窗口
      • 🍉1.2.1 获取句柄
      • 🍉1.2.2 窗口切换
      • 🍉1.2.3 窗口大小设置
    • 🍒1.3 导航
    • 🍒1.4 弹窗
      • 🍉 1.4.1 警告弹窗、确认弹窗
      • 🍉 1.4.2 提示弹窗
    • 🍒1.5 鼠标、键盘的操作
      • 🍉 1.5.1 鼠标
      • 🍉 1.5.2 键盘
    • 🍒1.6 选择框
    • 🍒1.7 文件上传
    • 🍒1.8 屏幕截图

🍎一.Selenium基础使用

🍒1.1 信息打印

在这里插入图片描述

🍉 1.1.1打印标题

String str1 = driver.getTitle();

🍉 1.1.1打印当前网页标题

String str2 = driver.getCurrentUrl();

🍒1.2 窗口

🍉1.2.1 获取句柄

selenium对每一个标签页都给了唯一标识,称之为句柄

在这里插入图片描述
返回的句柄格式

在这里插入图片描述

🍉1.2.2 窗口切换

从所有句柄中选择想要跳转的句柄(页面>

driver. switchTo().window ("window String类型") ;

🍉1.2.3 窗口大小设置

在这里插入图片描述

🍒1.3 导航

selenium里提供了navigate接口来实现页面的导航
(1)前进
driver. navigate().forward ();
(2)后退
driver. navigate (). back();

🍒1.4 弹窗

🍉 1.4.1 警告弹窗、确认弹窗

不能够在前端代码定位到元素需要使用Selenium中提供的Alert接口来处理
Alert alert = driver. switchTo().alert();

在这里插入图片描述

🍉 1.4.2 提示弹窗

提示弹窗可能由于没有快速弹出,alert没有捕捉到,会报错,所有我们会进行隐式等待或者强制等待
在这里插入图片描述

🍒1.5 鼠标、键盘的操作

selenium提供了Actions接口

🍉 1.5.1 鼠标

在这里插入图片描述

🍉 1.5.2 键盘

在这里插入图片描述

🍒1.6 选择框

selenium提供了select接口
在这里插入图片描述

🍒1.7 文件上传

页面中点击文件上传会弹出来系统窗口,selenium不能够操作系统窗口

通过sendKey()方法输入我们想要上传的文件路径以及文件名,就能够达到文件上传的一个操作
在这里插入图片描述

🍒1.8 屏幕截图

代码的执行速度比页面渲染的速度要快通过截图来留证。
driver.getScreenshotAs (Outpute.x);
x 可以选择File, Base64, bytes
在这里插入图片描述

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

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

相关文章

当你点击浏览器的瞬间都发生了什么----- 网络学习笔记

计算机网络前言web 浏览器协议栈创建套接字阶段。连接阶段。断开阶段。IP模块网卡网络设备 --- 集线器、交换器和路由器集线器交换器路由器路由器的附加功能一 :地址转换路由器的附加功能一 :包过滤功能互联网内部接入网光纤接入网(FTTH&…

JDK8 前后的 Date 日期时间 API

JDK8 前后的 Date 日期时间 API 每博一文案 师父说:人只要活在世界上,就会有很多的烦恼,痛苦或是快乐,取决于逆的内心,只要心里拥有温暖灿烂的阳光, 那么悲伤又有什么好畏惧的呢? 人生如行路&a…

vue学习笔记(更新中)

目录 简介 使用Vue写一个"hello,world" 前置准备 代码书写 MVVM模型理解 插值语法和指令语法 插值语法 指令语法 指令:v-bind 指令:v-model vue中的el和data的两种写法 数据代理 方法:defineProperty() 说明…

新年礼物已收到!2022 Apache IoTDB Commits 数量排名 3/364!

社区喜报!据 The Apache Software Foundation 官方 Projects Statistics(项目信息统计网站)的实时数据显示,Apache IoTDB 在过去 12 个月(即 2022 年度)共发表 6829 Commits,排名 2022 年度 Apa…

2、Three.js开发入门与调试设置

一、添加坐标轴辅助器 AxesHelper 用于简单模拟3个坐标轴的对象. 红色代表 X 轴. 绿色代表 Y 轴. 蓝色代表 Z 轴. 构造函数 AxesHelper( size : Number ) size -- (可选的) 表示代表轴的线段长度. 默认为 1. //添加坐标轴 const axesHelper new THREE.AxesHelper(5); sc…

CSS 特效之心形-彩虹-加载动画

CSS 特效之心形-彩虹-加载动画参考描述效果HTMLCSS重置元素的部分默认样式bodyli动画定义指定animationul抖动代码总汇参考 项目描述搜索引擎BingMDNMDN Web Docs 描述 项目描述Edge109.0.1518.61 (正式版本) (64 位) 效果 HTML <!DOCTYPE html> <html lang"e…

Keil C51工程转VSCode Keil Assistant开发全过程

Keil C51工程转VSCode Keil Assistant开发全过程✨这里以stc15W408AS为例。&#x1f4cc;相关篇《【开源分享】自制STC15W408AS开发板》 &#x1f4fa;编译-烧录演示&#xff1a; &#x1f4cb;转VSCODE开发环境主要原因可能代码提示以及代码跳转功能&#xff0c;或者其他。 &…

在java中操作redis

在普通项目中操作redis 1.导入maven坐标 <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.8.0</version> </dependency>2.打开redis 如果redis-server闪退&#xff0c;那就先打开re…

【Spring Security】如何使用Lambda DSL配置Spring Security

本期目录1. 概述2. 新老配置风格对比Lambda风格等效的旧配置风格3. WebFlux Security4. Lambda DSL的目标1. 概述 在 Spring Security 5.2 中增强了 DSL 的功能&#xff1a;允许使用 Lambda 表达式来配置 HTTP security 。 需要注意的是&#xff1a;先前版本的配置风格仍然是…

二分查找——“C”

各位CSDN的uu们你们好呀&#xff0c;欢迎来到小雅兰的课堂&#xff0c;今天我们的内容是复习之前的内容&#xff0c;并把之前的内容的一些习题一起来做一做&#xff0c;现在&#xff0c;就让我们进入二分查找的世界吧 首先&#xff0c;我们介绍的题目就是二分查找&#xff0c;也…

module ‘tensorflow‘ has no attribute ‘Session‘

1. module ‘tensorflow‘ has no attribute ‘Session‘ 指定一个会话来运行tensorflow程序&#xff0c;在使用tensorflow1.x版本中用tensorflow.Session即可 但当我的库版本升级到2.x之后&#xff0c;就会出现标题式报错&#xff0c;于是我去查看了tensorflow库的源码&…

使用Keras搭建深度学习模型

前言 目前深度学习领域的主流框架 tensorflowkeraspytorchcaffetheanopaddlepaddle keras 代码架构 keras代码风格相比于其他框架更符合人的思维。 模型 模型的组成分为三部分&#xff1a;输入层、网络层、输出层。 输入层 输入层的作用时规定了模型输入的shape fro…

2022年智源社区年度热点推荐丨新春集锦

本文为2022年最受智源社区小伙伴喜爱的文章&#xff0c;根据文章质量和热门程度等维度计算得出。还有AI大佬的全年总结盘点总结&#xff0c;也一并推荐给你。虎年除旧&#xff0c;兔年迎新&#xff0c;藉此机会、智源编辑组全员谨祝大家新春快乐&#xff01;2022智源社区20篇最…

LINUX学习之网络配置(十一)

1.修改IP地址 使用ifconfig命令 例如要将eth0接口的IP地址更改为192.168.1.100&#xff0c;你可以使用以下命令 ifconfig eth0 192.168.1.100如果你想为IP地址设置子网掩码&#xff0c;可以使用“netmask”参数。例如&#xff0c;要将eth0接口的子网掩码设置为255.255.255.0…

[Linux]进程优先级 Linux中的环境变量

&#x1f941;作者&#xff1a; 华丞臧. &#x1f4d5;​​​​专栏&#xff1a;【LINUX】 各位读者老爷如果觉得博主写的不错&#xff0c;请诸位多多支持(点赞收藏关注)。如果有错误的地方&#xff0c;欢迎在评论区指出。 推荐一款刷题网站 &#x1f449; LeetCode刷题网站 文…

liunx centos9中安装Redis数据库,并在win10中连接redis图文详解

首先我们去Redis的官网点击download下载tar的压缩包 https://redis.io/download/#redis-downloads 用xftp将安装包上传到你的liunx服务器本地地址 解压 tar -xvf /root/redis-7.0.8.tar.gz cd进入你刚才解压的文件夹中 cd /root/redis-7.0.8 执行make进行编译 编译完成后cd进入…

普中科技MicroPython基于esp32的基础教程-03-字符串

目录 字符串 字符串的表示方式 普通字符串 原始字符串 长字符串 字符串与数字相互转换 将字符串转换为数字 将数字转换为字符串 格式化字符串 占位符% format方法 f-strings 操作字符串 字符串拼接 字符串查找 字符串替换 字符串分割 去处字符串两…

目标检测:Focal Loss

目标检测&#xff1a;Focal Loss前言Focal LossCross Entropybalanced Cross EntropyFocal Loss Definition前言 Focal loss这个idea来源于论文《Focal Loss for Dense Object Detection》,主要是为了解决正负样本、难易样本不平衡的问题。 Focal Loss Cross Entropy 在目标…

不懂Pod?不足以谈K8s

文章目录✨ 前言1. myblog改造及优化2. Pod生命周期&#x1f351; 如何编写资源 yaml&#x1f351; pod状态与生命周期3. Pod操作总结✨ 前言 在上一篇文章中&#xff0c;我们学习了 Pod 的常用设置&#xff0c;那么这篇文章咱们继续开动&#xff01; K8s落地实践之旅 —— P…

LabVIEW异步调用VI的多个实例实现并行执行

LabVIEW异步调用VI的多个实例实现并行执行默认情况下&#xff0c;如对一个VI进行多个异步调用&#xff0c;LabVIEW将这些调用按顺序排列&#xff0c;依次执行。各个调用的执行时间累加&#xff0c;效率不高。按照下列步骤&#xff0c;并行执行各个调用&#xff0c;避免一个调用…