問題タブ [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.
maven - FlexUnit からのコード カバレッジを Sonar で動作させるにはどうすればよいですか?
状況
Flex-Mojos を使用して、Maven ビルド ジョブからFlexUnitによって生成されたコード カバレッジ レポートをSonarに表示させようとしていますが、うまくいきません。
ビルド出力
その結果、ダッシュボードには常に次のように表示されます (左側の列):
(いいえ、単体テストは 90 分以上実行されず、16 秒以上実行されません。何が問題なのかわかりません)
Sonar 関連のコンソール出力は次のとおりです。
したがって、すべて正常に動作しているようです (Cobertura 以外のファイルが見つからないエラーはなく、どのような方法でも取り除くことができないようです。解析例外などはありません)。
ビルドのセットアップ
プロジェクトのpom.xml
ビルドに使用される は次のようになります。
Sonar を実行するいくつかの方法を試しました。
dynamicAnalysis=reuseReports
+mvn clean install
+mvn sonar:sonar
dynamicAnalysis=true
+mvn clean install sonar:sonar -Dmaven.test.failure.ignore=true
dynamicAnalysis=true
+mvn clean install -DskipTests=true
+ (<-- は機能しません: このシナリオでは、何らかの理由で、Flex-Mojos のゴールmvn sonar:sonar
の実行中に単体テストが NullPointerException で実行に失敗します)。test-run
Sonar ダッシュボードでカバレッジ結果を表示する方法はありますか? 標準の Surefire レポートを表示するには、追加のプラグイン (Emma、Clover など) が必要ですか? これが機能しない既知の問題はありますか? 私は何か間違ったことをしていますか?
アップデート
Sonar-Runner で Sonar を実行してみました。興味深いことに、ダッシュボードはコード カバレッジ ウィジェットを完全に削除します。ランナーのコンソール出力を確認すると、ランナーがFlexSurefireSensor
( sonar:sonar
Maven ゴールが実行する) を実行しないことが示されます。
sonar-project.properties
ファイルには次が含まれます。
私はそれにmvn clean install
続いてそれを実行していsonar-runner
ます。
unit-testing - SingleCore PureMVC プロジェクトの単体テストに使用できるモッキング フレームワーク
参加している古い大規模な PureMVC シングルコア プロジェクトがあります。私は、チームが持っているものの単体テストを作成するのを助け、前進するために単体テストの書き方を教えようとしています。
表示オブジェクトへのあいまいな参照、通知、およびテスト可能なコードを持つ関数のほとんどがプライベート関数であるという事実で、多くのモックの問題に遭遇しています。
インターネットで単体テスト用のモック ユーティリティまたはツールを検索すると、主にサポートされていないように見えるプロジェクトが検索されます (2008 年または 2010 年から)。
コミュニティで活動している人々から、今日この種の問題を解決するためにどのツールが存在するかを尋ねています。
ありがとう。
ここでこの質問をするのが適切でない場合は、この質問に回答できる場所を教えてください。
actionscript-3 - UncaughtError ハンドラが登録され、適切に動作していることをテストするにはどうすればよいですか?
キャッチされていないエラーをキャッチし、トレーススタックをサーバーに送信するロガーがあります。
これが機能することを確認するために、単体テストを作成しようとしています。しかし、テスト クラスでエラーまたは errorEvent をスローすると、FlexUnit ランナーはエラーをキャッチし、テストを続行させません。
これを単体テストするにはどうすればよいですか?
actionscript-3 - Ant を使用して FlexUnit ランナー (4.0.0.b2) を構築すると、静的メソッドで失敗しますか?
Ant を使用してビルドされたプロジェクトがあります。実際のプロジェクトをビルドしてコミットする前に、一貫性を検証するためにテスト ランナーが実行されます。
ここまではすべて問題なく動作していましたが、静的メソッドを使用するクラスのテスト ケースを追加すると、意味のあるメッセージが表示されずに Ant ビルドが途中で終了し始めました。
これは FlexUnit ランナーの一般的なケースで、テストされたクラスで静的呼び出しに問題があるのでしょうか、それとも私のプロジェクトで非常に特殊なことでしょうか?
actionscript-3 - モコレートでFileReference.dataをモックしますか?
私が取り組んでいるフレックス プロジェクトで FileReference をモックしようとしています。
名前やサイズなどの一部のプロパティのスタブは正常に機能しますが、データは機能しません。問題を示すコードは次のとおりです。
ブレークポイントを設定し、デバッガーで frMock をチェックすると、次のようになります。
ご覧のとおり、データはモックによって異なる方法で処理されます。
私はこの問題に数時間頭を悩ませてきましたが、これを理解するのに本当に役立つかもしれません.
更新:
このコードは、Flex ライブラリ プロジェクトまたは Flex プロジェクト (Air) として実行すると機能します。失敗するのは、コードがブラウザー プラグインで実行されるときです。ライブラリ プロジェクトのデバッガーでチェックすると、データ プロパティが [Inherited] 内にネストされておらず、他のプロパティと同じレベルにあることも示されます。
更新:
URLLoader で同じ問題が発生しましたが、今回は逆です。URLLoader のモックは、ブラウザー プラグインでテストを実行する場合にのみ機能します。
入力に応じて FileReference または URLLoader のいずれかを使用して、ローカルおよびリモートのファイル読み込みを処理するクラスを作成しているため、このクラスを完全に単体テストすることは効果的に防止されています。:(
actionscript-3 - 単体テストに関する質問
単体テスト (FlexUnit を使用) の勉強を始めたばかりです。私はまだそれらを使用する方法がわかりません。
新しいFlexプロジェクトを作成し、名前のクラスを作成しましたCar
。次に、車のクラス用のテストケースクラスを作成しました。
これは、FlexBuilder から提供されたデフォルトのテンプレートで、トレースをいくつか入れました。
テスト関数の前または後に実行するメソッドが非常に多い理由がわかりません。次のような単純な関数内でそれらを使用しないのはなぜですか。
追加したい 2 番目の質問は、これらのテストは各クラスを個別にテストするか (クラスをインスタンス化するときに示されるようにCar
)、またはメイン クラスをインスタンス化することでアプリケーション全体を 1 回テストできるかということです。問題は、アプリケーションのユーザーフロー全体をシミュレートする方法です (ユーザーはここをクリックし、サーバーにリクエストを送信するなど)。テストメソッドにフロー全体を 1 つずつ記述する必要がありますか?:O
apache-flex - テスト ケースの UIComponent が null です
私はこの App.mxml を持っています:
そして、このテストケース:
しかしapp.bt
ヌルです。ボタンにアクセスしたい:(
actionscript - 異なるパッケージに同じクラス名があるため、flashbuilder はクラスを検出できません
という名前のクラスがありますcom.me.Async
。非同期ユニット テストを開始すると、残念ながら flexunit のライブラリに同じクラスorg.flexunit.async.Async
があるため、flashbuild でエラー-1120: Access of undefined property org が表示されます。.
このタイプの問題を解決する方法は?ありがとう !
actionscript-3 - flexUnit純粋なAS3IntelliJ
FlexRunnerを意味しないPureAS3としてプロジェクトを設定したIntelliJでFlexUnit4.1を使用することは可能ですか?
私が得るのはエラーです
しかし、モジュール設定からPure AS3のチェックを外すと、すべてが機能します。純粋なAS3をチェックする理由は、Flexの完了が得られないためです。また、まだわからない理由がある可能性があります。
java - Mac OS X で Ant ビルドを実行すると、「許可が拒否されました」というエラーが表示されます
Ant から FlexUnit テストを実行しようとしています。Windows ではすべて問題なく動作しますが、Mac OS X では次のエラーが発生します。
Ant タスクは次のとおりです。
に 777 のアクセス許可を与えましたが${APP_BIN_DIR}
、何も変わりませんでした。コマンドも実行しようとしましたが、それもエラーに影響しませんでした。${APP_REPORTS_DIR}
Flash Player Debugger.app
sudo ant