8

Mighty Moose / ContinuousTests で Here Be Dragons の警告に出くわした人はいますか? ここに画像の説明を入力

これは、プライベート メソッドの横に配置されました。おそらく、プライベートであり、テストが容易ではないためです。これをテストするには、マジック アーマーが必要になる場合があります。とにかくプロパティのセッターでこれも見つけたので再現してみました。これで、コードの横にテスト実行インジケーターがまったく表示されなくなりました。

どうすればそれらを取り戻すことができますか? 出現条件は?前もって感謝します!

4

3 に答える 3

8

このメッセージが表示される理由は、ContinuousTests がフィードバックを提供する際に、テスト カバレッジ以上のことを考慮しているためです。そこに見える余白で、緑、黄、または赤のいずれかを得ることができます。緑色は、このコードの変更がかなり安全であることを意味します。黄色は、そのコードを変更するリスクが少しあることを意味します。赤は、このコードを変更すると、自分で変更できることを意味します。変更すると何かが壊れる可能性が高くなります。アイコンにカーソルを合わせると、リスクに関する統計が表示されます。右クリックして [ContinuousTests->Get Affected Graph] を選択すると、このコードの結合グラフが表示されます。

「here be dragons」というメッセージが表示された場合は、見ているコードがコード内の多くの場所で参照されており、それに結合されたテストや参照しているものがないことを意味します。したがって、そのコードを変更すると、そのメソッドが壊れるだけでなく、それを間接的に使用するすべてのものも壊れる危険があります。

それがそれを説明することを願っています。

于 2013-07-10T15:17:38.833 に答える
2

うわー私はこれに答えることができ、何年も後にこの質問に出くわしました:)問題のソフトウェアを書いたので、私はそれに答える資格があります。

これは、コードを安全に変更できないことを示しています。

「"here be dragons" というメッセージが表示された場合、見ているコードがコード内の多くの場所で参照されており、それに関連するテストや参照しているものがないことを意味します。そのコードを変更すると、そのメソッドを破壊するだけでなく、それを間接的に使用するすべてのものを破壊する危険があります。」

かなり正しいです。

それが見ているのは

このコード

このコードのテスト

このコードが呼び出される場所

このコードが呼び出す場所

このコードが呼び出される場所のテスト

再帰的に

基本的に、関連するすべてのコードとそのコードに関連付けられたテストのグラフを作成し (実際のグラフを視覚的に表示できます)、問題のコードのリスク分析を行います。リスク分析の例として、メソッドを直接テストするテストがある場合、呼び出しチェーンの 9 レベル下のメソッドを何らかの形でカバーするテストよりもはるかに優れていると見なされます。

これは理にかなっていますか?

于 2021-11-29T07:30:12.467 に答える
1

誰も説明できないので、これを下WTF!?!?!にファイルして閉じます。サポート リクエストの結果は次のようになりましたが、まだ情報がありません。

それは赤いゼロですが、さらに悪いです。基本的に、それらはコードのもつれた混乱のように見え、テストが行​​われていないように見えます。私の記憶が正しければ、グラフには 30 を超えるオードが必要であり、テスト カバレッジが 0 であり、いくつかの il サイクルの屋根裏の複雑さが必要です。

まあ、無料です...

于 2013-03-07T14:03:13.660 に答える