繁体   English   中英

selenium firefox驱动程序python

[英]selenium firefox driver python

我有在Firefox驱动程序中使用Selenium 2.32的python功能脚本。 在如下所示的html上:

<div id="reminder">
  <div>
    <ul>
      <li>
        <strong>text i need</strong>
      </li>
    </ul>
  </div>
</div>

我正在尝试使用"#reminders div ul li strong"进行css选择器搜索。 我为此得到了WebElement (例如分配给变量element),但是当我尝试获取文本(使用element.text )时,我变得空了。

同样,当我调试测试时,这是非常一致的行为,因为当我运行整个套件时,有时会成功,有时会失败,所以我无法找出问题所在,如果有人对它有想法,请告诉我。如何进行。

我也在python 2.7上运行

我只是简要介绍一下我发现的问题以及为解决问题所做的工作。 并在我观察到的行为的解释结尾处提出一些问题。 首先将伪html放在下面

<div id="reminder">
  <div>
    <ul>
      <li>
        <strong>text i need</strong>
      </li>
    </ul>
  </div>
</div>

我们将在没有任何javascript的情况下将django模板翻译到上面。 我们在上面使用

$('#reiminders').accordian({   alwaysOpen: false, active: false,collapsible: true,autoHeight:false}) 

将上面的html大致翻译成

<div id="reminder">
  <div class="a few accordian specifc classes" >
    <ul>
      <li>
        <strong>text i need</strong>
      </li>
    </ul>
  </div>
</div>

现在看起来就像在Accordian上的click bind函数映射到其上有Accordian类的内部div,而不是这样,当在我的脚本中我正在使用“ #reminder”做一个css_selector并对其调用click()时打开手风琴,因此未显示内部文本,因此我的“ #reminders div ul li strong”选择器带有文本正在提供空文本(我仍然不明白为什么它是空的,整个元素可能已经被隐藏了,但仍然文本不为空),一旦我将点击css_selector更改为使用“ #reminders div”之类的内容并对其调用click(),事情就开始起作用。 在调试时,我能够始终如一地通过测试。

现在的问题:

  • 我仍然不明白为什么在CI中作为套件的一部分运行时测试通过有时会失败,而有时却失败却总是在我的IDE上以调试模式运行时失败

  • 当我作为CI的一部分运行时,我有一些测试(7-10)总是会失败,而当我在本地分别谣言它们通过时,我也以它们在CI上运行的相同方式运行测试,而得到的测试次数却更少失败但仍然有些(1-2),尽管当我单独运行那些失败的测试时它们会通过。测试依赖项可能存在各种问题,可能会导致这种情况,但在本地相同的测试中会通过。 一旦我解决了这个问题,我将结果出来。

感谢您的回答。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM