def find_a_specific_security_channel_inside_a_table
expect(page).to have_css('#datatableGeneric')
loop do
td = page.all('td', text: 'NAME')
Timeout.timeout(5) do
if td.empty?
click_link ('Next')
sleep 1
else
find('#datatableGeneric', :text => 'NAME').click
break
end
end
end
return true
end
应循环遍历表的内容,直到找到('NAME'
)字符串,最后跳出循环。但它并没有突破循环。
答案 0 :(得分:1)
您只是从超时块中断而不是从主循环中断。
loop do
td = page.all('td', text: 'NAME')
break_loop = false
Timeout.timeout(5) do
if td.empty?
click_link ('Next')
sleep 1
else
find('#datatableGeneric', :text => 'NAME').click
break_loop = true
end
end
break if break_loop
end