我有两个文本字段,日期和时间,它们有一个类“日期时间字段”和一个隐藏字段日期时间。每当更改日期或时间时,我都会尝试使用 javascript 将两者结合起来,并将其存储在 datetime 隐藏字段中。这是javascript(从coffeescript转换而来):
$('.date-time-field').change(function() {
var date, time;
date = $('#date').val();
time = $('#time').val();
return $('#start_time').val(date + " " + time);
});
我的黄瓜测试有 @javascript 标记,因此它将在 Firefox 窗口中运行。只要我将焦点放在测试打开的 Firefox 窗口上,它就会通过,但是如果我将焦点移到另一个我打开的窗口,它会失败,因为更改事件不会触发。我担心如果用户做了一些奇怪的事情,这会在生产中重现。
步骤定义是填写表格:
When /^I create a valid event$/ do
fill_in :name, :with => "Blackbeard's modest event for modest folk"
select Tier.first.number.to_s, :from => 'event_tier_id'
select Venue.first.name, :from => 'event_venue_id'
fill_in 'date', :with => "05/03/2012"
fill_in 'time', :with => " 08:45"
click_button 'Save'
end
我应该使用另一个像模糊这样的事件,也许除了更改之外,还是它对生产来说不是问题,我应该在我的测试中调用 wait_for ?