2011-11-14 5 views
3

私はRuby/Railsを使ってTDDとBDDについて少しは知っていますが、最終的にJavaScriptコードで何らかのテストを行う必要があります。私はJSフレームワークとしてMooToolsを使用しています。コードベースでコードを整理し、モジュール化することがいかにうまくいくかが大好きです。しかし、アプリケーションに新しい機能を追加すると、その機能が以前のように機能しなくなることがあります。JavaScriptテストではどこまで行くことができますか?

JavaScrtptコードのテストに関しては、テスト自体がユーザーの操作に不足していますか?実際にJavaScriptのメソッドと(エミュレートされた)クラスの機能をテストするだけですか?あるいは、あなたのアプリケーションのUXの振る舞いがどうあるべきかを確認するための単体テストを書くことができるUXテストの練習はありますか?私は「行動」は広範な用語であることを認識していますが、JavaScriptテストを整理できるので、新しいものを追加するたびに、あなたの新しいコードが前から何も損なわれないように安心することができます?これは大規模なWebアプリケーションの中でどのように行われますか?

+0

シンクライアントまたはファットクライアントを作成していますか? – Gutzofter

答えて

4

JSSpecJasmineなどのユニットテストフレームワークを使用することができます(他にも多数あります)。

次に、GhostbusterまたはSeleniumなどのツールを使用して、機能的な、場合によっては統合テストを行うことができます。これにより、ユーザーのイベントや対話を偽装することができます。

ゴーストバスターはまだ「実際の」使用についてあまり知られていませんが、セレンは業界標準です(私はIBMで使用されていることを知っています。

ただし、自動的にテストできないものはUXです。 UXはUser eXperienceの略で、ソフトウェアでテストするものではなく、実際のユーザーテストでのみテストします。

+0

非常に直接的な結果をありがとうございます。私が "エミュレート"を意味するのは、基本的には、javascript言語が正規のOOPクラスを適切にサポートしていないために作成されるクラスシステムです。だからMooToolsのようなものがこの仕事をするために必要です。 – matsko

+0

あなたは何を意味するのか理解していますが、基本言語の一部ではないため、クラスは単に「エミュレート」されているとは言えません。すべてのOOPパターンは、プロトタイプの継承を通じて実装でき、 "偽造された"ものではありません。とにかく、それは問題の範囲外です。私はこの部分を削除するために私の答えを編集します。 – MattiSG

+0

ところで、あなたが答えを受け入れなかったので、私が忘れた/聞いたことがないものがありますか? :) – MattiSG

関連する問題