Python_自动化基础笔记整理

本文是关于Python自动化测试中使用Selenium的一些基础笔记,涵盖了环境搭建、元素定位方法以及常见报错异常的解决方案。在环境搭建中提到了Google浏览器和selenium模块的安装;在元素定位方法中列举了多种定位方式;在常见问题部分,讨论了元素定位失败、执行效率低等问题及其解决思路,并详细阐述了各种异常的排查和处理方法。
摘要由CSDN通过智能技术生成

1. 自动化常见问题:

1.1 Python自动化环境搭建步骤

安装Google浏览器,驱动地址:http://chromedriver.storage.googleapis.com/index.html

安装selenium模块:pip install selenium 

1.2 Selenium中常用的元素定位方法有哪些

class_name、css_selector、id、link_text、name、paratial_link_text、tag_name、xpath

1.3 Selenium常见问题及解决思路

元素定位失败:使用唯一的name、id增加准确性,也有可能页面未加载完全需要等待;

执行效率低:受网速、操作繁琐、页面加载、等待时间等影响,严重拖慢脚本执行速度,可以考虑应用设置异常检测来替代等待时间较长的部分代码,网址尽量是直接打开,查询网页加载缓慢的原因,设置超时时间

2. Selenium常见报错异常:

NoSuchElementException: 找不到元素, 解决方法: 前面加上sleep等待后重试,或换一种定位方式

排查步骤: 

  • 第一:检查定位值是否写错;
  • 第二:检查浏览器页面运行是否与代码运行同步;
  • 第三:检查元素是否包含在 iframe 标签中;
  • 第四:检查前后操作的元素是否在不同的窗口中。

NoSuchAttributeException: 元素没有这个属性, 解决方法: 确认定位到的元素是否目标元素, 检查属性拼写

InvalidElementStateException: 元素状态异常 元素只读/不可点击等, 解决方法: 等待或使用js移除元素readonly/disable等限制属性后操作

ElementNotSelectableException:元素不可被选中, 解决方法: 确认原始是否为select标签, 是否禁用

NoSuchFrameException:没有找到指定的frame或iframe, 解决方法: 查看拼写或切换使用frame的id/name/index/定位到的frame

NoSuchWindowException: 没找到窗口句柄指定的窗口, 解决方法: 查看使用的窗口句柄变量拼写

UnexpectedAlertPresentException: 出现了弹框而未处理, 解决方法: 切换到警告框并处理, 如果偶现,使用try...except处理偶现弹框

InvalidSwitchToTargetException: 切换到指定frame或窗口报错, 解决方法: 查看相应的frame或窗口是否能定位到

TimeoutException:查找元素或操作超时, 解决方法: 稍后重试

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tingshuo2009

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值