51Testing软件测试论坛

标题: selenium自动化测试遇到的问题 [打印本页]

作者: 测试积点老人    时间: 2021-3-15 11:39
标题: selenium自动化测试遇到的问题
错误内容如下;
  1. selenium.common.exceptions.StaleElementReferenceException:
  2. Message:
  3. stale element reference: element is not attached to the page document
复制代码



作者: qqq911    时间: 2021-3-16 10:43
定位出错了

作者: xxxmx    时间: 2021-3-16 11:16
标题: RE: selenium自动化测试遇到的问题
定位的元素发生变化,定位错误
作者: 郭小贱    时间: 2021-3-16 13:07
当前页面没有加载定位到元素,可能元素发生变化了吧?
作者: jingzizx    时间: 2021-3-16 17:52
没有定位到啊
作者: 卡达鸭    时间: 2021-3-18 16:23
没有定位到元素

可以尝试进行一个元素封装:

  1.    def get_element(self, selector):
  2.         """定位元素"""
  3.         by = selector[0]
  4.         value = selector[1]
  5.         bys = ['id', 'name', 'class', 'tag', 'link', 'plink', 'css', 'xpath']
  6.         element = None
  7.         if by in bys:
  8.             try:
  9.                 if by == 'id':
  10.                     element = self.driver.find_element_by_id(value)
  11.                 elif by == 'name':
  12.                     element = self.driver.find_element_by_name(value)
  13.                 elif by == 'class':
  14.                     element = self.driver.find_element_by_class_name(value)
  15.                 elif by == 'tag':
  16.                     element = self.driver.find_element_by_tag_name(value)
  17.                 elif by == 'link':
  18.                     element = self.driver.find_element_by_link_text(value)
  19.                 elif by == 'plink':
  20.                     element = self.driver.find_element_by_partial_link_text(value)
  21.                 elif by == 'css':
  22.                     element = self.driver.find_element_by_css_selector(value)
  23.                 elif by == 'xpath':
  24.                     element = self.driver.find_element_by_xpath(value)
  25.                 log1.info('元素定位成功。定位方式:%s,使用的值:%s' % (by, value))
  26.                 return element
  27.             except NoSuchElementException:
  28.                 log1.error('没有定位到元素,定位方式:%s,使用的值:%s' % (by, value), exc_info=1)
  29.         else:
  30.             log1.error('元素定位方式错误,请使用id,name,class,tag,link,plink,css,xpath为定位方式参数')
复制代码







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2