やりたい小さなことを考えただけで、それを実行できる能力があるかどうかに興味がありました。これは純粋に便利な構文糖類のようなものであり、必須ではありませんが、ある時点で実装されている可能性があると私が思ったわずかな便利さです。
チェック済みの例外をスローする Junit テスト ケースのヘルパー メソッドで、2 ~ 3 層下にネストされたメソッドがあります。この例外がスローされた場合、失敗したいという事実を知っています。ただし、単に Fail() を呼び出すと、例外のスタック トレースと、例外の伝播を許可することで得られるその他の利便性が失われます。
「標準」のアプローチは、メソッドに例外をスローさせることです。しかし、私が言ったように、私はすでにいくつかのメソッドを深く埋めており、このメソッドは将来の多くのヘルパー メソッドによって呼び出されるのではないかと考えています。このメソッドで例外をスローした場合、この 1 つのメソッドを直接的または間接的に使用するすべてのメソッドに常に throw 句を追加する必要があります。これはかなりの数のメソッドである可能性があります。これは明らかに実行可能ですが、少し面倒です。そして、少なくとも理論的には、例外がスローされた状況をマスクすることができ、すべてのメソッドが既に例外をスローしている場合は実際にそれをキャッチしたいと考えていました。
すべてのメソッドに例外をスローさせることなく、JUnit に例外がトップ レベルまで伝播して失敗したかのように動作させる方法はありますか? そのため、JUnit は例外による失敗を、スタック トレースとすべてを含めてすぐに報告します。基本的に、例外を受け取る fail メソッドが必要です。
このようなものは存在しますか、それとも単純に投げる必要がありますか?
ps。RuntimeException でラップして再スローできることは知っていますが、そのオプションもあまり好きではありません。