問題タブ [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.

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

php - PHPTはコンストラクターを避け、関数を直接ターゲットにします

私は次のクラスを持っています:

errors_func()最初にコンストラクターを呼び出す必要なく、テスト スクリプトを介して関数を直接ターゲットにしようとしています。PHPT テスト スクリプトは次のとおりです。

ご想像のとおり、クラスのオブジェクトが作成されるときにパラメーターが予期されるため、テスト スクリプトは失敗します。クラス __constructer に引数を渡す必要なく Validation クラスのオブジェクトを作成する方法はありますか?

0 投票する
0 に答える
17 参照

phpunit - phpunit で *.phpt テストを自己更新しますか?

背景 I: phpunit の *.phpt

*.phpt最近、PhpUnit のサポートに関する記事を読みました:
https://www.moxio.com/blog/32/start-testing-with-phpt-tests-in-phpunit

ここでの大きな利点:

  • phpunit ですぐにサポートされるため、これらのファイルを検出して処理するためのカスタム コードは必要ありません。
  • 誰もが同意しているように見える共通のフォーマット。
  • 特定の *.phpt を cli パラメーターとして直接指定できます。

典型的な *.phpt ファイルは次のようになります。

背景 II: 自己更新フィクスチャ

それより前に、cli 変数が存在する場合に独自のフィクスチャ ファイルを更新 (= 上書き) できる単体テストについて読みました:
https://tomasvotruba.com/blog/2020/07/20/how-to-update-hundreds -of-test-fixtures-with-single-phpunit-run/

次の cli コマンドは、失敗したテストのフィクスチャの「予期される」部分を上書きします。

次に、git diff を確認し、必要な機能の変更として変更を受け入れるか、動作を修正します。

この記事で提案されているフィクスチャ ファイルの形式は、*.phptファイル形式と非常によく似ていますが、最終的に形式は完全に任意で、プロジェクト固有のものにすることができます。

利点:

  • 空の「--EXPECT--」セクションから開始し、この部分を自動的に生成します。
  • バグが修正された後、または BC を破る変更が導入されたときなど、動作の変更後にテストを自動的に更新します。
  • 動作がまだ安定していない初期の開発中に、フィクスチャを頻繁に更新します。
  • cli diff 出力からのコピー/貼り付けはもう必要ありません。

短所:

  • phpunit の組み込みサポートはありません。カスタム コードが必要です。複数のプロジェクトで実行したい場合、これはうまくスケーリングしません。
  • *.phpt ファイルを cli パラメーターとしてターゲットにすることはできません。

質問

これらの *.phpt テスト ファイルを phpunit で自動更新する組み込みの方法はありますか?
または、おそらくphpunit以外のものを使用する必要がありますか?