ろくにメモ

なんでもメモ

『テスト駆動開発』を写経するための環境構築

はじめに

このエントリは『テスト駆動開発』を写経しようと思ったものの、環境構築から始めなければならない人向けに書きました。

テスト駆動開発

テスト駆動開発

まず、私の Java に対する習熟度についてですが、Java言語プログラミングレッスン 第3版(上) Java言語を始めようの上下を読破した程度で、Java 周りの開発環境は全く分かっておらず、Eclipse を軽く触ったことがある程度です。

また、テスト駆動開発や自動テストについては、興味はあったものの実際に手を動かして使ったことはないレベルなので、『テスト駆動開発』を写経して実際に体感してみようと思い購入しました。

ですが、いざ読み始めてみると「EclipseJUnit の使い方が分かる」という前提で進み始めたので、まずは環境構築を始めました(念のため触れておきますが、そのことに対して非難する気持ちは全くありません)。

ちなみにPC環境は Windows 10 Pro 64bit です。

間違っている点が多々あるかと思いますので、ご指摘いただければ助かります。

環境構築

JDK のインストール

Java ということで JDK が必要かと思いましたが、Eclipse に内蔵?されているようなので、この手順は不要かもしれません。

なお、私はすでにインストール済だったのでスキップしました。 f:id:rokuni62:20171020160453p:plain

Eclipse のインストール

こちらのサイトを参考にしました。 techfun.cc

まずは Eclipse をダウンロード

Eclipse 日本語化 | MergeDoc Project

最新である Oxygen を選択(本書の中でも Oxygen が使用されているようでした)。 f:id:rokuni62:20171020160821p:plain

Windows 64 bit」「Full Edition」「Java」をダウンロードします(1.4GB)。 f:id:rokuni62:20171020161212p:plain

ダウンロードファイルをCドライブ直下に展開します。

※パスが長すぎるエラーが出たので、展開の際にフォルダ名を短く指定しました f:id:rokuni62:20171020163732p:plain

eclipse.exe より起動。 f:id:rokuni62:20171020163840p:plain

workspace はそのまま。 f:id:rokuni62:20171020163944p:plain

Eclipse が起動できたことを確認。 f:id:rokuni62:20171020164030p:plain

jUnit のインストール

続いて JUnit のインストールですが、著者 和田卓人さんのブログによると JUnit5 を使用されているようなので、JUnit 5 を用意します。

第I部の JUnit は JUnit3 から先日リリースされたばかりの JUnit 5 へ

t-wada.hatenablog.jp

しかし調べてみると Eclipse には JUnit が内蔵されているようで、プラグインを確認してみました。

「ヘルプ > Eclipse について > インストール詳細 > プラグイン」で "junit" を検索。どうやらあるみたいですね。よって JUnit5 のインストール作業は不要でした。

※確認する箇所が正しいかどうか自信がありません。 f:id:rokuni62:20171020165834p:plain

コードを書いて自動テストを体験する

それでは JUnit が動くかどうかを確認するため、本書の最初の方を写経していきます。

まずは新規 Java プロジェクトを作成します。

「ファイル > 新規 > Javaプロジェクト」 f:id:rokuni62:20171020173312p:plain

作成できました。 f:id:rokuni62:20171020173354p:plain

続いて src フォルダ以下に money パッケージを作成します。

「ファイル > 新規 > パッケージ」 f:id:rokuni62:20171020173508p:plain

作成した money パッケージに対して Junit テスト・ケースを作成します。

「ファイル > 新規 > その他」より "junit" で検索して選択します。

JUnit のパスに関するメッセージが出ましたが取り忘れました f:id:rokuni62:20171020173637p:plain

※撮り直したので「型はすでに存在します。」エラーが出ています f:id:rokuni62:20171020173651p:plain

作成されたテスト用クラスの中身が本書と一致しました。 f:id:rokuni62:20171020173818p:plain

ここから写経開始です。まずはコンパイルエラーを起こします。 f:id:rokuni62:20171020173910p:plain

money パッケージ内に Dollar クラスを作成します。

「ファイル > 新規 > クラス」 f:id:rokuni62:20171020174029p:plain

Dollar クラス内をコンパイルエラーを回避できるレベルまでコーディングします。 f:id:rokuni62:20171020174121p:plain

MoneyTest.java を選択した状態で JUnit テストを実行。

「実行 > 実行 > JUnit テスト」 f:id:rokuni62:20171020174217p:plain

レッドバーが出ました。 f:id:rokuni62:20171020174300p:plain

Dollar クラスを amout = 10 とします。 f:id:rokuni62:20171020174330p:plain

同じ手順で JUnit テストを実行するとグリーンバーが出ました。 f:id:rokuni62:20171020174417p:plain

レッドバー ⇒ 修正 ⇒ グリーンバーのサイクルを試せたので、環境構築は以上で終了です。

さいごに

EclipseJUnit を使う方法についてネットを検索したところ、ゼロから環境構築を説明している記事を見つけられなかったので、本エントリが同じような状況の人に役立てば幸いです。

また、自動テスト未経験者が写経で自動テストを体感できる機会は貴重だと思うので、本書の読破後には感想も書きたいと思います。