如何在 Ruby 中使用动态数量的 yield 语句
How to use a dynamic number of yield statements in Ruby
def within_page_frame
application_tab = window_opened_by { click_link('Application Info') }
within_window application_tab do
within_frame find_by_id('ApplicationInfo') do
yield
end
end
end
it 'should view the web page', :smoke do
visit_home_page p
application_tab = window_opened_by { click_link('Application Info') }
within_page_frame {expect(find_by_id('home page').to be}
end
这是当前可用的代码。我正在使用方法 "within_page_frame" 来避免在我的测试套件中的其他规范中重复代码。
我想做的是能够传入 多个 expect 语句 而不必在 within_page_frame 方法中指定 yield 语句的确切数量。有没有办法在我的方法中有一个 动态数量的 yield 语句 以便我可以传入任意数量的 expect 语句?
像这样?
within_page_frame do
expect(find_by_id('home page')).to be
expect(find_by_id('something else')).to be
end
def within_page_frame
application_tab = window_opened_by { click_link('Application Info') }
within_window application_tab do
within_frame find_by_id('ApplicationInfo') do
yield
end
end
end
it 'should view the web page', :smoke do
visit_home_page p
application_tab = window_opened_by { click_link('Application Info') }
within_page_frame {expect(find_by_id('home page').to be}
end
这是当前可用的代码。我正在使用方法 "within_page_frame" 来避免在我的测试套件中的其他规范中重复代码。
我想做的是能够传入 多个 expect 语句 而不必在 within_page_frame 方法中指定 yield 语句的确切数量。有没有办法在我的方法中有一个 动态数量的 yield 语句 以便我可以传入任意数量的 expect 语句?
像这样?
within_page_frame do
expect(find_by_id('home page')).to be
expect(find_by_id('something else')).to be
end