問題タブ [phpt]
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 - PHPT テスト ケースを PHPUnit と統合する
PHPUnit でPHPT テスト ケースを実行し、合格/不合格ステータスを全体的なメトリクスに統合するにはどうすればよいですか? コマンドラインからこれらのテストを実行する方法はすでに知っていますrun-phpt
が、他のテストと一緒に PHPUnit 内から実行したいと考えています。
が存在することは承知していPHPUnit_Extensions_PhptTestCase
ますが、使用方法のサンプルが見つかりませんでした。
php - PHPT - --POST_RAW-- を使用するサンプル テストを実行できない
この .PHPT テストは次のように完了します: (PHPT ドキュメントから)
ファイル:strtr.phpt
$ pear run-tests --cgi strtr.phpt
出力:
ただし、、、 、 などのセクションsample006.phpt
を使用する他のテストなど、別のサンプル テストを実行しようとすると、テストは常に失敗します。--GET--
--POST--
--POST_RAW--
私の全体像の目標は、 PHP を使用したファイルのアップロードのテストで説明されているように、PHPT を使用して PHPUnit でファイルのアップロードをテストすることです。その--POST_RAW--
記事で使用されている例は私にも失敗しましたが、他の例は成功しました。
ローカルの設定に問題があるように見えますが、これを追跡する場所がわかりません。残念ながら、Googleにはあまりありません。
これらのテストの失敗と他の通常のテストの失敗の間に気づいたことの 1 つ--POST--
は、通常のテストの失敗で*.out
は、スクリプトの失敗した出力が常にファイルに入力されることです。明示的にテキストを出力している場合でも、失敗したテストにはファイルに--POST--
何もありません。*.out
PHPT を使用したこれらのサンプル テスト--POST_RAW--
は、他の誰かのために機能しますか?
これが私のシステム仕様です:(php 5.2、os x 10.6)
php - PHP コード カバレッジを取得して、phpt テスト ケースを実行するにはどうすればよいですか?
製品のコンポーネント テストを実行するテスト環境があります。最近、php をテストして正常にモックするのは難しいことがわかりましたが、多くの検索is_uploaded_file()
とmove_uploaded_file()
調査の結果、PHPT にたどり着きました。これは、ファイルのアップロードに対するこれらの方法と期待をテストするのに非常に役立ちました. これはファイルのアップロードに関する問題ではなく、phpt テストケースを基本的な phpunit テストケースに統合して、テストされているメソッドに対してもコード カバレッジが実行されるようにする方法です。以下は、いくつかのコードの抜粋です。
files.php
file_upload_test.phpt
ユーティリティFilesTransferTest.php
すべてが機能するように。しかし、私がテストしている転送方法をカバーしているようには見えません。誰でも私を助けることができますか?
編集:私のカバレッジコマンドは次のようになります:
php - phptテストでpearが正規表現を認識しないのはなぜですか?
テストの予想されるセクションに正規表現マッチャーが必要な、作業中のPHPUnit拡張のテストを作成しようとしています。
PHPTファイルのドキュメントには、テストのセクションで%r
正規表現を照合するために使用できるフラグがあると記載されています。--EXPECTF--
詳細については、PHPT-テストファイルレイアウトを参照してください。
テストで使用しようとしましたが、常に失敗します。そこで、問題を確認するための簡単なテストを作成することにしました。テストは次のようになりました。
このテストは、pearのrun-tests
コマンドを使用して実行すると失敗します。この.diff
ファイルには次のものが含まれています。
このタグはテストランナーに認識されないようです。そこで、PHPのソースのテストでこのタグを使用する例を見つけようとしました。それを使用して見つかったテストは1つだけでした(内部:php-src-5.3 / ext / standard / tests / network / gethostbyaddr_basic1.phpt)。
ここで何が間違っているのかわかりません...何かアイデアはありますか?
php - 1つのファイルに複数のphptテストを含める方法はありますか?
複数のブロックを持つ方法はありますか
1つのphptファイルで?
このような:
1つの--EXPECT--で多くの出力行をテストする手順と例を見つけましたが、それは同じではありません。
php - PHPUnitでPHPTを使用して「BORKED--CLEAN--section」を取得するのはなぜですか?
PHPUnitで実行されているPHPTテストがいくつかあります。これらのテストには、--CLEAN--
テスト中に作成されたファイルの削除を処理するセクションが含まれています。を使用してコマンドラインでPHPTテストを実行すると正常に機能しますpear run-tests
が、PHPUnitを使用して実行すると、次のエラーが発生します。
BORKED --CLEAN--セクション!出力:
X-Powered-By:PHP / 5.3.10-1ubuntu3.2
コンテンツタイプ:text / html
これは明らかにHTTPヘッダーのように見えますが、それ以上のテキストはなく、クリーンセクションのアクションは引き続き計画どおりに機能します。CLEANセクションを削除すると問題は解決しますが、PHPTファイルの外部でテストのクリーンアップを実行したくありません。これらが何によって引き起こされているのか、そしてそれらを取り除く方法についてのアイデアはありますか?それらはテストを破っていませんが、出力では乱雑に見えます。
PHPTテスト(私の雇用を保護するためにPOSTファイルデータは切り捨てられます):
Zend / PHPUnitテストラッパー:
ラッパーをトリガーするテストスイート:
php - PHPT 対 Phpunit
これら 2 種類のテストの一方を他方の代わりに使用することの利点と欠点は何ですか?
PS : クラスでもウェブサイトでもないプロジェクトを開始しています。ファイルのテスト システムを選択する必要があり、ファイルにはクラス、2 つ以上のクラス、関数、汎用 PHP コードなどしか含まれていない可能性があります。
phpt - PHP 挿入が機能しない
私はしばらくの間、phpMyAdmin挿入と戦ってきました。エラーは発生しませんが、データベースに挿入されません。
私のコードは次のようになります
今、phpもこのようになります
問題は、ローカル ホストで表示したときに、mysql データベースに挿入したものが表示されないことです。何が問題ですか?