問題タブ [e2e-testing]

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 投票する
2 に答える
861 参照

angularjs - afterEach は続行する前に完了するのを待っていません

afterEach を使用してログアウトしますが、afterEach がログアウトを完了する前にテストがログインを試みます。

私は sleep ステートメントの使用を避けようとしています (本当に遅くなります)。

前の beforeEach が終了するまでテストを待機させるにはどうすればよいですか?

コード スニペット:

logout() メソッド (AccountBlock オブジェクトから):

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

javascript - 未処理のリクエストを表示する

分度器が待機しているリクエストを表示する方法はありますか? 不安定な状態のテストをデバッグしようとしていますが、ボタンが応答をトリガーしなかったのか、それとも分度器がわざわざ待機しなかったのかを判断するのは困難です。

TL;DR: 分度器制御フローで残りの約束を表示するにはどうすればよいですか?

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

javascript - 分度器はリンクをクリックし、サーバーの応答をファイルと比較します

ユーザーがファイルをアップロードするシステムを構築しています。分度器を使用してファイルのアップロードをテストすることができましたが、サーバーから未加工のファイルを要求するときに、応答がアップロードされたファイルと同じであることを確認する必要があります。

ユーザーがリンクをクリックしてファイルをダウンロードすると、ファイルに対する通常の GET 要求がトリガーされます。プレーン テキスト ファイルを扱っているため、ダウンロードしたファイルは添付ファイルとして提供されず、代わりにブラウザに表示されます。関連する PHP コードは次のとおりです。

2 つの問題があります。

  1. ファイル全体がダウンロードされるまで分度器を待機させるにはどうすればよいですか?
  2. ダウンロードしたファイルとアップロードしたファイルを比較するにはどうすればよいですか?

これが私がこれまでに得たものです:

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

angularjs - ジャスミン/分度器で期待が失敗したかどうかを検出する方法

ページの読み込みが完了するとすぐにサーバー側の RSA キーペアの生成を行うページをテストしようとしていますが、現在のセットアップでは 5 ~ 20 秒かかります。ブラウザがキーペアを受け取るまで、ユーザーは何もできません。

これまで browser.sleep() を使っていたのですが、5 でキーペアが生成された場合に 20 秒待つのが面倒です。分度器の evaluate() メソッドを while ループ条件として使用しようとしましたが、evaluate() は引数の値ではなく ElementFinder を返すことに気付きました。Jasmine/Protractor が Jasmine が toBe/toEqual/etc を評価するのと同じ方法でブール値を計算できるようにする方法はありますか?

要するに、

Angular のスコープ内の evaluate() の引数の値に相当するブール値を計算し、「true」と比較します。その計算された値を使用する方法、または自分で計算する方法はありますか?

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

angularjs - e2e テスト用に Selenium サーバーを自動的に起動する

このSO 投稿に従って 、Gruntfile. Selenium スタンドアロンを手動でダウンロードし、ファイル内でその場所を指定した場合、テストは正常に実行されます。このプロセスを自動化したいので、次の構成を試しました。

手動でダウンロードしないようにする方法はありますか? 上記を試しましたが、実行すると警告が表示されました:

Running "protractor_webdriver:start" (protractor_webdriver) task
Verifying property protractor_webdriver.start exists in config...OK
File: [no files]
Options: path="node_modules/grunt-protractor-runner/node_modules/protractor/bin/", command="webdriver-manager start", keepAlive=false
Starting Selenium server
>> Selenium Standalone is not present. Install with webdriver-manager update --standalone

では、セレン スタンドアロン サーバーを手動でダウンロードする必要がありますか?
それとも、ここで設定を見逃したのでしょうか。

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

selenium - e2e テストを構築するためのベスト プラクティスは何ですか?

エンドツーエンドのテストを構築する最善の方法について、私は少し混乱しています。

私が書くほとんどのテスト テストは、他のテストに依存しています。

すなわち

  • ユーザーはログインする必要があります
  • ユーザーは Foo を作成する必要があります
  • ユーザーがバーを作成できるようになりました
  • バーを明らかに編集するには、バーが存在する必要があります。

これを考慮してテストをどのように構成しますか?

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

protractor - ソースラボを使用して iPad で分度器テストが失敗する

iPad を使用して分度器テストを実行できません。デスクトップ ブラウザ テストは正常に動作しています。これが私の構成です:

出力は次のとおりです。

機能の構成に何か問題がありますか?