2016-12-27 7 views
2

私は金融業界で働いています。私が指しているFSMフレームワークは、受注管理システムです。 これはJava、Springを使用して記述され、ルール/遷移がデータベースで設定されます。Finite State Machineベースのフレームワークのテストに含めるべきこと

現在のテストは、Spring JUnitランナーを使用して実行されるJUnitを使用して記述され、各遷移の最後に結果の状態のみをカバーします。

注文が変更/修正されている場合、注文フローがデータベース内で変更されたかどうかの最終フローのみがテストされます。

実際にデータベースに保存された変更プロセス中に入力されたデータはテストされません。いずれにも否定的なテストはありません。

私の質問で、フレームワークはまた、ダウンストリームにデータ、発行データを永続化するなど、顧客

+0

テストケースは、システムによって提供される機能をカバーする必要があります。申し訳ありませんが、あなたの質問はあまりにも広すぎると思います。ここに答えを与えるための純粋な方法はありません。明白なことのほかに、あなたの事のすべてのものをテストしてください。 – GhostCat

答えて

0
にレポートを送信する責任を負っている場合はFSMベースのフレームワーク/アプリケーションが持つべきテストケースの種類を

私の質問は、FSMベースのフレームワーク/アプリケーションフレームワークでも、ダウンストリームにデータ、発行データを永続化するなど、顧客

にレポートを送信する責任を負っている場合は持つべきテストケースの種類を、であるあなたのユニットテストJavaコードがデータベースと通信しないようにする必要があります。これは、このコミュニケーションをテストすべきではありません。あなたは、(ORマッピングフレームワークの)クラスにアクセスするデータベースをテストサロゲートに置き換える必要があります。

あなたは、Javaコード内の個々のユニットの公表された動作を、でテストする必要があります。これには、データベースから出てくるエラーの反応が含まれます(テストサロゲートの設定によって強制されます)。

関連する問題