問題タブ [flexunit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-flex - Flex - インポート AbstractMatcherTestCase が見つかりませんでした
FlashBuilder 4.5.1 で Flex Unit を使用しようとしていますが、「 import AbstractMatcherTestCase could not be found 」という警告が表示されます。誰かが私に欠けているものを教えてもらえますか? プロジェクトの参照ライブラリの 1 つとして hamcrest-as3-flex-1.1.3.swc があります。
次のようにインポートしようとしています。
import org.hamcrest.AbstractMatcherTestCase;
ありがとう
actionscript-3 - 単体テストでイベントを使用するためのEvent.targetの設定
flash.display.Loaderをオーバーライドし、自分のイベントを自分のtarget.contentでディスパッチしたい
Event.targetをオーバーライドするにはどうすればよいですか?「プロパティは読み取り専用です」
または、他の方法を使用して、ロードシーケンスを単体テストします
tnx Hed
apache-flex - FlexUnit 4 を使用して AsyncResponder をモックし、結果のハンドラー関数をモック オブジェクトでモックするにはどうすればよいですか?
Flex 4.5.1 で記述しているクラスの単体テストを、テストとモック フレームワークにそれぞれ FlexUnit 4 とMockolateを使用して記述しようとしています。カスタム イベントにas3-signalsを使用しています。
私が書いてテストしている機能は、 ArcGIS API for Flex内のQueryTaskクラスのラッパー クラス (QueryQueue)です。これにより、実行のために複数のクエリ タスクを簡単にキューに入れることができます。私のラッパーである QueryQueue は、すべてのクエリ応答が処理されたときにイベントを送出します。completed
インターフェイスは非常にシンプルです。
使用例を次に示します。
私のテストでは、現在 QueryTaskFactory および QueryTask オブジェクトをモックしています。クエリがキューに比較的簡単に追加されることを確認するなどの簡単なテスト。
executeただし、メソッドもテストできるようにしたいと考えています。このメソッドは、キューに追加されたすべてのクエリを実行する必要があります。すべてのクエリ結果が処理されると、completedイベントが送出されます。テストでは、次のことを確認する必要があります。
execute各クエリで一度だけ呼び出されますinProgress = true結果が処理されていない間inProgress = false結果が処理されたときcompleted結果が処理されたときにディスパッチされますcanceled呼び出されることはありません (有効なクエリの場合)- キュー内で行われる処理は、クエリ結果を正しく処理してパッケージ化します
これまでのところ、主に weltraumpirat から提供された回答のおかげで、項目 1 から 5 のテストを作成できます。現在、実行テストは次のようになっています。
メソッドは次のQueryQueue.executeようになります。
queryTaskResultHandler上記のテスト 6 では、およびで返されるデータqueryTaskFaultHandlerが適切に処理されることをテストします。
つまり、completed成功と失敗の結果を含むすべてのクエリ応答が返されるまで、イベントをディスパッチしません。
このプロセスをテストするには、モックされた各クエリ タスクの結果ハンドラーとエラー ハンドラーに返されるデータをモックする必要があると思います。
AsyncResponderでは、 FlexUnit を使用して作成された結果ハンドラーに渡されたデータをモック化し、モック化するにはどうすればよいでしょうか。
actionscript-3 - 動的単体テスト (フレックスユニット) を書くのはややこしいです。これをよりモジュール化するにはどうすればよいですか?
私は長い間ここに潜んで助けを求めてきましたが、現在の問題に対する答えが見つかりません。
バック情報
私はいくつかの単体テストを書いています(イェイ!)。インターフェイスを実装する 40 個のオブジェクトがあります。そのインターフェイスの 1 つの関数は、1 つの Rectangle と 1 つの Rectangle の配列の 2 つのパラメーターを受け入れます。
public function foobar(foo:Rectangle, bar:Array/*Rectangle*/):void;
これらの 40 個のオブジェクトのそれぞれについてテストを書きたいと思います。すべての可能性を確実にテストするには、foo のバリエーションと bar のバリエーション (長さと内容) がある場所でテストを実行する必要があります。したがって、foo の x 個の数と、foo 内の Rectangle の 1 ~ x 個の数。
インターフェイスを実装する各オブジェクトは、bar 内の各 Rectangle でいくつかの計算を行い、それらのプロパティを変更するアルゴリズムを実行しています。各アルゴリズムは、大幅に異なる結果を生成します。
10 個の可能な foo オブジェクトと、bar 配列に 10 個の可能なオブジェクトを選択すると、何千もの書き込みが発生します! テストの。何千ものテストを手書きする必要はありません。
質問
可能なオブジェクトを取得し、結果を生成するすべての可能な構成でラントテストを実行するアルゴリズムを作成し、戻ってすべての結果が正しいことを手作業で確認するのは、私には逆行しすぎでしょうか? それは単体テストを行う間違った方法ですか?
結果を生成するアルゴリズムを実行するのは間違っていますか?出力を手で確認しますか?
私の他の考えは、アルゴリズムに可能なオブジェクトをフィードし、テスト ハーネス用にフォーマットされた xml または json を吐き出し、各テストを実行し、不足しているアサーション値を入力してからフィードすることです。
私の他の計画は、foo Rectangle のリストと、bar で使用される可能性のある Rectangle のリストを受け入れるアルゴリズムを作成し、そのアルゴリズムでテスト ハーネス (アサーションを含む) で動作する形式で JSON を生成することです。JSON を生成するアルゴリズムはアサーションを認識しないため、テスト ハーネスを介して送信する前にアサーションを手動で書き込みます。
これは一般的な方法ですか?
フィードバックをありがとう:)
actionscript-3 - FlexUnit: ファイル アップロードの単体テストはできますか?
FlexUnit を使用してファイルのアップロードと削除の単体テストを行うことはできますか? これらのアクションは単体テストの良い例ですか?
私は単体テストに少し慣れておらず、UI のどの部分が単体テストに適しているかを理解しようとしています。
役立つヒントをありがとう。
actionscript-3 - 大規模なアプリケーションの複数のモジュールをテストするために同じ前提条件データを使用する方法は?
私はアクション スクリプトでカスタマイズ ゲームに取り組んでいます。アプリケーションにはいくつかのモジュールがあります。アプリケーションはデータ集約的です。アプリケーションを起動するには、他の多くの swf や JSON などをロードする必要があります。(今のところ) UI ビットをテストしたくありません。私がテストしたいのは:
- モジュールのクラッシュなし
- 私は正気の答えを得る
UI や視覚的な異常は気にしません。
モジュール用に個別のテスト スイートと個別のテスト クラスを作成したいと考えています。より組織的になるために。
質問:
最も単純な機能をテストするには、X、Y、Z データをロードする必要があります。X、Y、Z データはすべてのモジュールに共通です。
さまざまなテスト クラスとスイートを作成し、データを 1 回だけプリロードして、そのデータのコピーをテスト全体で使用するにはどうすればよいですか。ほとんどのデータは、テストの過程で変更されません。
maven - Maven リリース中に実行される Flexmojos で使用するための Flash Player の構成:perform
Flexmojos を使用して単体テストを実行し、SWC を構築する Maven プロジェクトがあります。単体テストを実行するときに、Flexmojos に Flash プレイヤーの場所を伝える必要があります。これは次の方法で行いますsettings.xml。
これは開発ではうまく機能しますが、 Maven を実行するとrelease:perform、次のように失敗します。
release:performで指定された Flash Player が見つからないのはなぜsettings.xmlですか? どうすればこれを修正できますか?
アップデート:
私も次のことを試しました:
- Flash Player を
.swfファイルのデフォルト プログラムとして設定する (これは Mac 上にあることに注意してください) flashplayerパスへの追加
...すべて無駄に。
更新 2:
という名前のパスに Flash Player デバッガーを配置するとflashplayer、エラーは次のように変わります。
...何が失敗したかについての手がかりはありません。
actionscript-3 - テストが失敗した場合、FlexUnitテストの実行を停止しますか?
FlexUnit 4.1とAdobeのTestRunnerBaseを使用して一連の統合テストを実行し、3層のBlazeDS / Java EE/MySQLサーバーの整合性を検証します。
これらのテストの実行中にApacheShiroによって実施されるセキュリティチェックをバイパスするために、2つの別々のテスト実行を構成しました。1つはrootとしてログインし、もう1つは実際の統合テストを実行します。
BlazeDSが重複セッションを処理する方法のために(これは別の質問の問題であり、むしろすでに発生しています)、ログインメカニズムが失敗することがあります。その場合、TestRunnerにそれ以降のすべてのアクティビティを一時停止させます。
テストが失敗したときに停止するようにFlexUnitCoreを構成する方法を探しましたが、役に立ちませんでした。また、TEST_STARTとTEST_COMPLETEのみのイベントがあり、TEST_FAILのイベントはないようです。
テストが失敗したかどうかを確認し、ランナーを停止する他の方法はありますか?
apache-flex - jenkins サーバー上の flexunit --- ant がエラーなしでビルドできない
ジェンキンに vncserver、flex sdk 4.6、および xvnc プラグインを既にインストールしています。
他に何をする必要があるのかわからない。
これは、ジェンキンスからの最後のビルド エラー メッセージです。
ワークスペース プロジェクト内で、ant build.xml を実行しました
私は得る
ant を実行したときに同じフォルダーに
私は得る
お知らせ下さい。
ありがとうございました。