問題タブ [cucumberjs]
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.
javascript - Cucumber.js とリソース
これに悩まされないことを願っていますが、Cucumber.jsとjavascriptのテストを開始しており、見たチュートリアル/ドキュメントは私が欲しがっています。
Amazon で検索しましたが、Ruby 向けの書籍のように思えました。JavaScript に cucumber.js を使用しているユーザーにとって、これらの書籍が有益な情報を豊富に含んでいることに興味がありますか?
The Cucumber Book: テスターと開発者のための動作駆動型開発
キュウリのレシピ: BDD のツールと手法であらゆるものを自動化
インスタント キュウリ BDD のハウツー
node.js - cucumberjs:ステップ結果が失敗したかどうかを調べる
タスク:
- Selenium、webdriver、cucumberjs を使用して自動受け入れテストを実行します。
- 失敗した受け入れテストのシナリオを見つけて、ページのスクリーンショットを撮る
- これをアーティファクトとして go パイプラインに保存します。
それがその日の私の仕事でした。私は、シナリオ テスト、セレンのセットアップ、パイプラインへの移行、およびその他の必要なすべてを作成して、そのすべてを行いました。
唯一の問題は、失敗したシナリオ ステップを見つけてページのスクリーン ショットを撮る方法を理解する方法が見つからなかったことです。
問題の詳細: ステップ定義に次のコードを配置しました。これは、すべてのシナリオ ステップで実行されます。
これWorld
には、ブラウザの開始方法が含まれています。
そして、これは私がテストしているサンプル機能シナリオです
問題はコンテキスト データにあります。どういうわけかscenario
、最初の引数として after/before メソッドに渡されたものを取得できませんでした。cucumberjs ソースにあるコードを試しましたが、成功しませんでした。stepResult
そこで、ステップが完了するたびに実行されるメソッドの追加に移りました。比較的似たアプローチ。
ドキュメントに従って、isFailed()
メソッドはステップの結果に基づいてブール値を返します。false
しかし、ステップが失敗したか合格したかに関係なく、私は常に取得します。何isSuccessful()
があっても を返す分身を試してみました。true
それで、
- ここで何が間違っている可能性がありますか?
- 実際にシナリオを after() メソッドに渡すにはどうすればよいですか?
私はTDDに比較的慣れていませんが、これまでのところ素晴らしい経験でした.
javascript - Cucumber.js では、利用可能なすべてのステップを一覧表示できますか?
cucumber の他のバージョンでは、すべてのステップのリストをダンプできます。ただし、これは JavaScript ではサポートされていません。例えば:
World オブジェクトまたは Cucumber にアクセスできる場合、Cucumber が .feature ファイルを解析するために使用するすべての正規表現 / 関数を一覧表示する方法があると思います。私を正しい方向に向ける可能性のあるjavascriptバージョンの内部の仕組みを知っている人はいますか?
knockout.js - Cucumberjs で KnockOut ViewModel をテストできますか
次の機能を定義しました
以下のように、CucumberJs を使用してステップ定義を生成しました。
しかし、監視可能なビューモデルのインスタンスを作成してそこでテストする方法が見つかりませんでした
ノックアウトをロードしようとしましたが、ビューモデルをロードした後:
ko は機能しましたが、ShopCart が返されます{}
ViewModel
内部 CucumberJs ステップ定義のインスタンスを作成するにはどうすればよい ですか?
javascript - フックの後、ウィンドウを閉じますが、次のシナリオで再度開きません
webdriverJS を使用していくつかのキュウリ テストを作成しています。各シナリオの後に、アフター フックを使用してブラウザー ウィンドウを閉じようとしています。問題は、ウィンドウが閉じますが、再度開かないことです。ウィンドウが「見つからない」というエラーが表示されます。どんな助けや洞察も大歓迎です。
これが私の.featureファイルです
ここに私のhooks.jsファイルがあります
.js ファイルの最初の数行を次に示します。
javascript - ZombieJS を使用した Cucumber.js シナリオでのコールバックに関する問題
Cucumber や Lettuce などの BDD ツールの経験があります。私は現在、Phonegap アプリを作成しています。Cucumber.js を使用して受け入れテストを作成したいと考えています。残念ながら、私には少し問題があります。
以下は、私がまとめた基本的な機能ファイルです。
これが私のものworld.js
です:
これが私のステップ定義です:
最初に接続サーバーをポート 9001 で実行し、次に Cucumber シナリオを実行する Grunt タスクをセットアップしました。Cucumber.jsのドキュメントは、これが機能することを示唆していますが、2 番目のステップで失敗します。
これが私が得るエラーメッセージです:
callback();
2段目のボディの後に挿せば合格。何が起こっているのかわかりません。このシナリオが失敗するのはなぜですか? アプリ自体は期待どおりに動作します。2 番目のステップのコールバックが起動していないようです。
node.js - cucumber.js を使用して Gherkin で「And」を使用する方法
Cucumber.JS を使用して自動テストを実行しようとしています。私が次のことをすると...
ただし、 Andを使用して次のようにすると、すべてが機能します
私は得る
TypeError: オブジェクト # にはメソッド 'And' がありません
それで、これを行う適切な方法は何ですか(それほど単純ではない他のシナリオがあるため、とにかく使用する必要があるとは言いません)
testing - meteor-cucumber で meteor サーバー側のコードをテストする
meteor-cucumberを使用したクライアント側テストの機能と手順の実装は成功しましたが、サーバー コードの実装方法がわかりません。
Meteor.startup
アプリケーションには、毎分開始されて実行されるバッチ プロセスがあります。クライアントからアクセスしてはならない関数を実行するため、テスト ケースでそれをトリガーする方法はありません。
私の質問: いつ実行される機能実装でコードを起動するにはどうすればよいMeteor.isServer == true
ですか?
angularjs - 分度器/キュウリ/RequireJsロケータエラーを使用して要素が見つかりません
requireJs を使用する AngularJs アプリケーションがあるため、アプリケーションのブートストラップの遅延メソッドを使用します。分度器と組み込みのキュウリ サポートを組み合わせて、これをテストしようとしています。
こちらの分度器の github ページからキュウリのテストを実行でき、テストは問題なくパスします。ページに存在する html 要素をテストするテストを追加しようとすると、「ロケーターを使用して要素が見つかりません」と表示されて失敗します。
キュウリを状況に導入するまで、分度器で遅延ブートストラップを使用することに煩わされなかったので、これがテクノロジーの組み合わせを使用した場合の問題であるかどうか疑問に思っています。他の誰かが require/protractor/cucumber を一緒に使用した経験がありますか?