0

私は初心者プログラマーで、QA の経験はありません。

(PHPUnitや他のツールを使わずに書いた簡単なテストのみ)

マルチユーザーセッションを同時にテストするためのテストを作成するにはどうすればよいですか?

( PHPUnit+ZendFramework )

私がやろうと思っている基本的なテストの例 (私は QA ではありません - 私が間違っていたら申し訳ありません):

  1. ユーザーが同時にログインする
  2. ユーザー購入プロセス - 1 人のユーザーのみが書き込み可能で、残りは読み取りのみ可能です。
  3. サーバーが同時に処理できるセッションの量。等..

ありがとう

4

2 に答える 2

2

3 番目は、テストではなく、ベンチマークについて話していることです。ab を見てみましょう - Apache Benchmarking tool

以下のコマンドのようなことを行うことができます。これは、一度に 5 つの同時リクエストを送信し、全体で 1000 のリクエストを Web サイトに送信します。

ab -n 1000 -c 5 http://domain.com/index.php

于 2010-06-28T17:17:31.170 に答える
1

ZF とテスト駆動型開発の両方に関心をお寄せいただきありがとうございます。どちらも学ぶべき素晴らしいことです。

テストを作成して、指定した状況でアプリケーションが正しく動作することを具体的に確認するときに問題が発生します。

単体テストは、通常、より小さなアトミックな動作を対象としています。アプリケーションがこのワークフローの必要なコンポーネントを実行することを確認するテストを作成する必要がありますが、それらをすべてまとめることは、実際には単体テストの範囲を超えています。

これを回避し、状態設計パターンを適切に実装することでテストを使用することができます。たとえば、モック ユーザーが購入したときに特定のモック アイテムが「ロック」状態にあるかどうかを判断します。もちろん、モデルに組み込まれたときにデータが本来あるべき動作をする安定したモック オブジェクトを作成することは、まったく別の問題です。

最後に、#3 は少し問題があります。これはテストするものではないからです。サーバーが容量を超えている場合、何をするつもりですか? サイトをシャットダウンしますか? テスト主導のアプローチは、キャ​​パシティの問題と完全に両立しません。サイトの速度とメモリ消費量を積極的にプロファイリングし、実際のユーザーの行動を監視する必要があります。容量に近づいていることに気付いた場合は、ハードウェアまたはホスティングをアップグレードすることをお勧めします.

于 2010-06-23T21:37:54.750 に答える