0

バックエンド テストを行う際に留意すべき重要な考慮事項を知りたいと思いました。

私のプロジェクトには基本的に GUI がありません。すべてバックエンド関連の作業です。完全なサーバー側は Java であり、Oracle Db を使用しています。

バックエンド テストをテストする際に留意すべき考慮事項について、専門家のアドバイスを共有していただければ幸いです。

4

1 に答える 1

0

あなたの質問は非常に一般的であるため、私の答えもそうでなければなりません。次の点に注意してください。

  • テストを実行するたびに、一貫した開始点に戻ることができる必要があります。DB スナップショットを作成し、実行するたびにそのスナップショットから DB を復元するメカニズムを用意します。
  • スナップショットは、本番データベースを代表するものである必要があります。プライバシーとセキュリティ上の理由から実際の本番データをコピーしたくない場合があるため、これはおそらくデータを生成する手段を持つことを意味します (スキーマの変更などの変更がある場合は再生成します)。
  • リグレッション テストでは、一般的なユース ケースのすべてと、できれば多くの一般的でないユース ケースの単体テストが必要です。JUnit はおそらくこれに適したフレームワークです。
  • コード カバレッジ ツールを含めることを検討して、単体テストによって永続化レイヤーがどの程度影響を受けているかを確認してください。100% のコード カバレッジは、すべての決定パスを実行することを意味するわけではありませんが、少なくとも、テストがどれだけカバーしているかを知ることができます。
  • スループット (挿入と選択が 1 人のユーザーに対して十分な速さで実行されているか?) と同時実行性 (複数のユーザー - 本番環境で予想以上に - 読み取りと挿入/更新の両方で同じテーブルにアクセス - パフォーマンスの問題を引き起こす) の両方をテストする必要があります。またはデッドロック? デッドロックがある場合、それらは適切に解決されていますか?)
于 2009-09-12T17:45:42.750 に答える