このチュートリアルに従ってJUnitを初めて使用しますが、テストケースに関するいくつかの提案と理解が必要です
フォルダーにいくつかの xml (それぞれ 3MB-6MB) があり、xml ごとに、タグに値が含まれているかどうかをテストし、その値を特定の結果と一致させる必要があります。
では、テストごとに、ループ内ですべての @Test 関数を実行するにはどうすればよいでしょうか? 通常、ループ内で @Test 関数 (自動的に呼び出されるため) を呼び出す必要がありますか?
このコンテキストでJUnitを理解するのを手伝ってください。ありがとう
Junit テストケース
public class SystemsCheck {
def fileList
@Before
public void setUp() throws Exception {
def dir = new File("E:\\temp\\junit\\fast")
fileList = []
def newFile=""
dir.eachFileRecurse (FileType.FILES) { file ->
fileList << file
}
fileList.each {
//how should i test all @Test with it.text
println it.text
}
}
@Test
void testOsname(){
NixSystems ns=new NixSystems()
/*checking if tag is not empty*/
//assertEquals("Result","",ns.verifyOsname())
}
@Test
public void testMultiply(){
NixSystems ns=new NixSystems()
assertEquals("Result", 50, ns.multiply(10, 5))
}
}
class NixSystems {
public def verifyOsname(xml){
return processXml( xml, '//client/system/osname' )
}
public def multiply(int x, int y) {
return x * y;
}
def processXml( String xml, String xpathQuery ) {
def xpath = XPathFactory.newInstance().newXPath()
def builder = DocumentBuilderFactory.newInstance().newDocumentBuilder()
def inputStream = new ByteArrayInputStream( xml.bytes )
def records = builder.parse(inputStream).documentElement
xpath.evaluate( xpathQuery, records )
}
}