問題タブ [codeception]
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.
php - Codeception API TestGuy が SubmitForm で空の投稿を送信する
まず第一に、私の英語でごめんなさい!
私はコードセプションで機能テストを書いています.ZF2モジュールを使用していますが、これまでのところすべてがうまく機能しています. フォームを送信しようとすると問題が発生します。テストはパラメーターを正しく送信しているように見えますが、$_POST は常に空です。
私の ExempleCept.php
vendor/bin/codeception run --debug
出力
ユーザーコントローラー::loginAction()
私のアクションの var_dump 行は、" * I submit form" の直後に呼び出されるので、POST が来ることに注意してください!
それで、誰が私を助けることができますか?ありがとう!
編集済み
WebGuy API (受け入れ) で同じテストを試しましたが、うまくいきました。しかし、テストは Jenkins で実行する必要があり、WebGuy を実行するには http サーバーが必要です。TestGuy テストが機能する必要があります。
php - Zend Framework 2 は、codeception テストの実行時に、リダイレクト後に GET で 302 応答を送信します。
Codeception TestGuy を使用して ZF2 アプリで機能テストを実行しています。これまでのところすべてうまく機能していますが、現時点ではリダイレクトに問題があります...アプリがリダイレクトすると、次のエラー メッセージが表示されます。Maximum function nesting level of '100' reached, aborting!
.
OK、それはループにある必要があります。調査を数時間行った後、このエラーの考えられる原因を発見しました。のFollowingRedirect
テスト スイートは HTTP 応答コードに基づいており、ページ X へのリダイレクト中にアプリは 302 応答を送信し、次の要求はページ X での GET である必要があり、200 応答が期待されますよね? ただし、ページ X の GET も 302 応答を返しますが、ブラウザの GET は 200 応答を返します。
$this->getResponse()->setStatusCode(200);
X ページ アクションを実行すると、ブラウザとテストの両方で正常に動作します。リダイレクトのたびに必要setStatusCode
ですか、それとも ZF2 のバグですか?
前もって感謝します!PS英語で申し訳ありません:D
php - Codeception: データベースからのテストデータの消去
Codeception を使用していくつかの単体テストを書いていますが、データベースがテスト データでオーバーランしています。ドキュメントを読んでいると、次のように書かれていることがわかりました。
データベースは各テストの後にクリーニングされ、データが入力されます
yaml ファイルに何かがあるのか、それともティア ダウン メソッドに入れる必要があるのか 誰かが知っていますか?
これが私のテストです:
php - Codeception コード カバレッジ - file_get_contents 例外 (c3/report/clear)
Laravel 4でCodeceptionを使用しています。特に、コード カバレッジの結果に受け入れテストを含めることができるように、リモート コード カバレッジを使用しようとしています。
remote_enable の XDebug が設定され、c3.phpがインストールされ、'public/index.php' に含まれます。
Windows では、すべてが期待どおりに機能します。しかし、Ubuntu 12.04 LTS (PHP5.4 を使用) では、次の例外が発生します。
私は何を間違っていますか?
cookies - codeceptionとSeleniumでログインできません
小さな問題があります。Codeception を使用して最初のテスト フェーズを実行しようとしています。これを行うために、私は Selenium2 と PrestaShop を使用しています。
私が達成しようとしている最初のステップは、PrestaShop のバックオフィスにログインすることです。
しかし、PrestaShop Backoffice には接続したくないようです。ログインページにリダイレクトされます!
これがどこから来るのか誰か知っていますか?Cookie やセッションに何か問題があるようですが、これを修正する方法がわかりません。
編集:ここに私のコードがあります:
Selenium.suite.yml :
codeception.yml
フォルダ tests/Selenium に PrestaShopGlobalCest.php があります
_bootstrap.php
私が持っているテスト/ヘルパー/セレンで
PrestaShopGlobalHelper
php - PhpBrowser での Codeception がリダイレクトに従っていないようです
テスト スイートをセットアップするのはこれが初めてなので、ばかげた大失敗を犯している可能性があります。
CodeIgniter プロジェクトのテストを作成するために Codeception をセットアップしました。いくつかの簡単なテストが機能しています (やった!) が、現在、ログイン フォームが機能することを確認するための受け入れテストを作成しています。フォームに入力して [送信] をクリックすると正常に動作しますが、送信後にページを調べようとすると、リダイレクトに従っていないように見えます。
- ページの内容が空です (ノード リストが空で、ログ ファイルが 0 バイト)
- ページの URL は、リダイレクト先のページではなく、送信したページです。
リダイレクトは 301 ヘッダー リダイレクトです。編集: FALSE私が使用する認証ライブラリが「リロード」ヘッダーリダイレクトを行うことがわかりました。実際の 301 を使用すると、問題が解決します。
リダイレクトに従う必要があると思います。301 リダイレクトを機能させるためにセットアップ/構成する必要があるものはありますか?
コード:
私の受け入れテスト:
デバッグモードでテストを実行したときの出力。見ているページのInvalidArgumentException
DOM が空であるため、エラーがスローされています。