首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >硒和数据人打架?

硒和数据人打架?
EN

Stack Overflow用户
提问于 2014-09-22 11:44:32
回答 1查看 281关注 0票数 0

我试图在python中创建一个selenium测试,并且得到了不一致的结果。

我测试的片段是:

代码语言:javascript
复制
    el = self.waitButton('edit') # wait for load of show page to complete.
    # check some fields
    els = browser.find_elements_by_xpath("//span[@class='info']")
    assert els[0].text == '2'
    assert els[1].text == "George's"
    assert els[2].text == 'Organisation'
    assert els[5].text == '25/Mar/15'
    el.click() # request for edit screen
    el = self.waitButton('save') # returns save button when edit screen loaded.
    x = browser.find_element_by_name('Status')
    # x.click()  # uncomment this line and the click two lines down is ignored
    el = browser.find_element_by_xpath("//a[@class='save']") # re-find save button
    el.click()  # this field is selected, but the click action does not happen
    el = self.waitButton('edit')  # wait for edit button to appear
    els = browser.find_elements_by_xpath("//span[@class='info']")
    assert els[5].text == '25/Mar/15'

首先要注意的是,在其他三个测试中,非常相似的代码可以100%工作,在不包含datepicker field.If的页面上,我会将datapicker字段的类更改为datepickerXX --这个屏幕的工作方式与预期的一样。

但是,在数据报警器活动的情况下,如果我单击任何数据字段(不一定是datepicker字段),那么我以后就不能单击“保存”按钮?

因此,我的问题是,如果无法保存,如何可靠地测试包含使用中的datepicker字段的编辑屏幕?有谁知道(或喜欢猜测)可能会发生什么,以及为什么会失败?

谢谢

伊恩

EN

回答 1

Stack Overflow用户

发布于 2014-09-23 11:03:21

我的代码有两处问题。

( 1)在其他地方,我犯了一个计时错误--我在等待上一个屏幕上真实的东西,因此等待有时是,有时不是等待新屏幕。

2)当您单击“选择”字段或选项卡时,浏览器(FF)将显示一个选择列表。Selenium和浏览器都知道这一点--他们只是不同意选择列表何时再次被隐藏。如果单击另一个字段,浏览器将隐藏它。Selenium要求点击一个选择,如果不是,它就会陷入混乱。

一旦我对这两个问题进行了排序,所有的测试都会按要求工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25973327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档