StackEditで投稿テスト
ChromeアプリのStackEditなら、Markdownで描いてbloggerに投稿できるらしいので、 試してみます。
StackEditは以下を参照してください。
Written with StackEdit.
JAVA_HOME ・・・JDKがインストールされているフォルダ。以上で導入は完了です。
ANT_HOME ・・・Antがインストールされているフォルダ
PATH ・・・Antの実行ファイルがあるフォルダを追加する。ANT_HOME以下のbinに実行ファイルがある
ant -version・1分で分かった気になるAnt
C:\Users\siguremon>antまた、「test」ターゲットでは6行目で依存関係に「compile」を指定しています。
Buildfile: C:\Users\siguremon\build.xml
compile: [echo] compileだけど表示するだけで何もしない
BUILD SUCCESSFULTotal time: 0 seconds
C:\Users\siguremon>ant test・JUnitを使うためのbuild.xmlの記述
Buildfile: C:\Users\siguremon\build.xml
compile: [echo] compileだけど表示するだけで何もしない
test: [echo] testだけど表示するだけで何もしない
BUILD SUCCESSFULTotal time: 0 seconds
単一のテストクラスを指定する場合には、以下のように<test>プロパティを使います。 この場合、my.test.TestCaseがテストクラスです。
<junit printsummary="yes" fork="yes" haltonfailure="yes"> <formatter type="plain" /> <test name="my.test.TestCase" /> </junit>
その他、<formatter>プロパティでjunitの出力形式を指定しています。
<junit printsummary="yes" haltonfailure="yes"> <classpath> <pathelement location="${build.tests}" /> <pathelement path="${java.class.path}" /> </classpath> <formatter type="plain" /> <batchtest fork="yes" todir="${reports.tests}"> <fileset dir="${src.tests}"> <include name="**/*Test*.java" /> <exclude name="**/AllTests.java" /> </fileset> </batchtest> </junit>
<junitreport todir="./reports"> <fileset dir="./reports"> <include name="TEST-*.xml"/> </fileset> <report format="frames" todir="./report/html"/> </junitreport>
・サンプル
以下にサンプルを置きました。 複数のテストクラスを実行し、junitreportで整形した出力結果を作成しています。
https://github.com/siguremon/AntExample/tree/simpleant
・参考
Ant | TECHSCORE(テックスコア)
JUnit Task
JUnitReportタスク
\junit3.8.1> java -cp junit.jar;. junit.textui.TestRunner junit.samples.SimpleTest
.E.F.F
Time: 0.002
There was 1 error:
1) testDivideByZero(junit.samples.SimpleTest)java.lang.ArithmeticException: / by zero
at junit.samples.SimpleTest.testDivideByZero(SimpleTest.java:49)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
There were 2 failures:
1) testEquals(junit.samples.SimpleTest)junit.framework.AssertionFailedError: Size expected:<12> but was:<13>
at junit.samples.SimpleTest.testEquals(SimpleTest.java:56)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
2) testAdd(junit.samples.SimpleTest)junit.framework.AssertionFailedError
at junit.samples.SimpleTest.testAdd(SimpleTest.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
FAILURES!!!
Tests run: 3, Failures: 2, Errors: 1
\junit3.8.1> java -cp junit.jar;. junit.swingui.TestRunner junit.samples.SimpleTest
\junit3.8.1> java -cp junit.jar;. junit.awtgui.TestRunner junit.samples.SimpleTest
\junit4.10> java -cp junit-4.10.jar;. org.junit.runner.JUnitCore junit.samples.SimpleTest
JUnit version 4.10
.E.E.E
Time: 0.005
There were 3 failures:
1) testDivideByZero(junit.samples.SimpleTest)
java.lang.ArithmeticException: / by zero
at junit.samples.SimpleTest.testDivideByZero(SimpleTest.java:54)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
at org.junit.runner.JUnitCore.run(JUnitCore.java:136)
at org.junit.runner.JUnitCore.run(JUnitCore.java:117)
at org.junit.runner.JUnitCore.runMain(JUnitCore.java:98)
at org.junit.runner.JUnitCore.runMainAndExit(JUnitCore.java:53)
at org.junit.runner.JUnitCore.main(JUnitCore.java:45)
2) testAdd(junit.samples.SimpleTest)
junit.framework.AssertionFailedError
at junit.framework.Assert.fail(Assert.java:48)
at junit.framework.Assert.assertTrue(Assert.java:20)
at junit.framework.Assert.assertTrue(Assert.java:27)
at junit.samples.SimpleTest.testAdd(SimpleTest.java:48)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
at org.junit.runner.JUnitCore.run(JUnitCore.java:136)
at org.junit.runner.JUnitCore.run(JUnitCore.java:117)
at org.junit.runner.JUnitCore.runMain(JUnitCore.java:98)
at org.junit.runner.JUnitCore.runMainAndExit(JUnitCore.java:53)
at org.junit.runner.JUnitCore.main(JUnitCore.java:45)
3) testEquals(junit.samples.SimpleTest)
junit.framework.AssertionFailedError: Size expected:<12> but was:<13>
at junit.framework.Assert.fail(Assert.java:50)
at junit.framework.Assert.failNotEquals(Assert.java:287)
at junit.framework.Assert.assertEquals(Assert.java:67)
at junit.framework.Assert.assertEquals(Assert.java:199)
at junit.samples.SimpleTest.testEquals(SimpleTest.java:62)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at junit.framework.TestCase.runTest(TestCase.java:168)
at junit.framework.TestCase.runBare(TestCase.java:134)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:24)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
at org.junit.runner.JUnitCore.run(JUnitCore.java:136)
at org.junit.runner.JUnitCore.run(JUnitCore.java:117)
at org.junit.runner.JUnitCore.runMain(JUnitCore.java:98)
at org.junit.runner.JUnitCore.runMainAndExit(JUnitCore.java:53)
at org.junit.runner.JUnitCore.main(JUnitCore.java:45)
FAILURES!!!
Tests run: 3, Failures: 3
\junit4.10> java -cp junit-4.10.jar;. org.junit.runner.JUnitCore junit.samples.SimpleTest
JUnitライブラリの追加(1) |
JUnitライブラリの追加(2) バージョンの選択 |
JUnitテスト・ケース(テストクラス)の追加 |
JUnitテスト・ケースでの対象メソッド選択 |
テスト・ケースの実行(失敗) |