首页 > 其他分享 >QA|重写了元素定位后报错xx object has no attribute 'find_element'|网页计算器自动化测试实战

QA|重写了元素定位后报错xx object has no attribute 'find_element'|网页计算器自动化测试实战

时间:2023-06-07 19:35:55浏览次数:58  
标签:__ no self object element 报错 cal basepage

代码如下:

 1 # basepage.py
 2 
 3 from selenium import webdriver
 4 
 5 
 6 class BasePage():
 7     """
 8     基类 用作初始化 封装常用操作
 9     """
10 
11     def __init__(self):
12         """
13         初始化driver
14         """
15         self.driver = webdriver.Firefox()
16         self.calurl = r'http://cal.apple886.com/'
17         self.open_page()
18 
19     ....
20     
21     def locator(self,by,element):
22         """
23         元素定位
24         """
25         self.find_element(by,element) 
basepage.py

 

另一个页面代码如下:

 1 from basepage.common.basepage import BasePage
 2 from selenium.webdriver.common.by import By
 3 
 4 
 5 # 对象库层
 6 class CalElement(BasePage):
 7     """
 8     封装各种元素对象:清屏、加、减、乘、除、等于
 9     """
10     def clear_ele(self):
11         """计算器清屏"""
12         self.locator(By.ID,'simpleClearAllBtn')
13     ......
14 
15 if __name__ == "__main__":
16     cal = CalElement()
17     print(cal.clear_ele())
cal_page.py

 

结果报错如下图:

 

原因:

 

解决:

 

标签:__,no,self,object,element,报错,cal,basepage
From: https://www.cnblogs.com/T-Better/p/17464336.html

相关文章

  • JDK没有JAVAX.ANNOTATION.JAR包解决方案,无法使用@RESOURCE解决方案
    高版本JDK无法使用@Resource注解解决方案1.普通项目下载javax.annotation-api-1.3.2.jar,并在lib目录中引入即可2.Maven项目Maven项目:在pom.xml中进行配置<dependency><groupId>javax.annotation</groupId><artifactId>jsr250-api</artifactId><ver......
  • 报错 ImportError: urllib3 v2.0 only
     麻烦您到服务器命令行执行下面命令修复下btpipinstall-Irequests==2.27bt1  您好,该问题是requests模块库与OpenSSL模块问题导致的,您那边可到服务器命令行下使用下面命令尝试解决。修复requests模块命令:btpipinstallrequests-U  解决问题帖子......
  • window安装EMQX和node.js
    进入网站https://www.emqx.io/zh/downloads?os=Windows进入nodejs官网https://nodejs.cn/download/下载......
  • Node_学习笔记
    不同技术点:24px红色加粗标题一技术点子模块:18px黑色加粗标题二子模块在细分:16px  缩进标题三普通文字:14pxNodeJS入门NodeJS是什么:Node.js就是一款应用程序,是一款软件,它可以运行JavaScriptCDM常用命令: 切换盘符:C:D: 切换工作目录:cd......
  • P5288 [HNOI2019]多边形
    P5288[HNOI2019]多边形Solution先进行大量的模拟。最终所有线段的端点均为点\(n\)。第一问答案为\((n-1-与n相连的线段数量)\)。可以把线段看成节点,将原图转为若干棵二叉树组成的森林。这里只建那些不与点\(n\)相连的非边线段。原操作可以看作是sp......
  • git clone出现remote error: Repository not found错误
    出现这种错误的时候,需要确定几件事情1.确定远端项目是否存在2.自己是否有gitclone权限3.查看自己的凭据是否正确主要说一下凭据查看 看一下自己的用户名和密码是否正确!!! ......
  • 解决Ubuntu 20.04升级后gnome-control-center设置程序无法打开问题
    解决Ubuntu20.04升级后gnome-control-center设置程序无法打开问题Ubuntu20.04系统升级后,发现gnome设置程序无法正常打开了。在终端运行命令查看错误信息,运行以下命令:sudognome-control-center从显示的错误信息可以看出,其调用的一些so文件,需要高版本的libc6,而Ubuntu20.0......
  • node实现文件上传到七牛云
    使用七牛云提供的Node.jsSDK(https://developer.qiniu.com/kodo/1289/nodejs)实现文件上传服务端:1、安装JDKnpm/cnpminstallqiniuoryarnaddqiniu2、导出七牛云配置文件的Token//七牛云配置文件constqiniu=require('qiniu');//创建上传凭证(accessKey和s......
  • Warning: Using innodb_additional_mem_pool_size is DEPRECATED
    Warning:Usinginnodb_additional_mem_pool_sizeisDEPRECATED.Thisoptionmayberemovedinfuturereleases,togetherwiththeoptioninnodb_use_sys_mallocandwiththeInnoDB‘sinternalmemoryallocator.根据https://blogs.oracle.com/supportingmysql/......
  • NIO 是不是就是IO多路复用?NO
    似乎从互联网起源,BIO、NIO的话题就从未间断,无论是平时还是面试。那么他们到底是什么?希望你看完这个文章彻底理解这些概念,同时这边文章也使用Java代码实现一个I/O多路复用的实例,最后到I/O原理。IO是什么?首先要了解什么是I/O,一次网络请求、一次磁盘读取都是I/O,所以可以泛......