我是水豚的新手,我在文字领域遇到了一些问题,水豚无法找到这个领域。
我需要创建自动测试,其中一个必须填写一直变化的字段(id和名称更改,它们是这样的:id =“patternDailyStart_146d7547140”,这个数字总是不同的)。
<div class="timepicker">
<input value="" id="patternDailyStart_146d7547140"
name="patternDailyStart_146d7547140"
class="timepicker-input patternDailyStart hasDatepicker"
type="text">
<img class="ui-datepicker-trigger"
src="/mpromoter/assets/4716a6a0a357181/app/components/timefield/clock.png"
alt="..."
title="...">
</div>
这是时间选择领域。而问题是水豚无法找到这个领域..但是我试图找到它来填充。
当我尝试找到这个xpath,然后找到它,但是当我想用时间填充它($ starttime = 17:00)然后它说没有找到元素或者它不存在。
page.has_xpath?('//tbody/tr/div/input[contains(., "patternDailyStart")]')
page.has_xpath?(:xpath, "//*[@class='timepicker-input patternDailyStart hasDatepicker']")
And(/^fill up the fields$/) do
field = find("//*[@class='timepicker-input patternDailyStart hasDatepicker'")
field.set $starttime
end
fill_in('timepicker-input.patternDailyStart.hasDatepicker', :with => $starttime)
within(:xpath,'//tbody/tr/div/input[contains(., "patternDailyStart")]'){ fill_in("#patternDailyStart", with: $starttime)}
还有很多其他的方式,但仍然没有填补这些领域..
所以我要求一些帮助。我需要做什么,有什么建议吗?
谢谢...... :)
答案 0 :(得分:0)
我认为最简单的方法是通过其“模式日常启动”来定位输入。类:
find(:css, '.patternDailyStart').set($starttime)