パラメータを渡すメソッドを呼び出します。このパラメータが特定のものと等しい場合、スレッドは停止するまで繰り返し何かを開始します。繰り返しごとにいくつかの値が変更されます。
これらの値をJUnitから確認する方法はありますか?JUnitテスト:スレッドからの結果をテストする方法
答えて
スレッドを生成する場合は、もう単体テストではありません。つまり、統合テストです。この「値」を変更するロジックをスレッドの産出なしでテストできるように、コードをリファクタリングします。スレッドを生成することなく動作する場合、スレッドを生成するときに動作します(私は自分自身をそのスレッドの講義のために設定したことを知っています...あなたは共有変数を正しく同期させる必要があります。デッドロックを引き起こす可能性のあるコードを持つ)。
コードを見ることなく、テストする方法を提案するのは難しいです。しかし、あなたがスレッドを生成しているなら、あなたは間違いなく単体テストではありません。
私は、単一の繰り返しをカプセル化し、それをユニットテストするために、 'tick()'メソッドが必要だと言っています。オブジェクトのフィールドを変更するのではなく、「いくつかの値」を返す場合は、テスト(および全体的なデカップリング)の方が優れています。 –
@ヴィクター合意、それはスレッドの振る舞いのよりよいカプセル化です。それでも、私は 'ticking'を開始する前に、全体的な行動単位をテストしたいと思っています – BeRecursive
申し訳ありませんが、コードを提供していません。それは私の大学のプロジェクトの一部です。私はこれができないのではないかと恐れています。私は私のコードがうまくいくように動作することを知っていますが、プロジェクトにいくつかのJUitテストを含める必要があるので、コードのこの部分をテストする方法があるかどうかは疑問でした。私はスレッドを作成し、スレッドは指定された間隔で繰り返しを行います。だから、JUnitをそのまま使ってテストすることはできません。ありがとうございました! :) – anna
各反復で値が適切に変更されているかどうかを確認する場合は、予想される入力で反復コードを呼び出し、期待される出力をテストします。孤立して各peiceをテストします。
は疑似Javaコード:
for each (file : files) {
doSomething(file); // this updates some running totals or something
}
次に、あなたがテストし、値が適切に更新するかどうかを確認し(ここで、モックとしたい各入力の上ごdoSomething()
を呼び出すいくつかのユニットテストを書きたいです必要)。その後、スレッドを生成させ、結果の値をチェックする統合テストを行います。
- 1. プログラムのJUnitテスト結果
- 2. junitテストの実行結果をデータベースに記録する方法
- 3. 別のテスト結果からJUnitレポートを生成するPythonスクリプト
- 4. Retrieve Junitテストの予想結果
- 5. プレイフレームワーク2.1 JUnitテストは、JUnitテストを日食からzentaskチュートリアル以下
- 6. 結果ページから古いテストをクリア
- 7. jUnitテストからmavenフィルタリングを起動する方法は?
- 8. libsvmのテスト結果
- 9. テスト名とモジュールを追加して結果のドキュメントをテストする方法は?
- 10. JUnitテストからMavenプロパティを読み取る方法は?
- 11. JenkinsのJUnitテスト結果に「ビルド数」を定義する方法はありますか?
- 12. EclipseでのJUnitテストのフィードバック方法
- 13. ファイル名展開の結果をbashでテストする方法は?
- 14. ブーストユニットのテスト結果をTFS 2010に公開する方法
- 15. JUnitレポート - テスト方法の説明
- 16. コレクションのJUnitテスト
- 17. MSTest - テスト結果フォルダを制限する方法
- 18. 大量のテスト結果
- 19. 負荷テスト結果のトラブル
- 20. VHDLテストの結果は
- 21. MSBuildの:テスト結果をインポートすると
- 22. TFS 2015からスクリプトのテスト結果フォルダを取得する
- 23. JUnitテストでコレクション内の要素の順序をテストする方法は?
- 24. SharedResourceクラスをテストするJUnitテストケース内のスレッド
- 25. Junit 3、テストからデータを取得
- 26. JUnitでGUIをテストする
- 27. ハドソンCIがステータスメールにテスト結果を含める方法
- 28. コンソール出力をNUnitテストからxml結果に変換する
- 29. Android Junitテスト
- 30. セットアップ、initilize JUnitテスト
いくつかのコードを見てみましょう。 – dan