Menu

FrontPage

Eclipseプラグイン
Eclipse小技集
リファクタリング講座
テスティングフレームワーク JUnit
MSDEについて



The 20 newest affair
2010-09-092010-09-082010-09-072010-09-062010-09-012010-08-312010-08-272010-08-242010-08-232010-08-172010-08-162010-07-302010-07-212010-07-132010-06-272010-06-182010-06-172010-06-16

バージョン0.8.5(for Eclipse 3.2, 3.3, 3.4, 3.5) [2009/12/25]


  • EnumクラスのカバレッジとVMOによるテストを可能にした
  • カバレッジレポート(HTML形式)のCharset指定をプロジェクト設定画面に追加
  • バイトコード操作の速度改善
  • Asm1.5.xでfinallyの行が未実行になるバグを修正
  • カバレッジの表示ロジックを修正
    実行可能な行が0の時
        (旧) ラインカバレッジ 0%
        (新) ラインカバレッジ 100%
    分岐箇所が0の時
        (旧) ブランチカバレッジ 0%
        (新) ブランチカバレッジ 100%

バージョン0.8.4(for Eclipse 3.5) [2009/07/10]  Λ


  • Eclipse3.5用公開

バージョン0.8.4(for Eclipse 3.2, 3.3, 3.4) [2009/02/04]  Λ


  • ASM使用時、addReturnValueなどのクラス名の指定が、BCELの時と違っていたので、BCELと同じになるよう修正

    [例]
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        sdf.format(...);
        ...

        [Old(0.8.3)]
        addReturnValue(DateFormat.class, "format", "2008/06/10");
        [New(0.8.4)]
        addReturnValue(SimpleDateFormat.class, "format", "2008/06/10");


  • Java5でASM使用時に、StringBuilder#length()などが使用できないバグを修正
  • BCELライブラリを使用しないかわりに、ASMライブラリは、バージョン3.0, 2.2.1, 1.5.3の中から選択可能とした
  • djunit-coverage-reportタスクにcharset属性およびsrcfileencoding属性追加

バージョン0.8.3(for Eclipse3.3) [2007/12/11]  Λ


  • Generics, Enum, Annotationのカバレッジ処理を修正
  • 配列のcloneメソッドを実行すると例外が発生するバグを修正
  • Interfaceのメソッド(PreparedStatementのcloseなど)に例外をセットできないバグを修正
  • interfaceのメソッドに戻り値などを指定する時は、実装側クラス名ではなくinterface名で指定できるよう修正
  • マーカー削除処理に失敗するバグを修正

バージョン0.8.2 [2006/12/01]  Λ


  • JUnit4に対応(Eclipse3.2, ANT1.7.0RC1)
  • マーカー作成をバックグラウンドで処理できるよう修正(Eclipse3.0以降)
  • プラグインのディレクトリ名を変更

        [修正前] jp.co.dgic.eclipse.jdt.djunit_X.X.x_0.8.2
        [修正後] jp.co.dgic.eclipse.jdt.djunit_0.8.2

  • Java1.3での実行を可能にした
  • UTF-8のソースで未実行行のマーカー位置がずれてしまうバグを修正
  • ANT1.6.5用に、djUnitタスクのクラスパスを調整
  • BCEL,ASMのバージョンを変更

        BCEL 5.1 -> 5.2
        ASM 2.1 -> 3.0

バージョン0.8.1 [2006/07/12]  Λ


  • Eclipse3.2用公開

  • クラスのカバレッジレポートを複数ページに分割して表示するよう修正

        クラスが大量にある場合に、ウィンドウリソースが不足するバグの対策

  • JVMバージョンが1.3の時に、エラーメッセージを表示して終了するよう修正

  • 1行のクラスファイルがあるときに無限ループにが発生するバグを修正

バージョン0.8.0 [2005/12/05]  Λ


  • Eclipse3.1.x用公開

        Eclipse3.1.xから、旧バージョンであるversion 0.7.2を削除した場合、
        Eclipseが起動しなくなる場合があります。
        その場合、起動オプションに「-clean」をつけて起動してみてください。

        Eclipse3.1がdjUnitを認識しない(「help」-「About Eclipse SDK」「Plug-in Details」に表示されない)場合も、
        「-clean」で起動してみてください。

  • J2SE 1.4.x以上必須

        1.3系では実行できません。

  • Java SE 5 をサポート

        評価不十分ではありますが、Genericsを試用したクラスのテストも実行できます。

  • バイトコード操作ライブラリを選択可能にした(BCEL or ASM)

        デフォルトのバイトコード操作ライブラリを「ASM」にしました。
        ASMは、Java5もサポートしています。
        BCELで、かつJava5のコードを実行したいときは、-noverifyオプションを付けて実行する必要があります。

        また、ASMとBCELが選択できることにより、バージョンの衝突をさけることができます。

                例)seasar2プロジェクトのS2StrutsUnitは、「ASM」ではなく「BCEL」を選択する

  • クラスローダを全部書き直し

        クラスローダが影響していると思われる問題を減らすため、クラスローダ関連のクラスを大幅に変更しました。

        HivemindやS2StrutsUnitなどと相性が良くなっていると思います。

  • カバレッジのオプション「テスト終了後、エディターにマーカーを付ける」を追加

        このオプションを外すと、テスト終了後にマーカー処理をせず、カバレッジレポートは表示されます。

  • DJUnitタスク修正

        djunit.jarをANT_HOME/libにコピーしなければならないという制限をなくしました。

  • ブランチカバレッジのロジックを修正

        branch%についてを参考にしてください。


バージョン0.7.2 [2005/09/15]  Λ


  • 「依存ライブラリを無視する」オプションと、「下記クラスは無視しない」パターン指定を追加した
[69676E6F72656C6962726172792E6A7067.jpg]

      これは、巨大なメソッドを持つクラスがあるときに効果があります。
      依存ライブラリを無視すると、改造後のクラスファイルのサイズが、かなり小さくなり、クラスロードに成功する可能性が高くなります。
      しかし、rt.jarなどの外部クラスをVMOとして使用することができなくなるので、例外とするクラスを指定できるようにしました。



  • 実行時にVMオプションである「-noverify」を付けるオプションを追加した
[6E6F7665726966792E6A7067.jpg]

      djUnitは、Eclipse3.1に正式な対応をしていませんが、ある程度動作します。
      しかし、JDK5のGenericsを利用しているクラスの処理に失敗します。
      そのときは、このオプションにチェックをつけます。

  • Plugin ID を変更

      [旧]jp.co.dgic.eclipse.jdt.junit -> [新]jp.co.dgic.eclipse.jdt.djunit

  • DJUnitTestCaseをabstractクラスに修正

  • トレース機能を削除
  • djunit-instrumentタスクを削除

バージョン0.7.1 [2005/07/25]  Λ


  • 実行時のメモリ消費が少なくなるようVMOのバイトコード加工処理を調整した
  • プロジェクトが循環参照されているときにStackOverflowErrorが発生するバグを修正した

バージョン0.7.0 [2005/04/05]  Λ


  • assertArgumentPassedで、引数がnullであることを確認できるようにした
  • コンパイラ準拠レベルを「1.4」でのバイトコード加工処理を調整した
  • Traceのインデントのズレを調整した
  • カバレッジレポートのカラム幅を調整した
  • バイトコード加工処理のバグ修正
  • antタスク「djunit」のtargetSrcDir属性に相対パスを設定できるようにした

バージョン0.7.0-beta2 [2005/03/09]  Λ


  • antタスク「djunit-instrument」の実行時エラーを修正
  • バイトコード加工処理のバグ修正
  • カバレッジリポート内の不要な項目を削除
  • antタスク「djunit」は、javacでコンパイルされたクラスに対応した

バージョン0.7.0-beta1 [2005/03/04]  Λ


  • バイトコード加工ライブラリをBCELに変更した

    [制限事項]

        antのdjunitタスクでテストを実行する場合は、Eclipseのコンパイラでコンパイルしなければいけない

        トレースのインデントがずれる

  • デバッグモードで実行できるようにした

    [制限事項]

        内部でステップフィルタを設定しているため、java.*, sun.*, junit.*などのクラスにステップインできない

        メソッドの先頭行でブレークポイントし、F6キーでステップできないときがある。この場合は、F5キーで、次の行にステップになる。

バージョン0.6.5 [2005/03/04]  Λ


  • djUnit以外の起動のときは、カバレッジレポート生成を行わないよう修正
  • jcoverage-main.jarのファイル名をjcoverage-djunit-1.0.5.jarに改名
  • jcoverage-djunit-1.0.5.jarにjcoverageのtasks.propertiesを追加
  • Coverage reportビューに、マーカー削除、マーカー生成ボタン追加
  • VMOのメソッドのaddReturnValueなどで、クラス名を、Classオブジェクトで指定可能にした
  • 改行コードLFのときにマーカーがズレるバグを修正

バージョン0.6.4 [2005/02/04]  Λ


  • トレース機能で、メソッド実行開始時の「引数の型」、終了時の「戻り値」「戻り値の型」を表示するよう修正
  • トレースのインデントのズレを修正
  • プロジェクトプロパティー「djUnit」での対象クラスパターン追加、編集時の動作を修正
  • Coverage report viewのメニューボタン押下時、NullPointerExceptionが発生する現象を修正

バージョン0.6.3 [2005/01/06]  Λ


  • javaコンパイラの設定のコンパイラ準拠レベルを「1.4」にした時に、CannotCompileExceptionが発生する現象を修正(javassist.jar)
  • バージョン1.2.8以外のlog4jを使用するとき、実行時エラーとなる現象を修正(jcoverage-main.jar)

バージョン0.6.2 [2004/12/16]  Λ


  • AllTestsのsuiteメソッドなどで、Class#getPackage()がnullになってしまうのを修正
  • 参照プロジェクトのソースパスを再帰的に検索するよう修正

バージョン0.6.1 [2004/12/07]  Λ


  • 未実行行のアイコンを変更
  • ソース中の未実行行に、アンダーラインを表示するよう修正
[6E65776D61726B65722E706E67.png]
  • 未実行行一覧を、タスクビューに表示するよう修正
  • DJUnitClassLoaderのロードさせないパッケージ関連処理のバグ修正
  • DJUnitClassLoaderのロードさせないパッケージのデフォルト値修正
  • 返却値の型チェック処理修正
  • 本家JUnitテスト起動時のNumberFormatException発生を修正
  • djunit-coverage-reportタスク用のクラス追加(0.6.0での追加し忘れ)[for Eclipse2.1.x]

バージョン0.6.0 [2004/11/25]  Λ


  • HTML形式のjcoverage report生成機能追加

        HTMLファイルへのエクスポートを可能にしました。
        djUnit Coverage Reportビューのタイトルバーに追加された、エクスポートボタン[6578706F72745F68746D6C2E676966.gif]を押してみてください。

  • ANTのタスク「djunit-coverage-report」(テストバージョン)タスク追加

        djunit-coverage-reportタスク

バージョン0.5.5  Λ


  • Virtual Mock Objectsのクラス加工ロジックを調整

        クラス改造語のメソッドのサイズを抑えるため、クラスへのソース埋め込み量を減らしました。
        これにより、全体的な、処理スピードも、若干ですが速くなっています。
        代わりに、MockObjectManagerクラスが、大きくなってしまいました。

バージョン0.5.4  Λ


  • プロジェクトプロパティー「djUnit」でのパターン指定部分に、チェックボックスを追加

  • パッケージ名を省略したときの返却値検索のバグ修正

        今まで、内緒にしていましたが、addReturnValueなどでのクラス指定では、異なるパッケージ名の同名クラスがない限り、
        パッケージ名を省略しても、そこそこ、うまいこと処理できます。
        その省略したときの処理にバグがあったので修正しました。
        やはり、省略しないほうが健全だど思うので、今後、この話題には、あまり触れないようにしたいです。


Attached File: [Attached File All List] ignorelibrary.jpg[44KB] noverify.jpg[45KB] newmarker.png[16KB]

Lastmodified: 2010-06-27 (日) 08:34:47 (74d)