python自动化操作应用程序错误_web自动化中踩过的低级错误坑(python+selenium)

1.定位了元素没有做下一步操作,比如,点击、输入等功能,而报错,报错信息如下:

b89a495e25e2e6a669cf1ea5d1f4fd9f.png

2.上传图片时,定位元素,应该定位input标签,点击页面input标签肉眼没有看到定位到任何元素,以为无法成功,实际上只要有input标签被定位到是都可以上传图片的!

3.定义页面基础类时,初始化webdiver,传参数的时候没有对参数driver赋默认None值,即一个默认参数,导致页面报错如下:

传人默认参数,在调用self.main=Main()时,就可以不传入参数了

9a33c68942d3eccdc112d554feb6e73a.png

class BasePage():

_base_url = ""

def __init__(self, driver: WebDriver = None):#就是因为这里没有传None!!❗️❗️⚠️

self._driver = None

if self._driver is None:

ops_chrome = webdriver.ChromeOptions()

ops_chrome.debugger_address = "127.0.0.1:9222"

self._driver = webdriver.Chrome(options=ops_chrome)

else:

self._driver = driver

if self._base_url != "":#这里的意思是如果_base_url不为空的话,就执行跳转到某个页面,这个页面的url其实是子类重写了父类的类属性

self._driver.get(self._base_url)

self._driver.implicitly_wait(5)

4. 有时候报错有可能不是没有定位到元素,而是时间太快,页面没有加载出来,这个时候可以加一个等待时间再试一下

5.封装定位元素的方法,应该将by和locate都传进去,使用起来更加灵活!

def find(self, by, locate):

return self._driver.find_element(by, locate)

6.在po设计模式中,所有的页面都要继承页面基类(BasePage)

7.定位元素的时候,一定要和driver打开的页面是一致的。今天用已登录的页面去定位百度页面右上角的设置,发现老是提示页面定位不到元素的错误,其实就是因为driver打开的浏览器是没有任何登录信息的百度页面,而我是去定位到的已登录状态的百度页面,因此这两个不是同一个页面!!!以后定位元素,一定要记住这个坑,并不是这个元素没有id属性.

8.定位比如搜索设置中的悬浮窗时,打开控制台中使用快捷键是定位不到的,需要选中要查看的元素,右键,点击菜单中的检查!!

b3d76b6743de1e0fc27792f2b8429f18.png

9.如果没有定位到某个元素的时候,可以打印driver.page_source,来判断该元素是否在当前页面:

assert 's_btn_wr' in self.driver.page_source

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

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

相关文章

(全排列)Smallest Difference (poj2718)

题目: Description - 题目描述 给定若干位十进制数,你可以通过选择一个非空子集并以某种顺序构建一个数。剩余元素可以用相同规则构建第二个数。除非构造的数恰好为0,否则不能以0打头。 举例来说,给定数字0,1&#x…

qgis折点打断_arcgis在折点处打断并建立网络分析(最短路径等问题)

目的:GIS网络分析用于对段路径等问题。这里仅仅讲述如何建立网络分析。网络建立前必须满足以下条件1.要素文件在节点处打断(本文下面会叙述)2.要素文件在地理数据库里的数据集里(一般是这样)3.要素文件包含的数据集里已经验证拓扑,并确保没有错误(可选)注…

(bfs)连连看(hdu1175)

题目: “连连看”相信很多人都玩过。没玩过也没关系,下面我给大家介绍一下游戏规则:在一个棋盘中,放了很多的棋子。如果某两个相同的棋子,可以通过一条线连起来(这条线不能经过其它棋子)&#…

base64 java php_利用PHP将图片转换成base64编码的实现方法

先来说一下为什么我们要对图片base64编码base64是当前网络上最为常见的传输8Bit字节代码的编码方式其中之一。base64主要不是加密,它主要的用途是把某些二进制数转成普通字符用于网络传输。由于这些二进制字符在传输协议中属于控制字符,不能直接传送&…

(BFS)Knight Moves(hdu1372)

题目: 在象棋王国,尼古拉斯.火山是一匹英俊的马,他非常幸运迎娶了白马王国的公主,他们将度蜜月,你现在是他们的女仆,火山会问你去一些地方最少需要多少步,这么简单的事当然难不倒你。由于火山是…

java上机作业要注意什么_Java第八次上机作业

1、请按照以下要求设计一个学生类Student,并进行测试。要求如下:1)Student类中包含姓名、成绩两个属性2)分别给这两个属性定义两个方法,一个方法用于设置值,另一个方法用于获取值.3)Student类中定义一个无参的构造方法和一个接收两…

(枚举)餐厅点餐(fzu2086)

问题: Jack最近喜欢到学校餐厅吃饭,好吃干净还便宜。 在学校餐厅,有a种汤,b种饭,c种面条,d种荤菜,e种素菜。 为了保证膳食搭配,Jack每顿饭都会点1~2样荤菜,1~2样素菜&…

java代下订单管理模块_用java语言开发一个订单管理系统

管理员登陆窗体(LoginForm):窗体中包含“管理员姓名”,“管理员密码”,按钮:"确定","取消"操作主窗体(MainFrame):包括:1、一个Jtable用来显示数据库中Orders表(订单表)中的...管理员登陆窗体(LoginForm)&…

(并查集)畅通工程

题目 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。…

java windows 2008_Windows server 2008 R2 安装Java环境

一、配置环境操作系统软件包Windows server 2008 R2jdk_1.7.rar二、安装操作1.右击解压jdk_1.7.rar;解压后双击运行jdk-7u79-windows-i586 .exe2.点击【下一步】一直到有个【更改】按钮,可以更改安装路径,设置完成后点击“下一步”。到达这个…

(kruskal)还是畅通工程

题目: 某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要…

java 匿名类型_Java之匿名类讲解

匿名类,正如名字一样在java中没有名字标识的类,当然了编译后还是会安排一个名字的。下面是一个关于匿名类的简单例子:public classClient {public static voidmain(String[] args) throws InterruptedException {Thread tnew Thread(newRunna…

(并查集)小希的迷宫

题目: 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B&…

java的三个环境变量是啥_JAVA中常用需要设置的三个环境变量(JAVA_HOME、CLASSPATH、PATH)...

JAVA中常用需要设置的三个环境变量:JAVA_HOME、CLASSPATH、PATH(一)  配置环境变量:(相对路径)1. JAVA_HOMEx:/jdk1.6.02. 用%JAVA_HOME%就可以取代:x:/jdk1.6.0这一部分CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/activation.jar…

(并查集)The Suspects

题目 Severe acute respiratory syndrome (SARS), an atypical pneumonia of unknown aetiology, was recognized as a global threat in mid-March 2003. To minimize transmission to others, the best strategy is to separate the suspects from others. In the Not-Spre…

java字节流分为_Java文件流可分为字节流和字符流。

【单选题】TCP 和 UDP 协议的相似之处是 ()【单选题】That was the first time I ______ French with a foreigner.【判断题】【判断题】对互联网和搜索引擎的应用是奥巴马连续淘汰希拉里、麦凯恩等竞争对手的法宝之一。【单选题】friend意为“朋友”,请问,“友谊”如何表达?【…

(最小生成树)prim算法

总结一下: 如果选 0为起点,low_cost[i]表示以 0这个起点到i 这个终点的权值,我们找最小的权值的终点i,然后以i为起点,去更新low_cost[]这个数组,如果与i相连的数是j,现在有两种情况&#xff0c…

Java调用虚拟键盘输入法_Android 点击屏幕空白处收起输入法软键盘(手动打开)...

很多时候,我们在使用应用时,会出现输入法软键盘弹出的问题,通常情况下,我们默认会使用户点击返回键或者下一步对软键盘进行隐藏。为了更好的体验,我们可以实现当用户使用完毕软键盘时。点击屏幕空白区域即可实现收起输…

(并查集)Find them, Catch them

题目 The police office in Tadu City decides to say ends to the chaos, as launch actions to root up the TWO gangs in the city, Gang Dragon and Gang Snake. However, the police first needs to identify which gang a criminal belongs to. The present question is…

(并查集)食物链

题目: 动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。 现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。 有人用两…