zoukankan      html  css  js  c++  java
  • 【Selenium】【BugList8】126邮箱定位不到“退出”按钮:Message: TypeError: can't access dead object

    【流程描述】

    登录126邮箱,退出

    【代码】

    #coding=utf-8
    from selenium import webdriver
    
    driver = webdriver.Firefox()
    #driver = webdriver.Ie()
    driver.implicitly_wait(10)
    driver.get("https://mail.126.com/")
    
    #切换到frame
    driver.switch_to.frame("x-URS-iframe")
    #输入密码、用户名,登录
    
    driver.find_element_by_name("password").clear()
    driver.find_element_by_name("password").send_keys("xxx")
    driver.find_element_by_name("email").clear()
    driver.find_element_by_name("email").send_keys("yyy")
    
    driver.find_element_by_id("dologin").click()
    
    #退出
    driver.find_element_by_xpath("/html/body/header/div[1]/ul[1]/li[16]/a").click()
    driver.quit()
    

    【报错】

    ====================== RESTART: F:/PySouce/mail1261.py ======================
    Traceback (most recent call last):
    File "F:/PySouce/mail1261.py", line 26, in <module>
    driver.find_element_by_xpath("/html/body/header/div[1]/ul[1]/li[16]/a").click()
    File "D:Program Filespython36libsite-packagesseleniumwebdriver emotewebdriver.py", line 385, in find_element_by_xpath
    return self.find_element(by=By.XPATH, value=xpath)
    File "D:Program Filespython36libsite-packagesseleniumwebdriver emotewebdriver.py", line 955, in find_element
    'value': value})['value']
    File "D:Program Filespython36libsite-packagesseleniumwebdriver emotewebdriver.py", line 312, in execute
    self.error_handler.check_response(response)
    File "D:Program Filespython36libsite-packagesseleniumwebdriver emoteerrorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
    selenium.common.exceptions.WebDriverException: Message: TypeError: can't access dead object

    【解决方法】

    #coding=utf-8
    from selenium import webdriver
    
    driver = webdriver.Firefox()
    #driver = webdriver.Ie()
    driver.implicitly_wait(10)
    driver.get("https://mail.126.com/")
    
    #切换到frame
    driver.switch_to.frame("x-URS-iframe")
    #输入密码、用户名,登录
    
    driver.find_element_by_name("password").clear()
    driver.find_element_by_name("password").send_keys("xxx")
    driver.find_element_by_name("email").clear()
    driver.find_element_by_name("email").send_keys("yyy")
    
    driver.find_element_by_id("dologin").click()
    
    #切换到主文档
    driver.switch_to.default_content()
    driver.implicitly_wait(10)
    #退出
    driver.find_element_by_xpath("/html/body/header/div[1]/ul[1]/li[16]/a").click()
    driver.quit()

    【Ending】

    微信公众号“粒粒的测试笔记

      

  • 相关阅读:
    PHP双向队列
    [转]数据库查询的3个优化方法
    MySQL性能测试工具 mysqlslap
    PHP各种魔术方法测试
    VBA中级班课时3小结
    VBA中级班课时1小结
    执行cmd并返回程序结果
    Update Dataset data back to Database
    终于会用c#中的delegate(委托)和event(事件)了
    c#: Enqueued event for Queue<T>
  • 原文地址:https://www.cnblogs.com/yllil/p/9579617.html
Copyright © 2011-2022 走看看