問題タブ [end-to-end]
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.
java - JUnit でエンドツーエンドのテストを実行する
多くの外部 (プロパティ) ファイルからデータ駆動型テストを適用し、知識のあるユーザーが Java コードベースに触れずにテストを追加できるようにする Java コマンドライン アプリを開発しています。もちろん、アプリを実行するたびにクリーンな状態 (つまり、静的クラスの副作用がない、クリーンなファイル環境など) から開始することを保証したいと考えています。以下にいくつかのオプションを示します。
(a) アプリの main() メソッドを呼び出して、単一の JUnit クラスの単一のメソッドですべてのテストを実行します。
全体が単一の JVM で実行されているため、機能しません。
(b) アプリをフォークする単一のメソッドですべてのテストを実行します。
個別の JVM を提供しますが、JUnit (および Surefire) は個々のテストを認識しないため、レポートはほとんど役に立ちません。
(c) JUnit クラスごとに 1 つのテスト:
}
これは機能しますが、面倒で繰り返しが多く、テストごとにクラスを追加する必要があります。
(d) JUnit パラメータ化テスト (@RunWith(Parameterized.class)) は、同じ JVM で実行されるため役に立ちません。
(e) Surefire 並列化は JVM 内にあります。
私たちのテスト状況は珍しいものではないので、明らかに何かが欠けています! どんな提案でも大歓迎です。
angularjs - AngularJS での分度器テストのコード カバレッジ
angularJS アプリで分度器を使用していくつかの e2e テストを実行しています (angularJS のドキュメントで推奨されているように)。グーグルで検索しましたが、分度器テストのカバレッジを測定する方法に関する情報が見つかりません。
ここで何かが足りないと思います... 分度器 e2e テストのコード カバレッジ レポートを取得する方法はありますか? それとも単体テスト用の機能ですか?
selenium-webdriver - ヘッドレス サーバーでのエンド ツー エンド テスト
デジタルオーシャンでUbuntuサーバー12.04.3を実行しているドロップレットでエンドツーエンドのテスト用の環境をセットアップしようとしています。
私が最終的に達成しようとしているのは、ジェンキン(1 つのドロップレットにインストールされている) がエンドツーエンドのテストを実行できるようにすることです。現在、サーバーはもちろんヘッドレスであり、エンドツーエンドのテストはブラウザを介して実行する必要があります(chromedriverを備えたセレンスタンドアロンサーバーで分度器を使用しています)。
私の質問は、そのマシンでブラウザを起動するにはどうすればよいですか? xorg をインストールしstartx
ました。サーバーでログアウトしてxorgssh -X
にアクセスすると、エンド ツー エンドのテストを手動で実行できます (ローカル マシンにブラウザーが表示されます)。しかしssh -X
、ジェンキンスはテストが実行される同じドロップレット上にあるため、それなしで動作させることができます。まあ、ブラウザを生成することはできません。
注: 構成も xorg も完全には理解していないため、ここでは些細なことを見落としている可能性があります。
ヒントや完全な答えは大歓迎です。これは私に白髪を与えています。
編集: 少し掘り下げた後、xorg の内容が少し間違っていると思います。X の目的は、リモート マシン (つまり、ローカル マシン) でウィンドウを生成できるようにすることだと思います。そして、私が求めているのは、Xvfb などの仮想フレーム バッファーの線に沿ったものです...
testing - ソース コードにアクセスできない場合でも、自動化されたエンド ツー エンド テストは可能ですか?
レガシー アプリケーションを扱っていますが、そのソース コードにアクセスできません。PowerBuilder で書かれた Windows アプリケーションです。
ソース コードにアクセスできないアプリケーションで、自動化されたエンド ツー エンドのテストを実行することは可能ですか? アプリケーションのビジネス機能とフローを中心にテストする予定です。
javascript - angularjs外でのエンドツーエンドテスト
実際のブラウザーや実際のデバイスで、angularjs に基づいていないアプリや Web サイトをテストする方法を探しています。CasperJSを見つけましたが、CasperJS はヘッドレス ブラウザでしか動作しません。
以下をサポートするテストランナー/テストフレームワークの組み合わせはありますか?
- うなり声
- すべての主要ブラウザ (Chrome、Firefox、Safari、IE)
- ヘッドレス ブラウザ (PhantomJS)
- (オプション) タッチ ジェスチャをシミュレートする
java - Java e2e (エンドツーエンド) テストの書き方
だから...最近、私はユニットテストの素晴らしい世界(うなり声のカルマ(真ん中のAngularJS))に強制的に紹介されました。私のコードがテストケースなしでどのようにまとめられたのか、本当に信じられません...
とにかく、私の質問に戻ると、私が行っているJavaプロジェクトでも、ほとんどのクラスに単体テストを追加しています...しかし、答えが見つからない質問に出くわしました(または、間違った質問をしているのかもしれません) しかし、Java で e2e テストを適切に作成するにはどうすればよいでしょうか? これにJUnitを使用できますか?または、まったく別のものを使用する必要がありますか?私のプロジェクトには多くのデータベースの移動も含まれています。最近、テストでデータベースを使用する場合、それはもはや単体テストではないことを読みました...このテストも変更する必要がありますか?
ここに質問を投稿するのはこれが初めてです =) しかし、私は何年もの間、このサイトを使用して回答を見つけてきました...追加または変更する必要がある余分なデータがある場合は、お知らせください...そして私はこの質問への回答だけでなく、この素晴らしいサイトが人々の共有に役立つすべての質問へのすべての回答に対して、事前にここにいるすべての人に感謝します...
testing - Web アプリケーションをエンド ツー エンドでテストするにはどうすればよいですか?
私の知る限り、エンド ツー エンド テストはブラック ボックス テストであるため、アプリケーションについては何も知らず、そのインターフェイスを使用して結果を確認するだけでよいのですが、読み取り専用 API を確認できない場合は、どのように確認すればよいでしょうか。データベースに触れて、読み取りたいデータを設定しますか?
e2e アプローチでフィクスチャを作成することは本当に重要ですか? 私の現在のケースでは、www と members サブドメインがあります。www サブドメインのコンテンツは、適切な権限を持つメンバーのサブドメインから管理されます。tddで開発したいのですが、e2eテストから単体テストまで…。最初にwwwサブドメインを開発したい場合、データ書き込みがまだ実装されていないため、e2eフィクスチャを作成できません。この方法で開発したい場合、最初にメンバーのサブドメインを実装する必要がありますか? イベント ソーシングを使用するつもりなので、いくつかのドメイン イベントを挿入するだけで、DB フィクスチャを作成するのは非常に簡単です。
この種のテストのロジックがわかりません。データベースに何も挿入できない場合、最初は空になります。しかし、適切な権限を持つユーザーがいないため、データベースに書き込むことができず、何もテストできません。これはキャッチ 22 です...少なくとも、適切な権限を持つテスト ユーザーが必要ですが、テスト ユーザーを作成するには、データベースへの書き込みが必要です...私の脳は燃え尽きたと思います :D
angularjs - 分度器がリンクをクリックしても、要素が表示されませんか?
フー君、
HTMLページのリストにあるリンクをクリックしたいときに問題があります。これが私のhtmlです:
分度器テストでリンクを ID でクリックしようとすると、エラーNo such elementまたはElement is not visible が表示されます。
ここに私のコードのテスト行があります:
なぜそれが悪い解決策であり、どうすればよいか知っていますか?
私がこれを行うとき:
彼は私にそれが正しいと返し、ページには5つのリンクがあります. しかし、ID でアクセスしようとすると、アクセスできませんか?