phpunit+zendframework ::マルチユーザーセッションを同時にテストする方法は?
-
24-10-2019 - |
質問
私は初心者プログラマーで、QAの経験がありません
(私がphpunitまたは他のツールなしで書いている簡単なテストのみ)
マルチユーザーセッションを同時にテストするためのテストを作成するにはどうすればよいですか?
(phpunit+zendframework)
基本的なテスト私がやろうと思っている例(私はQAではありません - 私が間違っている場合はSOORY):
- ユーザーは同時にログインします
- ユーザーはプロセスを購入します-1人のユーザーのみを書くことができ、残りは読み取りします。
- サーバーが同時にどのくらいのセッションを処理できるか。等..
ありがとう
解決
3番目には、テストではなく、ベンチマークについて本当に話しています。 AB -Apacheベンチマークツールをご覧ください
以下のコマンドのようなことを行うことができます。これは、一度に5つの同時リクエストを送信し、全体的に1000のリクエストをWebサイトに送信します。
AB -N 1000 -C 5 http://domain.com/index.php
他のヒント
ZFとテスト駆動型開発の両方に関心を持っている称賛。彼らは両方とも学ぶべき素晴らしいことです。
テストを作成するときに問題が発生し、提供された状況下でアプリケーションが正しく機能していることを具体的に確認します。
単体試験は、一般に、より小さな原子行動を目的としています。アプリケーションがこのワークフローの必要なコンポーネントを実行すると主張するテストを作成する必要がありますが、それらをすべてまとめることは、実際にはユニットテストの範囲を超えています。
これを回避でき、たとえば購入される特定の模擬アイテムがモックユーザーが購入するときに「ロックされた」状態にあるかどうかを決定する状態設計パターンを適切に実装することで、テストを使用できます。もちろん、モデルに組み込まれたときにデータが必要な方法で動作する安定したモックオブジェクトを作成することは、すべてをまとめます。
最後に、#3は少し問題があります。なぜなら、それはテストするものではないからです。サーバーが容量を超えている場合、何をするつもりですか?サイトをシャットダウンしますか?テスト駆動型アプローチは、容量の問題と正確に互換性がありません。サイトの速度とメモリの消費を積極的にプロファイルし、実際のユーザーの動作を監視する必要があります。容量に近づいている時点で自分自身を見つけた場合は、ハードウェアやホスティングをアップグレードすることをお勧めします。