精华内容
下载资源
问答
  • Python继承问题

    2020-10-22 19:52:31
    xpath(value) File "D:\Python 3.5\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 394, in find_element_by_xpath return self.find_element(by=By.XPATH, value=xpath) File "D:\Python 3.5\...

    报错代码
    父类

    from logs.log import log1
    from framework.base_page import BasePage
    class LoginPage(BasePage):
        def __init__(self):
            '''定位元素'''
            #账号登录按钮
            self.account_btn = ['class', 'select-text']
            #账号
            self.user_path = ['css', 'input[placeholder="输入邮箱/手机号"]']
            #密码
            self.pwd_path = ['css', 'input[placeholder="输入密码"]']
            #登录按钮
            self.login_btn_path=['class','submit-btns']
    
        #点击账号密码方式登录
        def account_login_switch(self):
            self.click(self.account_btn,1)
    
        #输入框输入用户名
        def user_input(self,user):
            self.type_input(self.user_path,user)
    
        # 输入框输入密码
        def pwd_input(self, pwd):
            self.type_input(self.pwd_path, pwd)
    
        def account_login(self):
            '''默认的正确账号登录功能'''
            username=self.config_get('username','login')
            password=self.config_get('password','login')
            try:
                self.type_input(self.user_path ,username)
                log1.info('输入账号为%s'%username)
                self.type_input(self.pwd_path, password)
                log1.info('输入密码为%s'%password)
                self.click(self.login_btn_path)
                self.show_wait(5)
                log1.info('登录成功')
            except BaseException as e:
                log1.error('登录失败:%s'%e)
                self.get_img()
    
    

    子类:

    from logs.log import log1
    from framework.base_page import BasePage
    from pageobject.login_page import LoginPage
    class CameraList(LoginPage):
        def __init__(self):
            #相机列表定位元素
            self.camera_bar_path=['xpath','//div[contains(text(),"相机列表")]']
        #登录
        def login_in(self):
            try:
                self.account_login_switch()
                self.account_login()
            except Exception as e:
                log1.error(e)
    
    
        #点击相机列表导航
        def camera_bar_click(self):
            self.click(self.camera_bar_path)
    
    

    报错信息

    
    2020-10-22 19:47:12,029 - selenium - ERROR - 'CameraList' object has no attribute 'account_btn'
    2020-10-22 19:47:22,081 - selenium - ERROR - 报错信息:
    Traceback (most recent call last):
      File "E:\Code\PythonUI自动化实战\EasySense\framework\base_page.py", line 148, in find_element
        element = self.driver.find_element_by_xpath(value)
      File "D:\Python 3.5\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 394, in find_element_by_xpath
        return self.find_element(by=By.XPATH, value=xpath)
      File "D:\Python 3.5\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 978, in find_element
        'value': value})['value']
      File "D:\Python 3.5\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
        self.error_handler.check_response(response)
      File "D:\Python 3.5\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
        raise exception_class(message, screen, stacktrace)
    selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//div[contains(text(),"相机列表")]"}
      (Session info: chrome=86.0.4240.111)
    
    2020-10-22 19:47:22,400 - selenium - INFO - 截图保存成功
    
    Error
    Traceback (most recent call last):
      File "E:\Code\PythonUI自动化实战\EasySense\framework\base_page.py", line 224, in click
        element.click()
    AttributeError: 'bool' object has no attribute 'click'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "D:\Python 3.5\lib\unittest\case.py", line 58, in testPartExecutor
        yield
      File "D:\Python 3.5\lib\unittest\case.py", line 597, in run
        testMethod()
      File "E:\Code\PythonUI自动化实战\EasySense\actionoperation\camera_list_action.py", line 14, in test_cameralist_click
        self.camera.camera_bar_click()
      File "E:\Code\PythonUI自动化实战\EasySense\pageobject\camera_page.py", line 19, in camera_bar_click
        self.click(self.camera_bar_path)
      File "E:\Code\PythonUI自动化实战\EasySense\framework\base_page.py", line 227, in click
        display=self.isdisplayed(element)
      File "E:\Code\PythonUI自动化实战\EasySense\framework\base_page.py", line 104, in isdisplayed
        value=element.is_displayed()
    AttributeError: 'bool' object has no attribute 'is_displayed'
    
     
     
     
    ----------
    environment
    ----------
    None
     
       
    
    Ran 1 test in 18.053s
    
    FAILED (errors=1)
    
    Process finished with exit code 1
    
    

    修改后父类代码,主要是把定位元素放到每个方法里面,没有放到__init__方法就运行成功了

    from logs.log import log1
    from framework.base_page import BasePage
    class LoginPage(BasePage):
    
        def __init__(self):
            '''定位元素'''
    
        #点击账号密码方式登录
        def account_login_switch(self):
            # 账号登录按钮
            account_btn = ['class', 'select-text']
            self.click(account_btn,1)
    
        #输入框输入用户名
        def user_input(self,user):
            self.type_input(self.user_path,user)
    
        # 输入框输入密码
        def pwd_input(self, pwd):
            self.type_input(self.pwd_path, pwd)
    
        def account_login(self):
            '''默认的正确账号登录功能'''
            # 账号
            user_path = ['css', 'input[placeholder="输入邮箱/手机号"]']
            # 密码
            pwd_path = ['css', 'input[placeholder="输入密码"]']
            # 登录按钮
            login_btn_path = ['class', 'submit-btns']
            username=self.config_get('username','login')
            password=self.config_get('password','login')
            try:
                self.type_input(user_path ,username)
                log1.info('输入账号为%s'%username)
                self.type_input(pwd_path, password)
                log1.info('输入密码为%s'%password)
                self.click(login_btn_path)
                self.show_wait(5)
                log1.info('登录成功')
            except BaseException as e:
                log1.error('登录失败:%s'%e)
                self.get_img()
    
    
    
    展开全文
  • python继承问题

    2017-03-12 15:42:00
    python构造函数:__init__(): 如果子类定义了自己的__init__构造方法函数,当子类的实例对象被创建时,子类只会执行自己的__init__方法函数,如果子类未定义自己的构造方法函数,会沿着搜索树找到父类的构造方法...

    python构造函数:__init__():

    如果子类定义了自己的__init__构造方法函数,当子类的实例对象被创建时,子类只会执行自己的__init__方法函数,如果子类未定义自己的构造方法函数,会沿着搜索树找到父类的构造方法函数去执行父类里的构造方法函数。
    如子类定义了自己的构造方法函数,如果子类的构造方法函数内没有主动调用父类的构造方法函数,那父类的实例变量在子类不会在刚刚创建子类实例对象时出现了。

     python析构函数:
     
     
    python中:
    重载:由默认参数和传递参数名称来实现
    class B():

    def play(self):
    print "b"
    def play(self,x="d"):
    print "wokao"
    覆盖:Python真是太动态了,所有的方法默认都是虚的。子类定义父类同名函数之后,父类函数被覆盖。
     
     
    
    

    转载于:https://www.cnblogs.com/wuxiangli/p/6538085.html

    展开全文
  • 主要介绍了深入浅析python继承问题的相关资料,非常不错,感兴趣的朋友一起看看吧
  • 对于Python继承问题全解析 - 51CTO.COM 对于Python继承问题全解析 - 51CTO.COM这一点十分重要——Python不会自动调用基本类的constructor,你得亲自专门调用它。我们还观察到我们在方法调用之前加上类...

    对于Python继承问题全解析 - 51CTO.COM

    这一点十分重要——Python不会自动调用基本类的constructor,你得亲自专门调用它。我们还观察到我们在方法调用之前加上类名称前缀,
    posted on 2012-11-27 10:23 lexus 阅读(...) 评论(...) 编辑 收藏

    转载于:https://www.cnblogs.com/lexus/archive/2012/11/27/2790303.html

    展开全文
  • python继承问题求指教

    2014-01-15 16:46:34
    /usr/bin/python # Filename: inherit.py class SchoolMember: '''Represents any school member.''' def __init__(self, name, age): self.name = name self.age = age print '(Initialized ...
  • python继承

    2019-04-18 17:04:35
    Python多类继承中,子类默认继承哪个父类的构造函数__init__ 【1】python中如果子类有自己的构造函数,不会自动调用父类的构造函数,如果需要用到父类的构造函数,则需要在子类的构造函数中显式的调用。 【2】...

    Python多类继承中,子类默认继承哪个父类的构造函数__init__

    【1】python中如果子类有自己的构造函数,不会自动调用父类的构造函数,如果需要用到父类的构造函数,则需要在子类的构造函数中显式的调用。

     

    【2】如果子类没有自己的构造函数,则会直接从父类继承构造函数,这在单继承(一个子类只从一个父类派生)中没有任何理解上的问题。

             问题:如果是多继承的情况,一个子类从多个父类派生,而子类又没有自己的构造函数,则子类默认会继承哪个父类的构造函数?

     

    【3】子类从多个父类派生,而子类又没有自己的构造函数时,

    (1)按顺序继承,哪个父类在最前面且它又有自己的构造函数,就继承它的构造函数;

    (2)如果最前面第一个父类没有构造函数,则继承第2个的构造函数,第2个没有的话,再往后找,以此类推。

    https://www.cnblogs.com/Ivyli4258/p/8203980.html

    https://www.cnblogs.com/bigberg/p/7182741.html

    https://www.cnblogs.com/bigberg/p/7196866.html

    展开全文
  • Python继承初始化问题

    千次阅读 2019-07-25 14:06:00
    如果子类没有定义自己的初始化函数,父类的初始化函数会被默认调用;但是如果要实例化子类的对象,则只能传入父类的初始化函数对应的参数,否则会出错。 Child没有初始化函数 class Parent: def __init__(self,...
  • python继承问题

    2020-02-26 20:33:37
    ```python class base(): def step(self): print("this is base") def __call__(self,m): self.call_a()#B的实例调用B的方法 class A(base): def __init__(self): self.name = 'A' ...
  • Python 多重继承问题

    2018-10-07 21:38:54
    python2中类有两种:经典类,新式类 参考以下网址解释:...
  • 在file1创建一个类后,想要在file2中继承fiel1中的父类,需要在file2中引入file1中的类,使用的是from file1 import A而如果直接import file1编译就会出错,当在file3中想调用file2中的继承类时,需要直接import ...
  • Python继承特性

    2020-07-06 01:08:17
    Python支持多重继承,多重继承会出现一个问题:钻石型继承场景下的基类调用顺序和方法重载解析,多重继承可以解决接口实现机制。下面将详细介绍这种方式。 Python是一门支持多继承的动态语言,这样在继承链的解析...
  • python多重继承问题

    2020-11-11 03:54:47
    链接: https://www.cnblogs.com/miyauchi-renge/p/10923127.html
  • Python继承问题

    千次阅读 2019-06-21 14:05:49
    class A(object): def a(self): self.b() def b(self): print('A---b') class B(A): def b(self): print('B---b') def c(self): super(B, self).a() B().c() # ...
  • 1.钻石继承,可以看到执行顺序 class Plant_a(): def __init__(self): print("Enter planta") print("Leave planta") class Plant_b(): def __init__(self): print("Enter plantb") print("Leave plantb") ...
  • python继承问题

    2017-03-23 17:21:00
    2019独角兽企业重金招聘Python工程师标准>>> ...
  • python继承问题

    2019-10-08 13:24:48
    #super(son, self).speak()这一句只要在继承父类的构造函数下的方法内或者其它方法内都行,不能独立于方法 self . action = d def speak ( self ) : super ( son , self ) . speak ( ) #调用父类的一般...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,932
精华内容 772
关键字:

python继承问题

python 订阅