問題タブ [assertions]

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

python - Python-なぜassert(required_pa​​ram)を使用するのですか?

今日、APIのライブラリを調べているときにこれを見つけました。

これを行うのは簡単ではないでしょうか:

または、私は何かが欠けていますか?

もちろん、発生する可能性のassert()ある1つの統一された例外がありますが、その場合にこの関数をサイレントに失敗させて何かを実行したくない場合を除いて、そのようなエラーを早期にキャッチできるように、大音量で中断してみませんか?なぜ人々が本番コードでアサーションを使用するのか理解できませんでした。おそらく、私はこれに対するいくつかの答えを得た後になります。

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

cocoa - NSAssertでアプリケーションをクラッシュさせるか、少なくともエラーダイアログを表示するにはどうすればよいですか?

デバッグに役立つため、コードでアサーションをかなり使用していますが、Cocoaアプリケーションの標準的な動作は、処理を中断し、アサーションの失敗をコンソールに記録することです。UIがクラッシュしたり、エラーダイアログが表示されたりすることはありません。そして、何が起こったのかがはっきりしないことがよくあります。

プログラムをクラッシュさせる(少なくともトレースを取得する)か、エラーダイアログを表示する最も簡単な方法は何ですか?

アサーションハンドラーを提供する必要がありますか(非常に複雑に見えます!)?または、実行ループで例外をキャッチできますか?

これを最適に行う方法について、どこでも利用できるサンプルコードはありますか?

ご協力いただきありがとうございます。

0 投票する
7 に答える
360374 参照

java - Java/ JUnit - AssertTrue と AssertFalse

私は Java の初心者で、Eclipse Total Beginner's Tutorialsに従っています。それらはすべて非常に役立ちますが、レッスン 12 ではassertTrue、1 つのテスト ケースとassertFalse別のテスト ケースに使用します。コードは次のとおりです。

これらのメソッドに関する適切なドキュメントを検索しましたが、何も見つかりませんでした。私の理解が正しければ、2 番目のパラメーターが false と評価されたときに文字列assertTrueを表示するだけでなく、assertFalseもしそうなら、それらの両方を持つポイントは何ですか?

編集:何が私を混乱させていたのかがわかったと思います。作成者は、機能を示すためだけに両方を入れた可能性があります (結局のところ、これはチュートリアルです)。そして、彼は失敗するものをセットアップして、メッセージが出力され、失敗した理由を教えてくれました。意味が分かり始めてきた...それが説明だと思いますが、よくわかりません。

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

c++ - CRTがインストールされていない場合、C ++でデバッグアサーションを取得しますか?

VSまたはCRTがインストールされていないOSで実行されているC++プログラムのデバッグバージョンがある場合でも、デバッグアサーションエラーボックスが表示されますか?

「DebugAssertFailed!」と表示されているもの。

または、マシンにCRTやVisual Studioなどの特定のコンポーネントがインストールされている場合にのみ取得しますか?

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

hardware - VHDLモニターをPSLアサーションに変換する

PSLアサーションについて興味深い質問があります。これがVHDLモニタープロセスです。これはアサーション専用のプロセスであるため、合成できないプロセスです。input1このモニターは、現在のFSM状態をチェックし、「 」と「」の2つのレジスターの値を保管しますreg136assert最後に、これらのレジスタの値を比較するために""ステートメントをトリガーします。

質問は次のとおりです。このモニターをPSL(プロパティ仕様言語)アサーションに変換する方法はありますか?

重要:レジスタ「input1」と「reg136」は、fsm状態がそれぞれ状態s0とs22にある場合にのみ読み取ることができます。それ以外の場合、これらのレジスタに含まれるデータは、アサートされた変数「a」および「t34」に属しません。結果として、PSLステートメントは正しいfsm状態の値を読み取って保存する方法を必要とします。

ありがとうございました !

0 投票する
3 に答える
4189 参照

regex - Ruby 1.9 正規表現の後読みアサーションとアンカー

Ruby 1.9 正規表現は後読みアサーションをサポートしていますが、パターンでアンカーを渡すときに問題があるようです。先読みアサーションでアンカーが渡されると、問題なく実行されます。

先読みと同じように後読みアサーションでアンカーを機能させる方法を知っている人はいますか?

後読みに必要な特別なエスケープ シーケンスまたはグループ化はありますか?

パッチが適用された場合に備えて、1.9.1-p243、p376、および 1.9.2-preview3 でこの動作をテストしました。

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

c++ - Google テストでアサートをキャッチする方法は?

Google テスト フレームワークを使用して単体テストをプログラミングしています。しかし、いくつかのアサーションが適切に配置され、有用であるかどうかを確認したいと思います。Google テストでアサートをキャッチする方法はありますか?

テスト中のコード例:

そして、テスト:

ただしEXPECT_ANY_THROW、アサートはキャッチせず、例外のみをキャッチします。アサーションをキャッチするソリューションを探しています。

0 投票する
4 に答える
86250 参照

python - Python AssertionErrorのメッセージを変更するにはどうすればよいですか?

私は次のように書いています。Unicodeテキストの2つの複数行ブロックを比較するときに、まともなエラーメッセージを生成しようとしています。比較を行う内点法はアサーションを発生させますが、デフォルトの説明は私には役に立ちません

以下のようなコードに何かを追加する必要があります。

キャッチしたassertionerrorに出力されたエラーメッセージを変更する方法がわかりません。私は常にAssertionError: u'something' != 'something else'、出力の最初の行のみを表示するを取得します。

アサーションメッセージを変更して、必要なものをすべて印刷するにはどうすればよいですか?

nose関連する場合は、テストの実行に使用しています。

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

c# - これら 2 つの単体テスト アサーションの違いは何ですか?

次のMSユニットテストに出くわしました:

アサーションを行うときにジェネリックを使用するのを見たことがありません。

これは私がアサーションを書く方法です:

違いはなんですか?

使用しているオーバーロードにカーソルAreNotEqual()を合わせると、メソッドは 2 つの double を比較するオーバーロードを使用しています (なぜ int、int オーバーロードがないのかわかりません)。

そして、ジェネリック型パラメーターを入れた場合、ReSharper はそれが冗長であると言います<int>

だから私の質問は:私がそれを行う方法がまだタイプセーフである場合、なぜジェネリックアサーションを使用するのですか?