web自动化切换窗口时报错“list“ object is not callable

本文介绍了在使用Python的Selenium进行Web自动化测试时遇到的'list' object is not callable错误。该错误通常是由于变量名与内置函数名冲突导致。解决方案是仔细检查代码中是否存在变量名与内置函数或方法名重复的情况,并进行相应修改。
摘要由CSDN通过智能技术生成
# 重新封装switch_to.window

def is_open_new_window(self,current_handles) # 形参名和new_window_is_opened的形参重复
    
    """
    检测是否有新窗口打开,如果有就切换到新窗口
    """

    if EC.new_window_is_opened(all_handles): 
        self.driver.switch_to.window(self.driver.window_handles[-1])

# 编写page对象
def to_new_page(self):

    """ 点击按钮,跳转到新的页面 """
    WebDriverWait(self.driver).until(EC.visiblity_of_element_located((By.ID,index.list_fc))

    window_handles = self.driver.window_handles  
    # window_handles 和window_handles()重复

    self.click(index.list_fc)
    self.is_open_new_window(handles_index)   # 调用重新封装的方法
    

以上为报错代码,凭借印象重写的,不能复现,仅作参考.

解决的方法就是,检查变量名,方法名是否与变量,方法,形参名重复

修改后的代码

# 重新封装switch_to.window

def is_open_new_window(self,all_handles)
    """
    检测是否有新窗口打开,如果有就切换到新窗口
    """

    if EC.new_window_is_opened(all_handles): # 实参命名为all_handles
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值