タグ

テストとJavaに関するmonjudohのブックマーク (16)

  • JUnit のセカイ #JJUG - やさしいデスマーチ

    このエントリーは、@cero-tさんのエントリーの次で、Java Advent Calendar 2011の6番目のエントリーです。自分自身の今年のメインテーマがTDD(テスト駆動開発)と言う事もあり、関連エントリーとしてJUnitについて書きたいかと思います。今更JUnit?と思われた方も普段からJUnitを使っていあなたも気軽にお読みください。尚、色々な話題を駆け足で紹介するので、どれも簡単な紹介程度になってしまいますが、ご了承願います。 JUnit4 スタイル JUnitがアノテーションに対応し結構な月日が流れましたが、古いコーディング規約のままでテストコードを書いていませんか?JUnit4では、アノテーションとアサーションを使ったテストコードを書くことが基スタイルです。かつては、TestCaseのサブクラスを作り、testではじまるメソッドを定義していましたが、今は Testアノ

    JUnit のセカイ #JJUG - やさしいデスマーチ
  • JMockitは理想的なモックフレームワーク - かとじゅんの技術日誌

    テストを書いているとモックオブジェクトを使う機会が多いと思います。そのモックオブジェクトは自前で作るよりは、JMockやMockito*1などのフレームワークを利用した方が楽でしょう。 今回は機能的に、ほぼ最強と思われるJMockitを紹介します。 これが、他のモックフレームワークとの機能比較です。 MockingToolkitComparisonMatrix - jmockit - A feature matrix comparing several mocking toolkits. - Project Hosting on Google Code 機能が多ければ使いやすいか。そんなことはないと思います。しかし、これは使いやすいかもと周りの人からお勧めがあったので、実際に使ってどんなところが使えるのか検証してみたので、書いてみます。あと、最後にScalaで使えるか試してみました。 あ、

    JMockitは理想的なモックフレームワーク - かとじゅんの技術日誌
    monjudoh
    monjudoh 2011/02/08
    使っていたのは去年のことだがパーシャルモックしか使っていなかった…
  • PowerMockでprivateもstaticもコンストラクタも単体テストする

    Javaでの単体テストといえばJUnitだが、テストを実行するには色々と壁がある。 実行したいメソッドが内部で呼び出すメソッドが環境依存で、 テストのために環境を準備しないと実行できない事がある場合などだ。 そこで、モックオブジェクトを作成し、関係ないメソッドについては 実行した事にして先に進む事が出来るようにする方法がよく取られる。 JUnit用に、モックを簡単に作れるようなライブラリも幾つかある。 だが、staticなメソッドや、privateなメソッド、コンストラクタなど、 モックを作るのも難しいようなメソッドもあり、どうしても実行できないようなメソッドも存在する。 そこで、最終兵器「PowerMock」の出番だ。 PowerMockは、上述したような、Javaの制限で実行出来なさそうなメソッドですら、 モックとして簡単に実装出来る。これを使えば、ほぼどんなテストでも実行可能と言

    PowerMockでprivateもstaticもコンストラクタも単体テストする
    monjudoh
    monjudoh 2010/09/28
    private methodやstatic methodすらMock化してしまう
  • jMockを使ったテストの実行,あるいは実クラスのモックを作成してテストする方法 - 矢野勉のはてな日記

    Java, Cayenne, jMockjMockの使い方を,いまさらながら調べたのでメモ的に記録しておきます。 ORマッピング・フレームワークであるApache Cayenneでは,多くのORマッパと異なり,データオブジェクト(エンティティ)がインタフェースを使っていません。Cayenneはバイトコード・エンハンスとかを使用しない作りなので,継承関係を用いてデータオブジェクトの機能が提供されてます。で,このデータオブジェクトのテストを実行する際にモックを使いたいのだけど,インタフェースがないからどうしよう,という話がありました。 答えは簡単な話で,ほとんどのモック・ライブラリは実クラスのモック化をサポートしています。今回はjMockを使いました。easyMockでも同じようなことは可能でしょう。pom.xmlへのライブラリの追加次のライブラリをMavenのpom.xmlに追加します。 o

  • JUnit 4.8 の新機能 Categories とは - A Memorandum

    2009年12月に JUnit 4.8 がリリースされました。このリリースではテストケースにカテゴリを付与することで、実施するテストを選択できるようになっています。カテゴリのために以下の2つのクラスが追加されています。 org.junit.experimental.categories.Categories org.junit.experimental.categories.Category Categories とは Categories は、テストスイートによるテストケースの実行指定を細かく制御できる仕組みです。テスト対象のメソッドやクラスをカテゴリにてマークすることで、テストスイートから実行する対象を細かく制御できるようになります。 Categories の使い方 カテゴリを使用するには、インターフェース、またはスーパークラスにてカテゴリのマーカーを作成します。例えばテストケース毎に

    JUnit 4.8 の新機能 Categories とは - A Memorandum
  • Weldの単体テスト - inabatchの日記

    koichikさんから、教えていただいたJUnit CDI Extensionsを試してみました。SNAPSHOTOをダウンロード後、mvnでビルドして、以下のjarファイルをプロジェクトに追加しました。junitcdi-all-0.0.0-SNAPSHOT.jars2-extension-2.4.40.jars2-framework-2.4.40.jarcommons-logging.jar(適当に調達してきました)javax.annotation-3.0.jar他に、Weldのサンプル動作に必要なjars次に、インジェクト用のサンプルクラスを定義。 @TestClassScoped public class SampleInjectBean { public String sayHello() { return "HELLO"; } } 最後に、テストケースを作成。 import ja

  • HtmlUnit

  • テストケースからのH2起動 - A Memorandum

    H2の組み込みモードで単体テスト 単体テストとか、結合テストとかでテストスイート起動時にデータベースを起動して、終了時にデータベースをシャットダウンする例です。 @RunWith(Suite.class) @SuiteClasses( { ProductDaoImplTest.class, ProductServiceImplTest.class }) public class AllTests { private static org.h2.tools.Server server; @BeforeClass public static void beforeClass() throws Exception { Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() { @Override public void run

    テストケースからのH2起動 - A Memorandum
  • jmockit: JMockit Home Page

    The JMockit Testing Toolkit JMockit is open-source software licensed under the MIT License. It is a collection of tools for use in developer testing, that is, tests written by developers using a testing framework such as JUnit or TestNG. The tools rely on the Java 5 SE instrumentation feature (the java.lang.instrument package), internally using the ASM library to modify bytecode at runtime. There

  • JUnit4 - TRANCE ARTS 技術情報Wiki

    JUnitとは? † Java用の単体テストフレームワーク。 JUnitのようなテスティングフレームワークを活用することで、次のメリットがある。 テストを統一な方法で作成できる → 他人が見ても分かりやすい テストが簡単にできる また、単体テストコードがあれば、仕様変更時のデグレードを早い段階で発見することができる。 ↑ JUnit3との違いは? † 「junit.framework.TestCase」クラスを継承しなくてもよい。 テストメソッドのプレフィックスに「test」の必要がない。 テストクラス前後に行う処理を指定できるようになった。(@BeforeClass、@AfterClass) 例外検証のソースの記述が簡単になった。(@Test(expected=XXXXException.class)) パフォーマンスの検証もできるようになった。(@Test(timeout=1500))

    monjudoh
    monjudoh 2009/09/08
    assertThatとかの使い方が書いてある
  • Javaにおける開発・Test(Unit/Web/負荷)環境のまとめ - よねのはてな

    うちの母親でも知っているJavaにおけるオープンソースを活用した開発環境・Test環境について調査及び評価する必要があり意外と労力を要したので これからJavaでの開発において開発環境・Test環境を構築する際の参考になればとメモしておきます。 開発環境、ビルドツール、Test、Web Testing、負荷テストに重点を置いてあります。 インストールせずに使用出来るIDEのtIDEや、jythonでWebテストを記述するMaxQ、パフォーマンステストをjythonで記述するGrinder3、 Flexの負荷テストも可能なWebLOAD、Swingのテスト用のUISpec4j等、新しい発見もあったのでJava開発者の人にも参考になると嬉しいです。 それぞれライセンス、最新バージョン、個人的なお薦め度(5点満点)を合わせて明記してあります。 IDE name URL Ver. Licence

  • HttpUnit Home

    Automated testing is a great way to ensure that code being maintained works. The Extreme Programming (XP) methodology relies heavily on it, and practitioners have available to them a range of testing frameworks, most of which work by making direct calls to the code being tested. But what if you want to test a web application? Or what if you simply want to use a web-site as part of a distributed ap

  • HttpUnitを利用したWeb画面テストの自動化

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    HttpUnitを利用したWeb画面テストの自動化
    monjudoh
    monjudoh 2008/09/30
    formの操作がJavaScriptでのそれ近い形で行えたり、getElementById的なWebResponse#getElementWithID()が使えたりする。よさげ。
  • 次世代テストフレームワークでテストを変える

    実運用の障害対応時間比較に見る、ログ管理基盤の効果 (2017/5/9) ログ基盤の構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。今回は、実案件を事例とし、ログ管理基盤の有用性を、障害対応時間比較も交えて紹介 Chatwork、LINENetflixが進めるリアクティブシステムとは何か (2017/4/27) 「リアクティブ」に関連する幾つかの用語について解説し、リアクティブシステムを実現するためのライブラリを紹介します Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2017/4/6) ログ基盤を実現するFluentd+Elasticsearch+Kibanaについて、構築方法や利用方法、実際の案件で使ったときの事例などを紹介する連載。初回は、ログ基盤の構築、利用方法について プログラミングとビルド、Androidアプリ開

  • RubyとJtestRを用いてJava Testを加速させる

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    RubyとJtestRを用いてJava Testを加速させる
    monjudoh
    monjudoh 2008/01/15
    RubyでJavaプログラム用のテストコードを書く
  • JavaでRubyのfixtureみたいなことをしよう - Fixtureを作りました - 矢野勉のはてな日記

    Java Ruby on Railsのfixtureという機能は有名なので皆さんご存じかと思います。JavaでいうJUnitのTestCaseクラスに、 fixture :test と書くだけでtestというテーブルにtest.ymlという名前で用意されたテストデータが投入されるという機能です。 同じような機能はJavaでもかなり以前からDbUnitとして提供されてきましたが、使い勝手という点で圧倒的にfixtureが勝っている。というのは、DbUnitは汎用的なライブラリなので使うためにはDBへの接続定義をコードで書いたり、ロードするxmlファイルを探したり、といろんな手間があったのです。 DbUnitはデータベーステストのデファクト・スタンダードなのでJavaプログラマなら一度くらいは使ったことがあるかと思います。私も仕事柄いろんなところのアプリケーション開発環境を構築するのを手伝いま

    monjudoh
    monjudoh 2007/09/03
    DbUnitをRubyのfixtureっぽく
  • 1