問題タブ [tap-harness]

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 に答える
291 参照

perl - Windows で TAP::Formatter::HTML をビルドする際の問題

cpanTAP::Formatter::HTMLインストールが次の場所で停止します。01_basic.t理由がわかりません:

この根本的な原因をよりよく理解するために、いくつかprintの を含むようにテストを変更し、スタンドアロンで実行しました。

これもハングします:

ぶら下がっているステートメントは のようですSTDOUT->fdopen( fileno($stdout_fh), 'w' )

しかし、なぜこれが起こっているのですか?モジュールをセットアップにインストールするにはどうすればよいですか?


PS、内容FileTempTFH:

私のperl -V詳細:

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

perl - TAP::Harnessから集約されたTAP出力の個々の結果を取得する

TAP :: Harnessを介していくつかのテストを実行しており、TAPパーサーからすべての個別の結果を取得しようとしています。私がすることは最初にテストを実行することです:

これはうまくいきます。次に、TAP::Parserのドキュメントに従って結果を取得しようとします。

ただし、これにより@results空の配列になります。

個々のパーサーオブジェクトをDumper使用すると、テスト結果が正常に解析されたことがわかります。

オブジェクトからテスト結果を取得する方法がわかりません。

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

perl - TAP::Harnessコンストラクター引数の混合の問題

(v3.23)コンストラクター引数のいくつかはTAP::Harness一緒にプレイするのが好きではないようです。

またはargsformatterと一緒にargを指定しようとすると、モジュールは後者の2つが認識されないことについて文句を言います。コメントアウトすると、問題なく動作します。私は何か間違ったことをしていますか?verbositycolor

出力formatter引数を指定):

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

perl - TAP における待機ステータスの意味は何ですか?

これは何よりも私の理解に対する質問です。Test::Moreを介していくつかのテストを実行するために使用していますTAP::Harness

テストが実行されると、終了コードと待機コードが返されます。

Test::More 終了コードは、ドキュメントに従って、失敗時にゼロ以外を返すように設計されています。

しかし、待機コードは何を意味するのでしょうか? 私が実行しているテストでは、失敗したテストの数 (256 * n) の倍数のようです。

私の推測では、プロトコルは Unix 風の親子プロセス関係をエミュレートしようとしているのですが、待機コードについては何も知りません。

0 投票する
2 に答える
398 参照

perl - TAP::Harness を使用してテストを処理し、テスト終了時に出力を出力する方法

私は一日中答えを見つけようとしていますが、何も見つかりませんでした。test::more (test1.t、test2.t、test3.t ...)を使用していくつかのテストを作成しました。TAP::Harnessを使用してすべてのテストを処理し、 formatter_class => 'TAP::Formatter::JUnitを使用して JUnit 形式で出力を出力するメインの perl スクリプト (main.pl) を作成しました。私のテストでは、BAIL_OUT 関数を使用します。問題は、テストが救済されると、メイン スクリプトも終了し、出力がまったくないことです。たとえば、test3.t bailed_out の場合、test1.t と test2.t の結果を確認する必要があります。どうやってやるの?

他のテストを続行したくないので、BAIL_OUT の代わりに exit や die を使用することはできません。(test3.t が BAIL_OUT の場合、test4.t を実行したくありません。)

誰かが私を助けてくれますか?救済されたテストの前に実行されていたテストの結果を確認する必要があります。

ありがとう。

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

perl - TAP::Harness::JUnit を使用して Junit xml を作成する前に perl スクリプトがスタックする

私は本当にあなたの助けが必要です。

テストを実行するために TAP::Harness::JUnit を使用するメイン スクリプトがあります。通常、すべてのテストが実行され、xml が正常に作成されます。しかし、大きな出力データで特定のテスト (big_test と呼ばれる) を実行しようとすると、テストの実行が終了した後 (約 1 時間かかります)、main.t スクリプトがスタックし、xmlfile が作成されません。

main.t で次のように定義しました。

誰かアドバイスはありますか?ありがとう

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

perl - TAP::Harness timing issue with TAP::Formatter::JUnit

I have a set of scripts that produces a JUnit output for Jenkins.

The code I execute looks like this (this is just a snippet so you get the idea) :

When I run this with the interpreter, I get the following output :

The main issue here is that the JUnit output seems to get the timing wrong. As per the sleep(2) instruction, it should have reported 2s.

Is there a way to get the timing in the JUnit file right ?

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

perl - ローカルコンソールでスクリプトがフラッシュされても、Jenkins コンソール出力が行ごとにフラッシュされない

Perl TAP::Harness::JUnit で複数のテストスクリプトを使用して Jenkins を使用しています。1 つのテストスクリプトが完了する前に、Jenkins をコンソールにフラッシュさせることができません。テストスイート全体をバッファリングし、完了したら一度にフラッシュします。次のようなインスタンスを取得します。

  • 11:56:19 1..2
  • 11:56:19 OK 1 - テスト 1
  • 11:56:19 実際の時間: 11:55:59 : 現在 20 秒間スリープ中...
  • 11:56:19 実際の時間: 11:56:19
  • 11:56:19 OK 2 - テスト 2

私はこれに 2 週間を費やし、すべての通常の解決策を認識していますが、どれも機能していないようです。perl TAP::Harness::JUnitを設定merge => 1しましたが、STDOUT と STDERR が絡み合っていることはわかっていますが、あらゆる方法でフラッシュを試みましたが、Jenkins コンソール出力では何も機能しません。

私のマシンのコマンドラインで同じハーネスを試すと、すべてが即座にフラッシュされます。、、、、ファイルに出力しようとstdbuf -i0 -o0 -e0しました。何も機能しませんstdbuf -oL -eL$|=1autoflush STDOUT 1CMD 1>console.log 2>&1

タイムスタンプは無意味であるため、特定のテストのタイムスタンプとその時々の CPU への高い負荷を関連付けることができないため、これはパフォーマンス メトリックを実行するときに厄介です。ただし、最も厄介な意味は、テストスクリプトの途中でテストがハングまたはクラッシュした場合、出力が出力されないため、テストがクラッシュした理由がわからないことです。