.NETやJavaプロジェクトのユニットテストケースを生成する優れたツールがあるかどうかは、ほぼ100%のコードカバレッジをカバーするユニットテストケースを生成します。テストケースの数は、コードの循環複雑度に正比例する可能性があります(サイクルの複雑さが高いほどループと条件の入れ子が高くなります)。循環複雑度が高いほど、テストケースが大きくなります。私はそれが完全に機能するとは思っていません(私は単体テストをビルドして、それが生成された後に実行するつもりだと言いますが)、テストケースにあなたが修正するテンプレートスタイルを持つことができますあなたの意図するニーズに合ったケース。しかし、適切なセットアップとティアダウンの方法も必要であり、ユニットテスト用のモックオブジェクトを使用するべきかどうかを検出するのに十分であり、依存関係があればそれを検出することができます。だから、存在するそのようなツールはありますか?.NETとJava用のユニットテストケースの自動生成
答えて
.NETの場合、MicrosoftはCode Contractsと一緒に、.NET 4.0用に主流になりそうなPexを持っています。私はチャンネル9のビデオを見ることを強くお勧めします。
それはこの種のものは非常にデータ駆動型のクラスのための非常に良好であることを私を打つ - パーサなど私は、私は非常に頻繁にそれとを始めるが、中に持っている便利なツールだろうと見ることができませんそれにもかかわらずあなたの兵器。
C#(または一般的には.NET)では、PEXがそのツールである可能性があります。これはILレベルで動作し、すべてのブランチに強制的に移動しようとします。 BCLなどで、広範なバグを発見しました。
ランダムなテスト生成フレームワークに興味があるかもしれません。研究は、あなたが示唆するように、カバレッジに基づいた体系的なアプローチよりもバグを見つけるのと同じくらい効果的であることを証明しました。
.NETとJavaの両方についてRandoopを確認してください。それは、多かれ少なかれランダムなメソッド呼び出しのシーケンスを生成することによって動作し、契約やクラッシュなどをチェックします。完全に自動です。
QuickCheckに基づいて、他のランダムテストツールもチェックしてください。 Java、Scala、F#のために。これはPexに似ています。つまり、仕様やパラメータ化された単体テストを与え、生成された入力引数の数をチェックします。
この「パラメータ化された」単体テストの記述方法は、実際には少なくとも60%のケースでより自然であり、さらに多くのバグがあることがわかりました。
RandoopプロジェクトのWebページがhttp://mernst.github.io/randoop/に移動しました。 – mernst
Javaの場合は、JUnit-Toolsを試してください。それは良い文書と一緒に独自のEclipseプラグインを持っています。
- 1. iPhone用自動ユニットテストケース
- 2. Javaポリシーファイルの自動生成
- 3. C#.Net自動リソースファイルデザイナーコードの生成
- 4. .Net DLLからJavaラッパークラスを自動的に生成します。
- 5. レガシーJavaコードの自動生成ユニットテスト
- 6. POJOドメインJavaクラスの自動生成
- 7. Java UML NetBeans 7.0の自動生成
- 8. Java用swaggerを使用した休止エンドポイントの自動生成
- 9. ユニークな番号を自動生成JAVA
- 10. Java Spark Dataset自動生成コンパイル例外
- 11. pythonノートブック用のショールームページを自動生成
- 12. フィールド生成メソッドの自動生成
- 13. documentDB .net Rest自動生成IDを使用して文書を作成
- 14. PHP/Javascriptの生成と自動ダウンロードファイル
- 15. Javaコードの自動作成
- 16. データベースのJava自動作成
- 17. Hibernateマッピングファイルの自動生成
- 18. ジャンゴモードの自動生成シート
- 19. PDF生成の自動化
- 20. 自動データアクセスレイヤの生成
- 21. intellijのjavadoc自動生成
- 22. ウェブサイトの自動生成グラフ
- 23. サブクラスの自動生成メソッド
- 24. ファイルの自動生成
- 25. 派生自動生成エンティティークラス
- 26. 自動生成テキストボックス
- 27. 自動レター生成
- 28. 自動インラインドキュメント生成
- 29. 自動生成タイムスタンプ
- 30. Javaのインタフェースの実装クラスを自動生成
ダーン、それに12秒! –
私は何と言うことができますか、マーク?あなたが持っているか持っていないか...;) –
"スタートオフ"で:ペックステストは実行可能な仕様によく似ています。例入力を考えると、ソフトウェアでよりうまく処理できる退屈な仕事です... devloperが無視しようとしているすべてのコーナーケースについて知っています; –