タグ付けされた質問 「unit-testing」

ユニットテストは、ソースコードの個々のユニットをテストして、それらが使用に適しているかどうかを判断する方法です。

7
Iterableに特定のプロパティを持つ要素が含まれていることをアサートするにはどうすればよいですか?
このシグネチャでメソッドを単体テストしたいとします: List<MyItem> getMyItems(); を介してアクセスされるMyItem多くのプロパティを持つPojoであると想定し"name"ますgetName()。 私が確認する必要があるのは、、List<MyItem>またはany Iterableに2つのMyItemインスタンスが含まれ"name"ていることです。そのプロパティには値"foo"とがあります"bar"。他のプロパティが一致しない場合、このテストの目的は特に気にしません。名前が一致すれば、テストは成功です。 できればワンライナーにしたいです。これが私がやりたいことの一種の「疑似構文」です。 assert(listEntriesMatchInAnyOrder(myClass.getMyItems(), property("name"), new String[]{"foo", "bar"}); ハムクレストはこの種のものに良いでしょうか?もしそうなら、正確に上記の私の擬似構文のハムクレストバージョンは何でしょうか?

4
RSpecコントローラーテスト-空のresponse.body
RSpecでコントローラーをテストすると問題が発生します。response.body呼び出しは常に空の文字列を返します。ブラウザーではすべてが正しくレンダリングされ、キュウリの機能テストでは正しく表示されるようですが、RSpecは毎回失敗します。 response.should render_template('index')問題なく合格するなど、応答オブジェクトに対するその他の期待。 以前にこの問題に遭遇したことがありますか?おそらく、応答htmlは他の方法で取得できますか? バージョンについては、Rails 2.1.0、RSpec 1.2.7。

6
numpy.arrayが等しいことをアサートする最良の方法は?
アプリの単体テストを作成したいのですが、2つの配列を比較する必要があります。array.__eq__新しい配列を返すので(TestCase.assertEqual失敗する)、等価性をアサートする最良の方法は何ですか? 現在使用しています self.assertTrue((arr1 == arr2).all()) しかし、私はそれが本当に好きではありません

14
JavaScript単体テストでlocalStorageをモックする方法は?
モックするライブラリはありますlocalStorageか? 私は他のほとんどのJavaScript モックにSinon.JSを使用してきましたが、それが本当に素晴らしいことを発見しました。 私の最初のテストでは、localStorageがFirefox(悲しい顔)で割り当て可能であることを拒否しているため、おそらくこれを回避するための何らかのハックが必要になります。 今のところ(私の見るとおり)、私のオプションは次のとおりです。 すべてのコードが使用するラッピング関数を作成し、それらをモックします localStorageのある種の(複雑になる可能性がある)状態管理(テスト前のスナップショットlocalStorage、クリーンアップリストアスナップショット)を作成します。 ?????? あなたはこれらのアプローチについてどう思いますか、そしてあなたはこれについて取り組む他のより良い方法があると思いますか?どちらの方法でも、結果として得られる「ライブラリ」を配置して、最終的にはオープンソースの良さのためにgithubに作成します。

4
Jock5でMockitoを使用する方法
MockitoおよびJUnit 5でインジェクションを使用するにはどうすればよいですか? JUnit4では、@RunWith(MockitoJUnitRunner.class)アノテーションを使用できます。JUnit5には@RunWithアノテーションはありませんか?

6
ジェスト:ユニットテスト内のコンソールを無効にするより良い方法
より良い方法があれば、私は不思議無効コンソールのエラー 内部の特定の冗談テスト(すなわち、本来のコンソールを復元し、各試験後/前)。 これが私の現在のアプローチです: describe("Some description", () => { let consoleSpy; beforeEach(() => { if (typeof consoleSpy === "function") { consoleSpy.mockRestore(); } }); test("Some test that should not output errors to jest console", () => { expect.assertions(2); consoleSpy = jest.spyOn(console, "error").mockImplementation(); // some function that uses console error expect(someFunction).toBe("X"); expect(consoleSpy).toHaveBeenCalled(); }); …


8
メモリ内でのみPostgreSQLを実行する
私が書いたユニットテストごとに、メモリのみで実行される小さなPostgreSQLデータベースを実行したいと思います。例えば: @Before void setUp() { String port = runPostgresOnRandomPort(); connectTo("postgres://localhost:"+port+"/in_memory_db"); // ... } 理想的には、単体テストで使用するバージョンコントロールに単一のpostgres実行可能ファイルをチェックインします。 のようなものHSQLですが、postgres用です。どうやってやるの? そのようなPostgresバージョンを入手できますか?ディスクを使用しないように指示するにはどうすればよいですか?

4
Go言語でテストするための適切なパッケージの命名
私はGo内でいくつかの異なるテストパッケージの命名戦略を見てきましたが、それぞれの長所と短所が何であり、どれを使用する必要があるかを知りたいと思っていました。 戦略1: ファイル名:github.com/user/myfunc.go package myfunc テストファイル名:github.com/user/myfunc_test.go package myfunc 例については、bzip2を参照してください。 戦略2: ファイル名:github.com/user/myfunc.go package myfunc テストファイル名:github.com/user/myfunc_test.go package myfunc_test import ( "github.com/user/myfunc" ) 例については、ワイヤーを参照してください。 戦略3: ファイル名:github.com/user/myfunc.go package myfunc テストファイル名:github.com/user/myfunc_test.go package myfunc_test import ( . "myfunc" ) 例については、文字列を参照してください。 Go標準ライブラリは、戦略1と2を組み合わせて使用​​しているようです。3つのうちどれを使用すればよいですか?これはpackage *_test、パッケージのプライベートメソッドをテストできないことを意味するため、テストパッケージに追加するのは面倒ですが、気付かない隠れた利点があるのでしょうか。
102 unit-testing  go 

19
VS 2010テストランナーエラー「テストの実行中にエージェントプロセスが停止しました。」
Visual Studio 2010には、いくつかの単体テストがあります。テストリストを使用して一度に複数のテストを実行すると、1つ以上のテストで次のエラーが表示されることがあります。 テストの実行中にエージェントプロセスが停止しました。 同じテストが失敗することは決してありません。もう一度テストを実行しようとすると、成功します。 Connectでこのバグレポートを見つけました。これは同じ問題のようですが、解決策はありません。 他の誰かがこの動作を見ましたか?どうすれば回避できますか? 編集する 私はまだこのバグを経験しており、同じソフトウェア/ハードウェアのセットアップで私の同僚の多くもそうです。これまでに回答を評価しましたが、問題は解決しません。私はこの問題の解決策の賞金を始めています。

4
クラスに属性があるかどうかをテストしますか?
私は少しテストファースト開発をしようとしています、そして私のクラスが属性でマークされていることを確認しようとしています: [SubControllerActionToViewDataAttribute] public class ScheduleController : Controller クラスにその属性が割り当てられていることを単体テストするにはどうすればよいですか?

2
ジャスミンスパイの複数の呼び出しに対して異なる戻り値を設定する方法
私がこのような方法をスパイしているとしましょう: spyOn(util, "foo").andReturn(true); テスト中の関数がutil.foo複数回呼び出します。 スパイtrueが最初に呼び出されたときにfalse、2回目に戻ってくるようにすることはできますか?または、これについて別の方法がありますか?

2
非モックオブジェクトのメソッドが呼び出されたことを確認する方法は?
mockitoはモックオブジェクトのメソッドが呼び出されているかどうかを確認するだけであり、モックオブジェクトは常に次のようなものを持っているようです doReturn().when(mock object) しかし、モックオブジェクトを作成して定義doReturn().when(mock object) し、別のオブジェクトのメソッドが呼び出されることを確認できますか? これが私がしたいことです:私はmockEnvironmentを定義し、何が起こっても応答を返します。しかし、私は別のケースで呼び出されたanotherObjのさまざまなメソッドを確認したいと思います。 どうやってするか? public class BaseClass { private Environment mockEnvironment; @Test public void testcase () { setMockitoEnvironment(); response = foo(mockEnvironment, argument1); verify(anotherObj).codePath1(...); response = foo(mockEnvironment, argument2); verify(anotherObj).codePath2(...); } } //this method successfully return a response with any input //because I do not care how response …

2
Pythonのソースコードを整理するにはどうすればよいですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 6年前休業。 この質問を改善する 私はPythonを使い始めており(今こそ試してみる時期です)、いくつかのベストプラクティスを探しています。 私の最初のプロジェクトは、複数のスレッドでコマンドライン実験を実行するキューです。非常に長いmain.pyファイルを取得し始めていますが、分割したいのですが。一般的に、私が探しているのは:Pythonプログラマーはどのようにして複数のソースファイルを整理するのですか?あなたのために働く特定の構造はありますか? 私の具体的な質問は次のとおりです。 各クラスを個別のファイルに含める必要がありますか? ソースコードに関連する単体テストを整理するにはどうすればよいですか? ドキュメントのコメント、特にコマンドライン操作のコメントはどこに置くべきですか? 複数のディレクトリを使用している場合、それらの間でクラスをインポートするにはどうすればよいですか? 私はおそらく、試行錯誤によって自分の結論のいくつかをここに引き出すことができますが、むしろ良いものから始めたいと思います。

5
モックフレームワークとMS Fakesフレームワーク
NMockとVS 2011 Fakes FrameworkのようなMockフレームワークの違いについて少し混乱しています。MSDNを通して、FakesはRhinoMockやNMockのように依存関係を模擬できることを理解していますが、アプローチは異なります。Fakesはこの機能を実現するコードを生成しますが、Mocksフレームワークはそうではありません。それで私の理解は正しいですか?偽物は単なる別のモックフレームワークですか

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.