1

私は AngularJS を使用してクライアント側のフォーム検証を行いましたが、それは魅力的です!

次に、サーバー側の検証を実装しました。サーバーに間違ったデータを送信してテストしたいと思います。AngularJS (クライアント側のフォーム検証) では、間違ったデータをサーバーに送信することはできません!

私に何ができる?

(Javascriptを無効にすることは選択できません。これは、すべてのajax呼び出しを停止し、アプリケーションでサーバー側のメソッドが呼び出されないためです)

質問の要約:

ユーザーはフロント エンドの検証に妥協します (そうです、実際に起こります!)、どうすれば同じことをテストで行うことができますか?

4

1 に答える 1

2

あなたが求めていることはあまり意味がありません。Angular は、何らかの理由でリクエストの送信を妨げません。あなたのフォームがそうするなら、それはあなたがそうするようにそれをコーディングしたからです。したがって、あなたのケースで検証を無効にすることは、それを強制するコードをコメントアウトするだけの問題です (カスタムバリデータを使用している場合、これは当てはまりません。その場合、検証を完全に無効にするのははるかに難しいかもしれません)。 .

しかし、私はそれをしません。サーバー側の検証をテストするには、次のいずれかを実行することをお勧めします。

  1. バックエンドが実装された言語で自動化されたテストを作成し、検証ロジックが機能することを確認します (強くお勧めします)。
  2. バックエンド API を直接呼び出して、手動でテストを実行します。Windows を使用している場合はFiddlerを使用でき、どのオペレーティング システムでも Google Chrome 用のPostmanを使用できます。
于 2013-10-11T03:50:48.897 に答える