解決策を見つけることができない非常に基本的な問題があります。
そのため、testunit で Watir Webdriver を使用して Web アプリケーションをテストしています。複数のテストデータセットに対して実行したいテストメソッドがあります。
確かに古いループ トリックを使用して実行できますが、それは 1 回のテスト実行として表示されるだけで、これは私が望んでいるものではありません。
testng で @dataprovider があることを知っています。testunit で同様のものを探しています。
どんな助けでも!!
これが私がこれまでに持っているものです:
[1,2].each do |p|
define_method :"test_that_#{p}_is_logged_in" do
# code to log in
end
end
これはうまくいきます。しかし、私の問題は、ループできるデータをどこでどのように作成するかです。Excel からデータを読み取っていると、[{:name =>abc,:password = > test},{:name =>def,:password => test}]
現在のコードのステータス:
class RubyTest < Test::Unit::TestCase
def setup
@excel_array = util.get_excel_map //This gives me an array of hash from excel
end
@excel_array.each do |p|
define_method :"test_that_#{p}_is_logged_in" do
//Code to check login
end
end
ループを実行するのに苦労しています。クラス宣言行に「nil:NilClass (NoMethodError) の未定義メソッド `each'」というエラーが表示されます