私は Ruby on Rails を使用してリスクのようなゲームを開発し、キャラクター間で (ランダムに) 領土をディスパッチし、キャラクターのユニットをそれぞれの領土に (ランダムに) ディスパッチする手順を開発する必要があります。
このゲームには、5 人のキャラクターに対して 42 のテリトリーがあります。3 人のキャラクターは 8 つのテリトリーを受け取り、2 人のキャラクターは 9 つのテリトリーを受け取ります。各キャラクターには、割り当てられたテリトリー間で派遣するための 25 ユニット (9 つのテリトリーを持つキャラクターの場合は 27) のプールがあります。各テリトリーには、少なくとも 1 つのユニットが必要です。
私のモデルは次のとおりです。必要に応じて変更しても大丈夫です。
- ユーザー;
- ゲーム ;
- 領域 ;
- キャラクター、ユーザーをゲームにバインドし、展開する残りのユニットを保持します。
- 領土、キャラクターをエリアにリンクし、そのエリアのユニット数を保持します。
ここに私の考えがあります。
- 2 つの操作 (テリトリー ディスパッチとユニット ディスパッチ) は、たとえパフォーマンスが劣っても分離する必要があります。
- より簡単にテストするには、出力状態は同じ入力で同じにする必要があります。ランダム部分は外部から取得する必要があります。
そのようなシナリオに対してどのようなアサーションを書きますか? Rails 3 のデフォルトのテスト スタックである Test::Unit とフィクスチャを使用します。
ありがとう!