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

ソフトウェアテストは、プログラムまたはシステムの属性または機能を評価し、必要な結果を満たしているかどうかを判断することを目的とするアクティビティです。

12
JUnitを使用して環境変数に依存するコードをテストする方法は?
環境変数を使用するJavaコードがあり、コードの動作はこの変数の値に依存します。このコードを環境変数のさまざまな値でテストしたいと思います。JUnitでこれを行うにはどうすればよいですか? Javaで環境変数を設定する一般的な方法をいくつか見てきましたが、特にテストが互いに干渉してはならないことを考えると、Javaのユニットテストの側面に関心があります。

5
Mockitoを使用する場合のモッキングとスパイの違いは何ですか?
Mockitoスパイの使用のユースケースは何ですか? callRealMethodを使用すると、すべてのスパイのユースケースをモックで処理できるように思えます。 私が見ることができる1つの違いは、ほとんどのメソッド呼び出しを実際のものにしたい場合、モック対スパイを使用するためにコードのいくつかの行を節約することです。それですか、それとも全体像が欠けていますか?
137 java  testing  mocking  mockito 

8
sinonスタブを簡単にクリーンアップ
モカのbeforeEachブロックで問題なく動作するすべてのsinonスパイのモックとスタブを簡単にリセットする方法はありますか? サンドボックス化はオプションですが、これにサンドボックスを使用する方法はわかりません beforeEach -> sinon.stub some, 'method' sinon.stub some, 'mother' afterEach -> # I want to avoid these lines some.method.restore() some.other.restore() it 'should call a some method and not other', -> some.method() assert.called some.method

10
PythonでBDDを練習する[終了]
現在のところ、この質問は、Q&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問が改善され、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 ビヘイビア駆動開発を実践するためにPythonで利用できる最も高度なフレームワークとツールはどれですか?特に、ルビー用のrspecおよびmochaと同様のツールを見つけることは素晴らしいことです。
133 python  testing  bdd 

8
すべてのRubyテストが発生:nil:NilClassの未定義のメソッド「authenticate」
私のテストのほとんどは以下を上げています、そして私はその理由を理解していません。すべてのメソッド呼び出しで「認証」エラーが発生します。「認証」というメソッドがあるかどうかコードをチェックしましたが、そのようなメソッドはありません。 1) Admin::CommentsController handling GET to index is successful Failure/Error: get :index undefined method `authenticate!' for nil:NilClass # ./spec/controllers/admin/comments_controller_spec.rb:9:in `block (3 levels) in <top (required)>' 124) PostsController handling GET for a single post should render show template Failure/Error: get :show, :year => '2008', :month => '01', :day => '01', :slug …

11
統合テストと機能テストの違いは何ですか?[閉まっている]
休業。この質問はもっと集中する必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 4年前休業。 この質問を改善する 機能テストと統合テストは同じですか? ユニットテストからテストを開始し、ユニットテストが完了したら、システム全体をテストする統合テストに進みます。機能テストは統合テストと同じですか?それでもシステム全体を取り、機能の適合性についてテストします。
132 testing 

6
テスト/ QAプロセスと統合されたGit分岐戦略
私たちの開発チームはGitFlow分岐戦略を使用してきました。 最近、ソフトウェアの品質を向上させるために、テスターを数名採用しました。アイデアは、すべての機能がテスターに​​よってテスト/ QAされるべきであるということです。 以前は、開発者は別々の機能ブランチで機能に取り組みdevelop、完了したらそれらをブランチにマージします。開発者は自分の作業をそのfeatureブランチで自分でテストします。今、テスターと一緒に、私たちはこの質問をし始めます テスターはどのブランチで新機能をテストする必要がありますか? 明らかに、2つのオプションがあります。 個々の機能ブランチ 上のdevelop枝 開発ブランチでのテスト 最初は、これが確実な方法であると信じていました。 この機能は、develop開発が始まってからブランチにマージされた他のすべての機能でテストされます。 競合は早期に検出できます これにより、テスターの作業が簡単になり、develop常に1つのブランチ()のみを処理します。彼は開発者に、どのブランチがどの機能に対応するかを尋ねる必要はありません(機能ブランチは、関連する開発者が独占的に自由に管理する個人のブランチです) これに関する最大の問題は次のとおりです。 developブランチはバグで汚染されています。 テスターはバグまたは競合を発見すると、開発者に報告し、開発ブランチで問題を修正します(機能ブランチはマージされると中止されました)。その後、さらに修正が必要になる場合があります。複数のサブシーケンスのコミットまたはマージ(developバグを修正するためにブランチからブランチが再作成される場合)はdevelop、可能であればブランチからの機能のロールバックを非常に困難にします。developブランチにマージされ、ブランチで修正される複数の機能があります。これは、developブランチの一部の機能のみを含むリリースを作成するときに大きな問題を引き起こします 機能ブランチでのテスト そこで、もう一度考えて、機能ブランチで機能をテストする必要があると判断しました。テストする前に、developブランチからの変更を機能ブランチにマージします(ブランチに追いつきますdevelop)。これはいい: あなたはまだ主流の他の機能で機能をテストします さらなる開発(バグの修正、競合の解決など)によってdevelopブランチが汚染されることはありません。 完全にテストおよび承認されるまで、機能をリリースしないことを簡単に決定できます。 ただし、いくつかの欠点があります テスターはコードのマージを行う必要があり、競合がある場合(非常に可能性が高い)、開発者に支援を依頼する必要があります。当社のテスターはテストを専門としており、コーディングはできません。 機能は、別の新しい機能がなくてもテストできます。たとえば、機能AとBは両方とも同時にテスト中ですが、どちらもdevelopブランチにマージされていないため、2つの機能は互いに認識していません。つまりdevelop、両方の機能が開発ブランチにマージされたときに、ブランチに対して再度テストする必要があります。そして、これを将来テストすることを忘れないでください。 機能AとBの両方がテストおよび承認されているが、マージされたときに競合が特定された場合、両方の機能の開発者は両方とも、テストを通過した機能ブランチであるため、自分自身の障害/ジョブではないと考えます。コミュニケーションには余分なオーバーヘッドがあり、競合を解決する人がいらいらすることもあります。 上記は私たちの物語です。リソースが限られているため、どこでもすべてをテストすることは避けたいと思います。私たちはこれに対処するためのより良い方法をまだ探しています。他のチームがこの種の状況をどのように処理するかを聞きたいです。
131 git  testing  qa  git-flow 

3
イスタンブールカバレッジレポートの読み方
私は常にユニットテストにJasmineを使用してきましたが、最近、イスタンブールを使用してコードカバレッジレポートを提供し始めました。つまり、彼らが私に伝えようとしていることの要点はわかりますが、これらの各パーセンテージ(Stmts、Branches、Funcs、Lines)が何を表しているのか本当にわかりません。これまでのところ、グーグル検索では、しっかりした説明/リソースを見つけることができませんでした。 質問:要点はわかりましたが、誰かが適切な説明や適切な説明へのリンクを投稿できますか? 三次質問:コードの特定の部分がカバーされていないことを識別する方法はありますか?これまでのところ、このレポートを実際に確認することなく、基本的に推測しています。 -------------------|-----------|-----------|-----------|-----------| File | % Stmts |% Branches | % Funcs | % Lines | -------------------|-----------|-----------|-----------|-----------| controllers/ | 88.1 | 77.78 | 78.57 | 88.1 | dashboard.js | 88.1 | 77.78 | 78.57 | 88.1 | -------------------|-----------|-----------|-----------|-----------| All files | 88.1 | 77.78 | 78.57 | 88.1 | …

6
Node.jsで使用するのに最適なテストフレームワークは何ですか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 6年前休業。 この質問を改善する 私はhttps://github.com/ry/node/wiki/modules#testingでテストフレームワークのかなり長いリストを見てきました。これらのフレームワークでの経験は何ですか? ブラウザーで実行できることは明らかですが、私は主にNode.jsに関心があります。非常に非同期の傾斜のあるものがいいでしょう。

9
メールを送信するアプリを開発してテストする方法(誰かのメールボックスにテストデータを入力せずに)[閉まっている]
現在のところ、この質問は、Q&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問が改善され、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 メールを送信するアプリがたくさんあります。時々それは一度に1つか2つのメッセージです。時にはそれは何千ものメッセージです。 開発では、通常、受信者のアドレスを自分のアドレスに置き換えてテストします。彼らがそれに飽きて、より良い解決策を見つけるまで、それは他の誰もがやっていることだと私は確信しています。 メッセージをキャッチしてSQLLiteデータベース、mboxファイルなどにダンプするダミーのSMTPサーバーを作成することを考えていました。 しかし、確かにそのようなツールはすでに存在していますか?メールの送信をどのようにテストしますか?

11
時間に依存するコードをテストするためにJava System.currentTimeMillisをオーバーライドする
System.currentTimeMillisホストマシンのシステムクロックを手動で変更する以外に、コードまたはJVM引数を使用して、で表示される現在の時刻を上書きする方法はありますか? 少し背景: 現在の日付(つまり、月の1日、年の1日など)を中心にロジックの多くを実行する多くの会計ジョブを実行するシステムがあります。 残念ながら、従来のコードの多くは、new Date()またはなどの関数を呼び出しますがCalendar.getInstance()、どちらも最終的にはに呼び出されSystem.currentTimeMillisます。 テストの目的で、今のところ、システムクロックを手動で更新して、テストが実行されているとコードが判断する日時を操作する必要があります。 だから私の質問は: によって返されるものをオーバーライドする方法はありますかSystem.currentTimeMillis?たとえば、そのメソッドから戻る前に、JVMにオフセットを自動的に加算または減算するように指示するには、 前もって感謝します!
129 java  testing  jvm  systemtime 

6
「testing」パッケージを使用してGoテストでどのように印刷しますか?
Goでテストを実行して、何かを出力するステートメント(つまり、テストのデバッグ用)を実行していますが、何も出力されません。 func TestPrintSomething(t *testing.T) { fmt.Println("Say hi") } このファイルでgo testを実行すると、出力は次のようになります。 ok command-line-arguments 0.004s 私が知る限り、本当に印刷させる唯一の方法は、次のようにt.Error()を介して印刷することです。 func TestPrintSomethingAgain(t *testing.T) { t.Error("Say hi") } これはこれを出力します: Say hi --- FAIL: TestPrintSomethingAgain (0.00 seconds) foo_test.go:35: Say hi FAIL FAIL command-line-arguments 0.003s gom: exit status 1 私はグーグルで検索してマニュアルを調べましたが、何も見つかりませんでした。
129 testing  go 

10
rspecリクエストスペックでリクエストヘッダーを設定する方法
コントローラーの仕様では、次のようにhttp acceptヘッダーを設定できます。 request.accept = "application/json" しかし、リクエスト仕様では、「リクエスト」オブジェクトはnilです。どうすればここでそれを行うことができますか? http acceptヘッダーをjsonに設定する理由は、これを実行できるようにするためです。 get '/my/path' これの代わりに get '/my/path.json'

6
JUnit:統合テストとユニットテストの分割
私はJunitテストの負荷を継承しましたが、これらのテスト(ほとんどが機能していないことを除いて)は、実際の単体テストと統合テスト(外部システム、dbなどが必要)の混合です。 だから私はそれらを実際に分離する方法を考えているので、ユニットテストを素晴らしく迅速に実行でき、その後統合テストを実行できます。 オプションは... それらを別々のディレクトリに分割します。 (v3から)Junit4に移動し、クラスに注釈を付けてそれらを分離します。 ファイルの命名規則を使用して、クラス(AdapterATestとAdapterAIntergrationTest)を識別します。 3には、Eclipseに「選択したプロジェクト/パッケージまたはフォルダーですべてのテストを実行する」オプションがあるという問題があります。したがって、統合テストを実行するだけでは非常に困難になります。 2:開発者がユニットテストクラスで統合テストを作成し始める可能性があり、混乱するだけです。 1:最も近い解決策のように見えますが、私の直感はそこにもっと良い解決策があるはずだと言っています。 それが私の質問です。統合テストと適切な単体テストをどのように分解するのでしょうか。

11
DBなしのdjango単体テスト
データベースを設定せずにdjangoユニットテストを書く可能性はありますか?データベースの設定を必要としないビジネスロジックをテストしたい。また、dbのセットアップは高速ですが、状況によっては必要ない場合もあります。
126 django  testing 

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