当前位置: 首页 > news >正文

记录我定位了2天的bug,坚持下去,问题终究会解决。

在这里插入图片描述
背景:执行用例过程中,报错“str” has no attribute ‘findele’,
解决办法:
(1)先是调用click()方法报错,报错:“str” has no attribute ‘findele’,
(2)试了2天,各种方法无数次,最后定位到了findele这块的问题,>>>单独调测这个方法。后来还是报错,灵机一动,我删掉了方法中的所以桑眼的东东,如下:
def findele(self, *args):
return self.driver.find_element(*args)
就剩了个这,然后就不报这个错了,终于解决了,我真是醉了,至于为什么添加异常判断后报错,继续定位。
(2)接下来又报错:“str” has no attribute “driver”
然后,发现调用方法返回的return self.driver.find_element(*args)其中的driver是无效的,发现方法无法识别findele,想让它识别怎么办,首先肯定要继承这个方法的类,继承后,我们实例调用self.findele,成功通过。内心是澎湃的
在这里插入图片描述

(3)接下来继续click(),发现继续报错:selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: ‘using’ must be a string。意思是我们使用的必须是一个字符串
(4)将click()里面的变量换成*args问题解决:
# 对元素click
def click(self, *args):
return self.findele(args).click()
(5)今天调用sendkey()方法,报错:提示我定义了2个变量,但是输入了3个变量,解决办法:
将前两个变量换为元组。注意输入2个变量,方法中的变量是
args,例如:
def sendkey(self, args, value):
self.findele(*args).send_keys(value)
调用:send_key((By.Id,“kw”),‘jiao’),前面2个变量是一个元组哦

相关文章:

  • python_函数_参数(args、*args、**kwargs)
  • python与selenium_强制等待、隐性等待、显性等待
  • python_日志相关
  • jenkins总结1 - 安装、git、allure、email插件配置
  • pytest框架_简介、pytest.main()
  • pytest框架_@pytest.fixture()
  • pytest框架_@pytest.mark.usefixtures()
  • pytest框架_conftest.py详解
  • pytest框架_@pytest.mark.parametrize()
  • pytest框架_@pytest.yield_fixture()
  • pytest框架_@pytest.mark.xfail()
  • pytest框架_@pytest.mark.skipif()
  • pytest框架_pytest.ini
  • pytest框架_测试报告(allure-pytest)
  • pytest框架_pytest_runtest_makereport实现失败截图自动加入allure
  • 深入了解以太坊
  • JavaScript 如何正确处理 Unicode 编码问题!
  • [译]前端离线指南(上)
  • Angular2开发踩坑系列-生产环境编译
  • create-react-app项目添加less配置
  • java多线程
  • MySQL主从复制读写分离及奇怪的问题
  • SpringBoot 实战 (三) | 配置文件详解
  • springboot_database项目介绍
  • 大型网站性能监测、分析与优化常见问题QA
  • 订阅Forge Viewer所有的事件
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 京东美团研发面经
  • 前端工程化(Gulp、Webpack)-webpack
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 日剧·日综资源集合(建议收藏)
  • 详解移动APP与web APP的区别
  • 学习笔记TF060:图像语音结合,看图说话
  • 一份游戏开发学习路线
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • ​ 无限可能性的探索:Amazon Lightsail轻量应用服务器引领数字化时代创新发展
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • #传输# #传输数据判断#
  • $.ajax()
  • (1)(1.13) SiK无线电高级配置(五)
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (六)vue-router+UI组件库
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (四)Android布局类型(线性布局LinearLayout)
  • (提供数据集下载)基于大语言模型LangChain与ChatGLM3-6B本地知识库调优:数据集优化、参数调整、Prompt提示词优化实战
  • .NET 8 编写 LiteDB vs SQLite 数据库 CRUD 接口性能测试(准备篇)
  • .net FrameWork简介,数组,枚举
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args
  • /proc/stat文件详解(翻译)
  • [ solr入门 ] - 利用solrJ进行检索