各テストがユーザーをいくつかのステップに導く、多くの異なるテストを含むアプリケーションを開発しています。ステート マシン フレームワークを使用して、コードから状態/遷移をキャプチャすることを考えています。ルールエンジンを使ってルールを補完することも考えています。JBoss や Java で動作するステート マシン フレームワークの経験がある人はいますか? 前もって感謝します。
-グエン
各テストがユーザーをいくつかのステップに導く、多くの異なるテストを含むアプリケーションを開発しています。ステート マシン フレームワークを使用して、コードから状態/遷移をキャプチャすることを考えています。ルールエンジンを使ってルールを補完することも考えています。JBoss や Java で動作するステート マシン フレームワークの経験がある人はいますか? 前もって感謝します。
-グエン
jbpmはこれを行い、jboss とうまく統合します。私の経験では、非常に使いやすく強力です。
Activitiを試してみてください。多くの人がそれを使用しているようです。 http://activiti.org
もちろん、ルールエンジンの部分にはDroolsを使用できます。
JBoss PVM を参照してください。まだアルファ版ですが、あらゆるタイプのステート マシンのモデル化に使用できます。また、GUI トランジションについても検討しています。
私は、 ragelを使用して簡単に保守できるステート マシンを構築するという非常に良い経験を積んできました。結果として得られる Java コードは非常に高品質です。ただし、これは純粋にステート マシン ジェネレーターであり、特定の用途を意図していないため、Web 関連の問題領域でよりシームレスに機能する他のソリューションを見つけることができます。
画面から画面への遷移ベースのシステムを構築している場合は、Spring WebFlow http://springframework.org/webflowを必ずチェックしてください。
アクティビティを利用しました。最高のフレームワークです。これは、軽量のワークフローおよびビジネス プロセス管理 (BPM) プラットフォームです。オープン ソースであり、任意の Java プラットフォームまたはクラウドで動作します。必要なのは BPMN 、 Maven 、Spring 、および Activiti の知識だけです。
StateBuilderJavaを見てください。これは、ステート マシンの XML 記述を Java ステート パターンの拡張バージョンに変換するステート マシン コード ジェネレーターです。すべての UML セマンティクスをサポートします。ステート マシンは、階層型、同時実行型、および非同期型にすることができます。
各テスト シナリオは、ステート マシンの Xml 記述でモデル化できます。コード ジェネレーターはユーザーに代わって状態パターンを記述します。これは、手動で行うと面倒でエラーが発生しやすくなります。
もう 1 つの利点は、グラフィカル ツールを使用してテスト シナリオを視覚化および編集できることです。これにより、一連のテスト シナリオをすばやく実装して文書化できます。例では、ステート マシン コード ジェネレーターを使用して複雑なテスト シナリオを簡単かつ迅速に作成する方法を示すために、XMPP クライアントのテスト スイートが作成されています。
免責事項: 私はこれらのソフトウェアの作成者です。