タグ

coverageとjavaに関するlizyのブックマーク (8)

  • パラメータの正当性検査とユニットテストのカバレッジ | DevelopersIO

    渡辺です。 最近はユニットテストの導入方法などに関するエントリーが多かったので、今回は実用的な小ネタとして、メソッドにおけるパラメータの正当性検査とユニットテストについて紹介したいと思います。 パラメータの正当性検査 はじめにパラメータの正当性検査について復習しましょう。Javaプログラマであれば読んでないことが許されないEffective Java(第2版P.175、ただし絶版)には次のように記述されています。 ほとんどのメソッドとコンストラクタは、パラメータとして渡される値に関して何らかの制約を持っています。たとえば、インデックス値が負であってはいけないとか、オブジェクト参照がnullであってはいけないというのが普通です。このような制約は明確に文書化すべきであり、メソッド体の初めに検査することで制約を強制すべきです。これは、エラーが発生したらできるだけ速やかにエラーを検出するようにす

    パラメータの正当性検査とユニットテストのカバレッジ | DevelopersIO
    lizy
    lizy 2013/11/15
    パラメータにアノテーションくっつけて制約を宣言的に記述するものとかないのかな。単純なのしか出来なさそうだけど
  • Cobertura

    Cobertura is a free Java tool that calculates the percentage of code accessed by tests. It can be used to identify which parts of your Java program are lacking test coverage. It is based on jcoverage.

  • 第5回 単体テスト | gihyo.jp

    今回は、テスト工程の1つである単体テストにフォーカスを当てます。前回、前々回ではテストケースを作成する技法を見てきましたが、そこで作ったテストケースをどのように実行するかという観点で、単体テストの基的な進め方と、ツールを用いた単体テストの実行方法について解説していきます。 単体テストとは 単体テストとは、ソフトウェアを構成する最小単位である関数やメソッドに対して品質を確認する作業です。ソースコードレベルでのテストと考えるとわかりやすいでしょう。 一般的なテストにおいては、先入観なくテストするためには、テスト対象を作った人以外がテストをすることが望ましいのですが、単体テストに関しては、作業効率を考慮して、ソースコードを作ったプログラマ自身が実施するのが一般的です。 また、単体テストはツールを用いることで効率よく実施できます。よく使われるツールには、xUnitと呼ばれる単体テスト用のテスティ

    第5回 単体テスト | gihyo.jp
  • EMMA: a free Java code coverage tool

    Until recently, the world of Java development had been plagued by an absurd discrepancy: Java developers had excellent free IDEs, free compilers, free test frameworks but had to rely on code coverage tools that charged an arm and a leg in license fees. As a Java pro, I would like to use the same free coverage tool regardless of whether it is a massive commercial project at work or a small fun proj

  • 漸進方式でJavaコードの品質を大きく向上させる:CodeZine

    はじめに 継続的インテグレーションは開発プロセスに欠かせないものであり、最近ではコードカバレッジチェックをビルドオートメーションに組み込もうとする傾向が強まっていますが、開発チームは一体どれくらいのカバレッジ率(ソースコードに対し、どれだけ詳細にテストが行われたかを示す割合)を目標にすればよいのでしょうか。コードカバレッジ重視派の人々の中には、75%という人もあれば、85%という人もあり、100%という人もいます。 私たちがあるプロジェクトでカバレッジ率のベースラインを測定したところ、この開発チームの目標値はそれよりずっと低くせざるを得ないことがわかりました。私は、ジョーゼフ・ヘラーの小説『キャッチ=22』に出てくるキャスカート大佐のように、部隊の兵士の目標出撃回数が達成されそうになるたびに目標回数を引き上げていくようなことはしたくありませんでした。 ヨッサリアンはがっくりとうなだれた。「

  • AtlassianのPete Moore氏がClover 2の新たな機能を語る

    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が最近リリースされ、重要な変...

    AtlassianのPete Moore氏がClover 2の新たな機能を語る
  • EclEmmaは,djUnitと同じくカバレッジ計測プラグインです。

    株式会社DTS ネットワーク事業プロジェクトマネージャ。Javaを中心にフレームワーク開発や開発プロセス定義など幅広く活躍中。StrutsIDEコミッタ。著書「まるごとEclipse! Vol.1」(発行:インプレスコミュニケーションズ)。 昨今では,ますますテスト工程が重要視されるようになっています。品質の高いソフトウエアを効率的に開発することが,保守・管理コストの低減につながり,最終的なコスト削減を生むからです。 単体テスト工程では,「JUnit」フレームワークがデファクト・スタンダードです。これにより,効率的にテスト・ケース(テスト用のコードを書いたクラス)を作成し,何度でも繰り返し実行できます。単体テストを何度でも繰り返し実行できることは,短期開発で高品質を保つためには欠かせない要素です。 しかし,このようにJUnitフレームワークが品質向上に大きく貢献している半面,カバレッ

    EclEmmaは,djUnitと同じくカバレッジ計測プラグインです。
  • marsのメモ - EclEmmaとWinstoneでWebアプリのカバレッジ取得

    EclEmmaという神プラグインで,IDEAんときみたくWinstoneを使ってWebアプリのカバレッジが取得できたので,やり方をメモしておく。 #IDEAもEMMA使っているので,仕組み的には全く同じだった。 まずは,IDEAとEclEmmaの相違点。 IDEAと異なり,JDK1.4.2系でもカバレッジの取得が出来る(IDEAはJDK5以降じゃないとダメ)。 Eclipseのコンソールビューは,graceful exitが出来ないので(IDEAと比べ)Winstoneの停止がちょっとだけ面倒。 なぜか,Winstone 0.9.6じゃないとダメだった。最新の0.9.8は,終了方法が変わったのか停止してもカバレッジデータが出力されなかった(なんでや?)。ちなみに,IDEAの場合,0.9.6/0.9.8共に成功。 目立った違いはこれくらいで,とかくEclEmmaの完成度は高い。IDEAのそれ

    marsのメモ - EclEmmaとWinstoneでWebアプリのカバレッジ取得
  • 1