删除数据并检索随机日期 |瓦蒂尔
Removing data and retrieving a random date | Watir
给定以下代码。
<ul class="search-fields clearfix">
<li class="charter-type-search clearfix">
<li class="destination-search where clearfix">
<li class="departure-search when clearfix">
<div class="icon-heading">
<div class="icon-search holiday-search-fields form-type-select form-item-date">
<select id="edit-date" class="form-select ajax-processed" name="date">
<option selected="selected" value="">Anytime</option>
<option value="2015-12">December 2015 (25)</option>
<option value="2016-01">January 2016 (26)</option>
<option value="2016-02">February 2016 (29)</option>
<option value="2016-03">March 2016 (30)</option>
<option value="2016-04">April 2016 (38)</option>
<option value="2016-05">May 2016 (37)</option>
<option value="2016-06">June 2016 (40)</option>
<option value="2016-07">July 2016 (39)</option>
<option value="2016-08">August 2016 (37)</option>
<option value="2016-09">September 2016 (33)</option>
<option value="2016-10">October 2016 (33)</option>
<option value="2016-11">November 2016 (28)</option>
<option value="2016-12">December 2016 (25)</option>
<option value="2017-01">January 2017 (21)</option>
<option value="2017-02">February 2017 (21)</option>
<option value="2017-03">March 2017 (21)</option>
<option value="2017-04">April 2017 (27)</option>
<option value="2017-05">May 2017 (27)</option>
<option value="2017-06">June 2017 (29)</option>
</select>
我正在使用以下方法检索随机日期
all_options = b.select_list(id: "edit-date").options
b.select_list(id: "edit-date").option(index: rand(all_options.size)).select
如果我想从中删除前 5 个元素(12 月 15 日至 4 月 16 日),然后随机 select 其余的我该怎么做?我正在使用 .drop(5)
但它仍然 select 是其中一些日期。
作为参考,从列表中获取 select 的典型方法是直接使用字符串:
b.select(id: 'edit-date').select('May 2017 (29)')
或正则表达式
b.select(id: 'edit-date').select(/May 2017/)
select 方法所做的只是定位、验证和单击元素。当您获得选项列表时,前两个已经完成,因此您需要做的就是单击:
b.select(id: 'edit-date').options.drop(5).sample.click
给定以下代码。
<ul class="search-fields clearfix">
<li class="charter-type-search clearfix">
<li class="destination-search where clearfix">
<li class="departure-search when clearfix">
<div class="icon-heading">
<div class="icon-search holiday-search-fields form-type-select form-item-date">
<select id="edit-date" class="form-select ajax-processed" name="date">
<option selected="selected" value="">Anytime</option>
<option value="2015-12">December 2015 (25)</option>
<option value="2016-01">January 2016 (26)</option>
<option value="2016-02">February 2016 (29)</option>
<option value="2016-03">March 2016 (30)</option>
<option value="2016-04">April 2016 (38)</option>
<option value="2016-05">May 2016 (37)</option>
<option value="2016-06">June 2016 (40)</option>
<option value="2016-07">July 2016 (39)</option>
<option value="2016-08">August 2016 (37)</option>
<option value="2016-09">September 2016 (33)</option>
<option value="2016-10">October 2016 (33)</option>
<option value="2016-11">November 2016 (28)</option>
<option value="2016-12">December 2016 (25)</option>
<option value="2017-01">January 2017 (21)</option>
<option value="2017-02">February 2017 (21)</option>
<option value="2017-03">March 2017 (21)</option>
<option value="2017-04">April 2017 (27)</option>
<option value="2017-05">May 2017 (27)</option>
<option value="2017-06">June 2017 (29)</option>
</select>
我正在使用以下方法检索随机日期
all_options = b.select_list(id: "edit-date").options
b.select_list(id: "edit-date").option(index: rand(all_options.size)).select
如果我想从中删除前 5 个元素(12 月 15 日至 4 月 16 日),然后随机 select 其余的我该怎么做?我正在使用 .drop(5)
但它仍然 select 是其中一些日期。
作为参考,从列表中获取 select 的典型方法是直接使用字符串:
b.select(id: 'edit-date').select('May 2017 (29)')
或正则表达式
b.select(id: 'edit-date').select(/May 2017/)
select 方法所做的只是定位、验证和单击元素。当您获得选项列表时,前两个已经完成,因此您需要做的就是单击:
b.select(id: 'edit-date').options.drop(5).sample.click