2017-11-09 4 views
0

私は、クラス内に書かれていないGroovyスクリプト用のコードを記述しなければならない状況があります。そのちょっとしたグルーヴィーなスクリプト。何らかの理由で私は実際のコードを表示することはできませんが、これは単純に次のようになります。クラスやメソッドを持たないGroovyスクリプトに対してjunitテストを書くことはできますか?はいの場合はどうですか?

def var = 10 
return var 
+1

https://kousenit.org/2011/02/24/testing-groovy-scripts/ –

答えて

0

あなたが上記のケースで特別にテストを書く必要はありません。

assertを同じものとして使用します。

def var = 10 
var++ 
assert 11 == var, 'Value mismatch for var' 
0

一つのスタイルは、(他の場所で述べたように)assert機能を使用して、インラインマイクロテストを書くことです:

def reverseString = { s -> 
    s?.reverse() 
} 

// test_reverseString 
assert 'cba' == reverseString('abc') 
assert '' == reverseString('') 
assert null == reverseString(null) 

def sumList = { list -> 
    (list == null) ? 0 : 
     (list.isEmpty()) ? 0 : 
      list.sum() 
} 

// test_sumList 
assert 6 == sumList([1,2,3]) 
assert 0 == sumList([]) 
assert 0 == sumList(null) 

// ---- main 

println reverseString('esrever') 
println sumList([1,2,3,4]) 

をそれだけでテストが実行されるように、このコードを変更することは比較的容易である(たとえば、コマンドライン引数に基づいて)。

1

クラスのオブジェクトを作成し、run()メソッドを呼び出すことができます。これは、クラスをインスタンス化し、その中でメソッドを実行します。

関連する問題