問題タブ [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.
java - javaassertは奇妙な結果をもたらします
次のJavaコードは何をすべきですか?
これはアサーションエラーをスローする必要がありますか?そうでない場合は、なぜですか?(エラーは発生しません!)
java - アサーションを使用しますか?
これは実際には「質問」ではないので、CW にしています。
の
キーワードがスゴイ!
書いたコードに自信が持てるようになるはずですが、今日まで、小さなテストクラス (< 20 行) を作成していたときまで、導入されて以来、決して使用しないことに気付きました。
なんてこった!確かに非常に便利なロガーはほとんど使用していませんが、アサーションを使用していないことに今日まで気づきませんでした。
アサーションを使用しますか?いいえの場合、その理由は何ですか?
java - Java の AssertionError に相当する .Net
Java ではAssertionError
、特定の行に到達しないことをアサートするために、直接 をスローすることがあります。この例はdefault
、ステートメントのケースにswitch
到達できないことをアサートすることです (例については、この JavaSpecialists ページを参照してください)。
.Net でも同様のメカニズムを使用したいと考えています。使用できる同等の例外はありますか? または、同じ効果で使用できる別の方法はありますか?
編集- 明確にするために、リリースされたコードで実行時にエラーにフラグを立てて、コード内の不変式の(おそらく壊滅的な)エラーが発生したことを示すメカニズムを探しています。リンクされた例では、0 から 2 (両端を含む) の間のランダムな整数を生成し、生成された数値が常に 0、1、または 2 であることを主張しています。システムの破損状態。
objective-c - RegexKitLiteアサーションエラーが断続的に発生する
私は、MacOSXとiPhoneOSに同梱されているICUライブラリに基づいて構築された素晴らしいRegexKitLiteフレームワークを使用しています。一致するものを検索するときに断続的に表示されるこのエラーを除いて、これまでのところ順調に進んでいます。
これを引き起こしている可能性のあるアイデアはありますか?
bash - コンパイルされたコードをテストして、期待される出力/エラーを返すための最良の方法
コンパイルされたコードが期待どおりの出力を返すか、期待どおりに失敗するかをどのようにテストしますか?
以下の実例を作成しましたが、簡単に拡張することはできません。追加のテストごとに、追加の入れ子括弧が必要になります。もちろん、これを他のファイルに分割することもできますが、これを改善する方法について何か提案はありますか?また、これをmakefileのmake testスタンザから使用することを計画しているので、テストのためだけに、デフォルトでインストールされていないものを他の人がインストールすることは期待していません。また、stdoutもstderrとインターリーブされたままにする必要があります。
簡略化した例:
私の現在のテスターは次のようになります(1つのテストの場合):
unit-testing - 単体テスト:セットアップメソッドにアサーションを含めるのは良い習慣ですか?
単体テストでは、セットアップメソッドを使用してテストに必要なオブジェクトを作成します。
これらのセットアップメソッドでは、アサーションを使用するのが好きです。これらのオブジェクトに表示する値を知っており、アサーションを介してその知識を文書化するのが好きです。
スタックオーバーフローで他のユニットテストを呼び出すユニットテストに関する最近の投稿では、ユニットテストは他のテストを呼び出すべきではないという一般的な感覚があります:その質問への答えは、テストケースが行うようにセットアップをリファクタリングする必要があるようですお互いに依存していません。
ただし、「assertsを使用したセットアップ」と他の単体テストを呼び出す単体テストには大きな違いはありません。
したがって、私の質問:セットアップメソッドにアサーションを含めるのは良い習慣ですか?
編集:
答えは次のようになります。これは一般的には良い習慣ではありません。セットアップ結果をテストする必要がある場合は、アサーションを使用して別のテストメソッドを追加することをお勧めします(私がチェックした答え)。意図を文書化するために、Javaアサートの使用を検討してください。
c++ - GNU の nana ライブラリは死んでいますか? 後継機種はありますか?
http://savannah.gnu.org/projects/nana/を見ると、最後の作業は 4 年前に Nana で行われたようで、nana の公式 gnu.org ホームページはプレースホルダーです。非アクティブなプロジェクトが bitrot に苦しむ傾向があることを考えると、次のようになります。
- プロジェクトは死にましたか?
- 後継者はいますか?
- 優れた C/C++ 用の別のアサーション/ロギング ライブラリがありますか?
.net - Assertion.AssertEquals からの「アップグレード パス」は何ですか?
「Assertion.AssertEquals」を使用しているため、非推奨の警告が表示される単体テスト コードを継承しました。
警告 CS0618: 'NUnit.Framework.Assertion' は廃止されました: '代わりに Assert クラスを使用してください'
しかし、Assert クラスには、代わりに使用すべき明白なメソッドが表示されません。
AssertEquals は、2 つのオブジェクトと、エラーが発生した場合にエラーを報告するために使用できるメッセージを受け取ります。例えば
Assert クラスの同等のメソッドは何ですか?
c++ - アサーション チェックの便利な方法
一部のアサーションはコストがかかり、一部は製品コードでオフにする方が適切です。少なくとも、アサーションを常に有効にする必要があることは明らかではありません。
私のアプリケーションでは、アサーションの一部をファイルごとまたはクラスごとにオン/オフできるようにしたいと考えています。
C ++でそれを行う方法は?