タグ付けされた質問 「tdd」

テスト駆動開発(TDD)では、失敗する自動テストを記述して、何を構築するかを指定します。次に、テストされた条件を満たすコードを記述して、テストに合格します。最後に、コードがリファクタリングされます。

30
プライベートメソッド、プライベートメソッド、フィールド、または内部クラスを持つクラスをテストするにはどうすればよいですか?
内部プライベートメソッド、フィールド、またはネストされたクラスを持つクラスをユニットテスト(xUnitを使用)するにはどうすればよいですか?または、内部リンケージ(staticC / C ++で)によってプライベートにされた関数、またはプライベート(匿名)ネームスペースにある関数? テストを実行できるようにするためだけに、メソッドまたは関数のアクセス修飾子を変更するのは悪いようです。
2728 java  unit-testing  tdd 

13
TDD用のJavaScript単体テストツール
この質問の答えはコミュニティの努力です。この投稿を改善するには、既存の回答を編集してください。現在、新しい回答や相互作用を受け入れていません。 私は多くのJavaScriptユニットテストとテストツールを調査して検討しましたが、完全にTDDに準拠するための適切なオプションを見つけることができませんでした。では、TDDに完全に準拠したJavaScript単体テストツールはありますか?

5
Mockitoを使用して特定のメソッドが呼び出されなかったことを確認するにはどうすればよいですか?
オブジェクトの依存関係でメソッドが呼び出されていないことを確認するにはどうすればよいですか? 例えば: public interface Dependency { void someMethod(); } public class Foo { public bar(final Dependency d) { ... } } Fooテストでは: public class FooTest { @Test public void dependencyIsNotCalled() { final Foo foo = new Foo(...); final Dependency dependency = mock(Dependency.class); foo.bar(dependency); **// verify here that someMethod was not …
625 java  tdd  mockito 

30
プライベートメソッドをどのようにユニットテストしますか?
いくつかのパブリックメソッドとプライベートメソッドを持つクラスライブラリを構築しています。私はプライベートメソッドをユニットテストできるようにしたいと思います(ほとんどは開発中ですが、将来のリファクタリングにも役立つ可能性があります)。 これを行う正しい方法は何ですか?

6
ユニットテストを実行するときのC#の「内部」アクセス修飾子
私はユニットテストの初心者です。「内部」アクセス修飾子をもっと使い始める必要があるかどうかを考えています。'internal'を使用してアセンブリ変数 'InternalsVisibleTo'を設定すると、テストプロジェクトからpublicを宣言したくない関数をテストできることを知っています。少なくとも各プロジェクトには(独自に)テストプロジェクトがあるので、常に「内部」を使用するだけでよいと考えます。私がこれをしてはいけない理由を教えてくれませんか?いつ「プライベート」を使用すればよいですか?
469 c#  .net  unit-testing  tdd 

30
単体テストアンチパターンカタログ
ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 アンチパターン:実際のアンチパターンを単純な悪い習慣、悪い習慣、悪い考えから正式に区別するには、少なくとも2つの重要な要素が存在する必要があります。 最初は有益であるように見えるが、最終的には有益な結果よりも悪い結果をもたらす、繰り返される行動パターン、プロセスまたは構造 明確に文書化され、実際の実践で実証され、再現可能なリファクタリングされたソリューション。 「実際に」一度見たTDDアンチパターンに投票してください。 James Carrによるブログ投稿と テスト駆動開発yahoogroupに関する関連ディスカッション 名前のないものを見つけた場合は、投稿してください。アンチパターンごとに1つの投稿をして、投票が何かにカウントされるようにしてください。 私の既得権は、トップnのサブセットを見つけることです。そうすれば、近い将来、ランチボックスのミーティングで話し合うことができます。

30
テスト駆動開発の欠点?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。回答は事実、参考文献、専門知識によって裏付けられると期待していますが、この質問は、議論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 テスト駆動設計を採用すると何が失われますか? ネガのみをリストします。否定的な形で書かれた利点を挙げないでください。

7
Ruby on RailsでTDDを始めるには?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 5年前休業。 この質問を改善する 私は概念に精通しています(大学でテストクラスを受講しました)が、「実際の」TDDプロジェクトに取り組んだことがないので、それらを実際にどのように使用するかはまだわかりません。 Ruby on Railsを使用して(おそらく2.3を使用して)プロジェクトの開発を開始しようとしています。このアプリケーションは、データ、ユーザー、およびいくつかのファイルを管理するために使用されます。最初はそれほど複雑ではありませんが、今後6か月で大幅に拡大する可能性があるので、TDDにさらに取り組むための適切な時期だと思います。 私はそれを行う方法についての基本的な考えを持っていますが、それでもいくつかの指針とアドバイスが必要です: Ruby on Rails TDD 101のどの記事を読むべきですか? テストには何が必要ですか? どのgem / pluginを使うべきですか? rspecを使用する必要がありますか?他に何か? テストクラスをすべて取得したら、それらをどのように展開しますか?(例:継続的な統合) TDDは本当にどれくらいの時間を消費しますか? これに関する本を読む必要がありますか、それともそれをいじってオンラインチュートリアルを読むだけですべてを入手できますか?本を読む必要がある場合、どの本を読みますか? 私は例で学ぶのが好きなので、誰かが私にどのように行き、この問題を解決するためにTDDアプローチをとるのか教えてもらえますか? 私には会社があります。連絡先があります。連絡先は1つの会社にリンクできます。会社は複数の連絡先を持つことができます。連絡先、会社を作成し、連絡先を会社にリンクする方法を作成したいと考えています。 あなたの答えでこの例を使用する必要はありませんが、それは役に立ちます:)

6
rspecを使用してファイルのアップロードをテストする-Rails
Railsでファイルのアップロードをテストしたいのですが、これを行う方法がわかりません。 これがコントローラーコードです: def uploadLicense #Create the license object @license = License.create(params[:license]) #Get Session ID sessid = session[:session_id] puts "\n\nSession_id:\n#{sessid}\n" #Generate a random string chars = ("a".."z").to_a + ("A".."Z").to_a + ("0".."9").to_a newpass = "" 1.upto(5) { |i| newpass << chars[rand(chars.size-1)] } #Get the original file name upload=params[:upload] name = upload['datafile'].original_filename @license.format …

23
単体テストを既存の本番プロジェクトに追加できますか?もしそうなら、どのように、そしてそれは価値がありますか?
運用中の既存のプロジェクトに単体テストを追加することを強く検討しています。TDD (フェイスパーム)のメリットが実際に見られるようになる前に18か月前に開始されたので、これは多くのプロジェクトを含むかなり大きなソリューションであり、単体テストの追加をどこから始めればよいかわかりません。私がこれを考慮しているのは、時々古いバグが再浮上しているように見える、またはバグが実際には修正されずに修正済みとしてチェックインされることです。単体テストは、これらの問題の発生を軽減または防止します。 SOで同様の質問を読むことで、バグトラッカーから始めて、各バグのテストケースを作成してリグレッションを防ぐなどの推奨事項を見てきました。ただし、全体像を見逃してしまい、最初からTDDを使用した場合に含まれていたはずの基本的なテストを見落としてしまうのではないかと心配しています。 既存のソリューションが適切に単体テストされ、ただ組み込まれているだけではないことを確認するために、順守すべきプロセス/ステップはありますか?どのように私はテストが良い品質のものであり、念のないことを確認することができます任意のテストの無いテストよりも優れています。 だから私も私が求めているのは何かだと思います。 運用中の既存のソリューションに取り組む価値はありますか? このプロジェクトのテストを無視し、将来の可能性のある書き換えで追加する方が良いでしょうか? より有益になるもの; 数週間かけてテストを追加したり、数週間かけて機能を追加したりしますか? (明らかに、3番目のポイントに対する答えは、管理者と開発者のどちらに話しているかに完全に依存します) バウンティの理由 奨励金を追加して、幅広い回答を引き付け、それが良いことであるという私の既存の疑いを確認するだけでなく、それに対するいくつかの正当な理由も確認します。 この質問を長所と短所で後で書き、製品の将来の開発をTDDに移行するのに何時間も費やす価値があることを経営者に示すことを目指しています。私はこの課題に取り組み、自分自身の偏見のない視点で私の推論を展開したいと思います。

16
単体テストのランダムデータ?
私の同僚には、フィールドにランダムデータを入力するオブジェクトの単体テストを作成しています。彼の理由は、通常のテストでは静的な値が1つしか使用されないのに対して、さまざまな値をテストするため、テストの範囲が広がるためです。 私はこれに対していくつかの異なる理由を彼に与えました、主なものは: ランダムな値は、テストが真に再現可能ではないことを意味します(つまり、テストがランダムに失敗する可能性がある場合、ビルドサーバーで失敗し、ビルドを中断することができます) ランダムな値でテストが失敗した場合は、a)オブジェクトを修正し、b)毎回その値をテストするように強制する必要があります。これにより、機能することがわかりますが、ランダムであるため、値が何であるかはわかりません。 別の同僚が追加しました: 例外をテストしている場合、ランダムな値では、テストが予期した状態になることは保証されません ランダムデータは、ユニットテストではなく、システムのフラッシュアウトと負荷テストに使用されます 他の誰かが私に彼にこれをやめるように彼に与えることができる追加の理由を追加できますか? (または、これは単体テストを書くための許容できる方法であり、私と私の同僚は間違っていますか?)

11
テストにJUnitを使用する理由
たぶん私の質問は初心者のものですが、私が使用する状況を本当に理解できません junit? 単純なアプリケーションを作成する場合でも、大きなアプリケーションを作成する場合でも、System.outステートメントを使用してテストします。 JUnitを使用してテストクラスを作成する必要があります。同じメソッドを呼び出す必要がある場合、プロジェクトに不要なフォルダーを作成し、それらが返すものを確認すると、すべてに注釈を付けるオーバーヘッドが発生します。 クラスをSystem.out作成して一度にテストしますが、Testクラスを作成しないのはなぜですか? PS。私は今学んでいる大きなプロジェクトに取り組んだことがありません。 それで、目的は何ですか?
131 java  unit-testing  junit  tdd 


14
TDDとBDDの主な違いは何ですか?[閉まっている]
休業。この質問はもっと集中する必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4ヶ月前に閉鎖。 この質問を改善する ここ数年、.NETコミュニティではテスト駆動開発が大流行しています。最近、ALT.NETコミュニティでBDDについて不平を言っています。それは何ですか?TDDと何が違うのですか?
129 unit-testing  tdd  bdd 

30
単体テストを作成するときに何をテストするかをどのようにして知っていますか?[閉まっている]
休業。この質問はもっと集中する必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 この質問を改善する C#を使用Userして、ユーザー名、パスワード、アクティブフラグ、名、姓、フルネームなどを持つクラスが必要です。 ユーザーを認証して保存する方法があるはずです。メソッドのテストを書くだけですか?また、プロパティは.Netのゲッターおよびセッターであるため、プロパティのテストについても心配する必要がありますか?
127 c#  unit-testing  tdd 

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