問題タブ [dart-unittest]

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 投票する
2 に答える
1078 参照

dart - Dart プロシージャをモックする方法

プロシージャをモックするにはどうすればよいですか (関数に並置されているように、こちらを参照)

たとえば、次の typedef とプロシージャがあるとします。

userAdder プロシージャがモック関数を呼び出したことをテストできるモックを作成するにはどうすればよいでしょうか?

これは私の試みでしたが、テストが失敗したというメッセージで失敗しました: Caught The null object does not have a method 'call'.

私が変われば

メソッド呼び出しがログに表示されない

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

dart - Dart unittest が役に立たない出力を生成する

私は AngularDart チュートリアルに取り組んでおり、演習を完了するときに単体テストを作成しようとしています。

次のようなテストがあります。

テストは次の出力で失敗します。

「categoryFilter」の既存のテストを変更して失敗させようとしたところ、同じ、むしろ役に立たない出力が得られました。

2 つのオブジェクトの比較からの出力をより意味のあるものにする方法はありますか?

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

mocking - Dart を使用した HTTP レスポンスのモック

私は新しい API ラッパーに取り組んでおり、単体テストを実行するたびに API を呼び出したくありません。hereで説明されているように、私はそれを嘲笑しています。

私は最初、私がそれを嘲笑している方法に何か問題があると思っていましたが、問題は他の場所にあるようです.

私が達成しようとしていることは非常に簡単です。単体テストの実行時に、統合している外部 API から情報を取得するために外出したかのように、値を返したいと考えています。

オプションのパラメーターとして http.Client を使用してクラスを初期化するため、単体テストを実行するときにそれを渡すことができます。

単体テストでは、次のモック クラスを作成しました。

そして、応答を確認するための単体テストでは、次のことを行っています。

ご覧のとおり、 send を呼び出すとmessage401、単なるJSON文字列であるが返されるようにしようとしています。

は文字列であるため、これは発生していません。message401私のコードはそれを Future として使用しようとするため、常にエラーが発生します。

トップレベルのキャッチされないエラー: クラス 'String' にはインスタンス メソッド 'then' がありません。

このエラーが発生する理由は完全に理解していますが、回避する方法がわかりません。

どんな助けでも感謝します。

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

dart - Dart 単純な関数を単体テストする方法

Dart でクリーンで簡潔なコードを書く方法が気に入っていますが、Dart は、書くのは簡単だがテストするのが難しい言語の 1 つであるようです。

たとえば、次の非常に単純なメソッドが与えられた場合、単体テストを行うにはどうすればよいでしょうか?

new Router()を、モックを返す何らかのファクトリ メソッドに置き換える必要があります。モックは、 serveが呼び出されたときにモックを返す必要があります。次に、モック ストリームを返すモック transform* メソッドが必要です。その時点で、ほとんどの人はあきらめます。

上記のアプローチを使用して単体テストを作成することができましたが、80行の奇数行が必要であり、ファクトリメソッドで実際のクラスを汚染したため、満足しているとは言えません!

これを行うより良い方法はありますか?

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

dart - solo_group が setUp メソッドを呼び出さないのはなぜですか

私は、スケジュールされた_テストを使用して、Polymer Dart 要素をテストしています。これは、solo_group() を使用するまで問題なく動作します。私のテストは呼び出される setUp() メソッドに依存しますが、solo_group() が使用される場合、setUp() メソッドは呼び出されません。私のテストは、理解できる失敗であり、null 値に関するエラーをスローします。これには理由がありますか?代わりに solo_test() を使用してみましたが、これは期待どおりに機能し、setUp() メソッドを呼び出す必要がありましたが、solo_group は呼び出しませんでした。

別のバグ報告のような気がしますが、これが予期された動作ではないことを事前に確認したいと思います。

{UPDATE} 求められたように、ここに例を示します。これはすべてのテスト コードではありませんが、十分なはずです。この例では、setUp() メソッドが呼び出されることを期待していますが、そうではありません。ただし、solo_group をただのグループにすると、そうなります。setUp() は、test() が solo_test() に置き換えられ、solo_group() が group() に置き換えられた場合にも呼び出されます。

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

dart - サーバー応答をモックする方法 - サーバー側のクライアント

私はダーツを試していて、サーバー側でクライアントを書いています:

サーバーの応答をモックしたいと思います。

最善の解決策は何ですか?

  • 期待する値を返すサーバーをテスト クラスに作成しますか?
  • または HttpClientResponse をモックしますか?

ご協力いただきありがとうございます !(コードをいただければ幸いです;D)