問題タブ [angular-scenario]

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.

0 投票する
0 に答える
124 参照

testing - AngularJS の $httpBackend - 設定方法は?

私は角度のあるアプリを作成しており、それらに対してエンドツーエンドのテストを実行しています。いくつかのテストのためにインスタンスを実行する必要があり$httpBackendますが、その方法がわかりません。現在、私のコードは次のようになります

次にrunner.html、テストに移動して実行します。私の他のすべてのテストは Karma によって表示されますが、これは表示されません。どうしたの?

0 投票する
1 に答える
155 参照

angularjs - AngularJS のシナリオでは、クラスとフューチャが必要です

要素にクラスがあるかどうかを確認するテストを作成しようとしています:

問題は、エラーが発生し続けることTypeError: Cannot read property 'indexOf' of undefinedです。未来があると思っていましたが、そうでない理由がわかりませel.attr('class')ん。これを回避する別の方法はありますか?

0 投票する
1 に答える
651 参照

angularjs - Angular Scenario Runner を使用してテスト スイートのサブセットを実行する方法は?

TDD に基づいてアプリケーションを開発しています。

サーバー側では、Python テスト ランナーが優れているため、すべて問題ありません。

JS では、mocha を使い始めましたが、これも素晴らしいです。

Karma と Angular Scenario Runner を使用して最初のテストを作成しましたが、これも素晴らしいものです。

問題は、実際に Angular Scenario Runner を使い始めてすぐに、60 回の e2s テストを行うことになったことです。すべてのテストの実行には 1 分かかります。

今、新しいテストを書くとき、テストをチェックするたびに、最大 60 秒待たなければなりません。

Mocka には、.only http://visionmedia.github.io/mocha/#exclusive-testsを使用して特定のテストのみを実行するこのオプションがあります。


Angular Scenario Runner は簡単に文書化されているようですが、どういうわけか Jasmine を模倣しています。


Angular Scenario Runner コードを見ると、テストをスキップするための xit 定義しか見つかりませんでした。

テストのサブセットのみを実行するよう Angular Scenario Runner に依頼するトリックはありますか?

スイート全体をスキップする xdescribe ブランク メソッドを実装しましたが、これは長期的には実現可能です。

どうもありがとう!

0 投票する
1 に答える
1524 参照

testing - AngularJS E2E テストの実行順序

it()そのため、ブロック内の関数describe()は (常に) 記述した順序で実行されないことに気付きました。

それらは非同期ですか?そして、それらを特定の順序で強制的に実行する方法は?

it()一連の UI ミューテーションを連鎖させ、基本的に各関数で前のステップの後に UI の状態をチェックさせたいと考えています。

それらが非同期で実行される場合、そのようなことは要点を打ち負かします。つまり、各it()ブロックには前のブロックのすべてのステップを含める必要があるということですか?

0 投票する
1 に答える
165 参照

angularjs - Angular E2E シナリオ セレクターは、ハイパーリンクが表示されているかどうかを検出しません

次のe2eテストがあります:

次のテンプレート:

どこ$scope.wizardstep = 2

残念ながら、期待値は常に 0 です。

このコード/テストの何が問題なのか誰にもわかりませんか?

0 投票する
1 に答える
570 参照

angularjs - angular-scenario.js を含めると、Rails Jasmine テストが実行されないため、機能しなくなります

Rails バックエンドと AngularJS フロントエンドで構成される (現在の) 非常に単純なサイト用の Jasmine テストがいくつかあります。Jasmine のエンド ツー エンド テストを実行しようとしていますが、angular-scenario.js を含めるとテストが実行されません。それは彼らを失敗させません。それはそれらをまったく開始しません。

私はバージョン 1.0.7 を使用しており、すべての Angular ファイルは同じバージョンのものです (すべて公式の Angular サイトのものです。私が使用している Rails のバージョンは 3.1.3 と Ruby 1.9.3 です。私もjasmine gem バージョン 1.3.2 と jasmine-rails 0.4.5 を使用します。

仕様/javascripts/support/jasmine.yml:

spec/javascripts/spec_helper.coffee:

仕様/javascripts/templates/brands/index_spec.coffee:

もちろん、angular-scenario.js を配置してテストが正しく機能するまで、これは単なるプレースホルダーです。

angular-scenario.js がなければ、テストが実行されます。それで、何もありません。

テストするには、通常 RAILS_ENV=test rake spec:javascript を実行しますが、Web サーバー インターフェイスからも試しました。

angular-secnario.js を含まない出力:

angular-scenario.js を使用した出力:

私が試したこと:

  • angular-scenario.js を vendor/assets/javacripts に移動し、spec_helper.coffee から要求します。
  • spec_helper.coffee から他の Angular 関連の要件を削除します。
  • angular-scenario.js には、パッケージ化された jQuery が付属しています。奇妙なことに、jQuery ビットをコメント アウトすると、テストが実行されますが、angular-scenario には明らかに jQuery が必要なため、テストは失敗します。また、angular-scenario で jQuery をコメントアウトし、jquery-rails gem から jQuery を含めてみました。(それは暗闇でのショットでした。実際にうまくいくとは思いませんでした。)

これでスイングしたい人は誰でも本当にありがとう。

0 投票する
1 に答える
139 参照

testing - Karma + AngularJS Scenario Test Runner とフォームのトラブル

わかりました。フォームのフィールドに入力しているテスト ランナーに問題がありますが、フォームを送信すると、これらのフィールドが空白として参照されます。

element('some_element).val('some_val') を使用してフィールドに書き込むと、これは正常に機能します。

次に、フィールドを expect(element('some_element').val()).toBe('some_val') でチェックすると、問題なく合格します

しかし

このフォームを送信すると、これらの要素はすべて空であると返されます。ただし、1文字だけ手動で変更でき、問題なく受け入れられます。

このような問題の原因を説明できる人はいますか? また、それを回避する方法に関する可能な解決策はありますか?

0 投票する
2 に答える
441 参照

javascript - シナリオ テスト ランナーを使用した Angularjs e2e テスト - alert() を無視

アプリケーションの e2e テストを作成していますが、ログイン ページのテスト中に問題が発生しました。正しいログインと間違ったログインの両方をテストしたいのですが、問題は、間違った資格情報を入力するとアラートが表示され (「メールアドレスまたはパスワードが正しくありません」)、e2e テストでもトリガーされることです。テストを続行するには、alert() の [OK] ボタンをクリックします。テストで alert() を無視する方法はありますか?

0 投票する
1 に答える
2488 参照

angularjs - Grunt を使用した Angular Karma e2e

テストしようとしています

グラントファイルで

Karma ファイルは、基本的に Yeoman が私のために生成したものです。唯一の変更点は、PhantomJS 用に Chrome を切り替えたことです。
カルマ-e2e.conf.js:

実行しようとする非常に基本的なテストがあります

これは、テストからの出力です。このエラーをグーグルで検索したところ、テストに「スリープ」を追加することが提案されました。それは私にとって解決策のようには聞こえません。

誰でも私を助けることができますか?私がやりたいことは、PhantomJS で grunt から e2e テストを実行することです。ファイル変更のリスナーである必要はありません。"grunt test" を 1 回実行するだけで完璧です。

編集:含めるファイルを変更しました

これを取得する:

0 投票する
1 に答える
133 参照

angularjs - AngularJS でのヘルパーの使用

私はlaravelとangularjsを使用してソーシャルアプリに取り組んでいます。

ヘルパーを使用してユーザー関係を確認すると、状況が発生します。

ユーザーが現在のユーザーの友人でない場合は、それに応じて追加されます。問題は、ページの読み込み時に変更が表示されるため、ページをリロードせずにユーザーがクリックしたときに {=checkrelation(data.id)=} の変更を反映する方法です。テキスト上。どんな助けでも役に立ちます。