問題タブ [expectations]
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.
mocking - 複数の expect() 呼び出しを使用した PHPUnit モック
PHPUnit を使用して、同じスタブ/モックから複数の期待値を取得するにはどうすればよいでしょうか。
たとえば、モックがdisplay()
呼び出されたメソッドを持ち、NULL を返すことをテストしたいとします。process()
メソッドが呼び出されることもテストしたいと思います。
実際、私のテストはtestProcessIsCalledIfDisplayReturnNull()
.
だから私は同じモックオブジェクトに2つの期待を設定する必要があり、マニュアルはそれについて本当に役に立ちません:(
ruby - RSpec を使用したハッシュ コンテンツのテスト
次のようなテストがあります。
これは冗長です。私の期待を述べるより簡潔な方法はありますか?私はドキュメントを見てきましたが、私の期待を圧縮する場所がわかりません。ありがとう。
python - assertRaisesの使用-伝播された例外の処理
ラップされた例外をテストしているコードがあります。失敗して例外が伝播した場合、エラーメッセージとバックトレースは十分に詳細ではないと思いました。これは主に、テストに対して何が期待されているかがわからなかったためです。 、例外と期待の詳細を教えてください。
テストを調整しました(以下のサンプルコードを参照)。このタイプのアプローチが有効であるかどうか、およびPythonテストまたはモックフレームワークのいずれかがそれを直接実装できるかどうかを知りたいですか?(現在、unittestとmoxを使用しています)
この質問に対する回答の1つは、このシナリオでself.failを使用することの適切性について簡単に触れていますが、実際には詳しく説明していません。私の仮定は、テストを1つの領域に制限しようとすると、テストに失敗しても大丈夫だということです。
注:コード例を実行すると、私が見たい動作を示すために失敗するはずです。Python 2.7、Mox0.5.3を使用しています
java - 模擬オブジェクトの期待を含めようとすると、このSecurityExceptionの原因は何ですか?
テストでモックオブジェクトを使用しようとしています。ただし、モックオブジェクトの期待値を一覧表示しようとすると、同じ例外がスローされます。
例外のスタックトレースは次のとおりです。
次のコードを実行すると、エラーが発生します。
この例外の原因は何ですか?
java - JMockit - 期待値と静的メソッド
メソッドをモックして、特定のオブジェクトを 1 つ返すようにしようとしています。
しかし、私は2つの問題に直面しています:
- リターン コールで「現在の呼び出しがありません」というメッセージが表示される
- 結果変数を追加しようとすると、コンパイルの問題が発生します。
私はJDK1.5を使用しています。何か案は?
ruby-on-rails - 応答は<:redirect>であると予想されましたが、<401>でした
最近、アプリケーションにある標準リクエストの一部をXHR(Ajax)リクエストに変換し始めました。これを反映するようにRSpecテストを更新中ですが、次のエラーメッセージが表示されます。
私のスペックは次のようになります:
test.logファイルのエントリは次のようになります。
これらは、サインインしていない(許可されていない)ユーザーのコンテキスト内にあります。アサーションを次のように変更すると:
このエラーが発生します:
そして、それぞれの役に立たないログエントリ...
無許可のステータスが与えられた場合、無許可のステータスが与えられることを断言したいと思います。誰か助けてもらえますか?
jmock - 期待値の戻り値を保存する
期待のリターンベールを使用して、もう1つの期待を追加したいと思います。新しいアカウントを作成し、Accountオブジェクトを返すためのインターフェイスcreateAccountを持つm_accountProcessorオブジェクトがあります。このオブジェクトを保存して、encode関数呼び出しのもう1つの期待値に追加したいと思います。どうすれば値を保存できますか?
ruby-on-rails - 何も嘲笑することなく期待を設定する
MiniTest::Spec と Mocha の使用:
コードを正しく動作させると、このテストは失敗します。これは、 stubsDevice.expects(:scope_by_ip_list)
も呼び出すためです。 aまたはそのようなものを指定していないため、 でメソッドをスタブ 化します。したがって、デバイスのリストを適切にスコープしてからさらに操作を行う私のコードでは、さらに操作が爆発します。Device.scope_by_ip_list
.returns(Devices.scoped)
nil
ただし、パラメーターを指定する必要はありません。.returns
パラメーターが何を返すかはまったく気にしないからです。メソッドをスタブしたくありません。私はそれに期待を設定し、そのまま機能させたいだけです.
それを行う方法はありますか?
(私には、次のようなことを言うのは非常にぎこちないように思えDevice.expects(:foo).returns('bar')
ます —私が言うとき、私はそのメソッドをスタブすると言っているのではありません! スタブしたい場合は、と言うことができます。)Model
method
Device.stubs(:foo)
probability - 異なるポートフォリオの別の分散と期待
A と B は競合する 2 つの企業です。買うかどうかは投資家が決める
(a) A の 100 株、または
(b) Bの100株、または
(c) A の 50 株と B の 50 株。
A の 1 株から得られる利益は、分布 P(X = 2) = P(X =-2) = 0.5 の確率変数 X です。B の 1 株から得られる利益は確率変数 Y で、分布は P(Y =4) = 0.2、P(Y = -1) = 0.8 です。
X と Y が独立している場合、戦略 (a)、(b)、および (c) の総利益の期待値と分散を計算します。
--- A と BI の両方の E(X) の場合: EA(X) =(2)(.5) + (-2)(.5) = 0. EB(X) =(4)(.2 ) + (-1)(.8) = 0。
分散を取得するには: EA(X^2)= (2^2)(.5) + (-2^2)(.5) = 0. EB(X^2)= (4^2)(.2) + (-1^2)(.8) = 3.2 + .8 = 4
VarA(X) = EA(x^2) - EA(X)^2 = 0 - 0^2 = 0 VarB(X) = EB(x^2) - EB(X)^2 = 4 - 0^2 = 4
a) 100 株 * X 利益 = 100X = A
E(A) = E(100x) = 100E(x) = 100 * 0 = 0 Var(A) = 100^2*Var(X) = 10,000 * 1 = 0
b) 100 株 * X 利益 = 100X = B
E(B) = E(100x) = 100E(x) = 100 * 0 = 0 Var(B) = 100^2*Var(X) = 10,000 * 4 = 40,000
c) 50 株 * X 利益 + 50 株 * X 利益 = 50X + 50Y = Z
E(Z) = EA(50x) + EB(50X)= 50EA(X) + 50EB(X)= 50*0 + 50* 0 = 0 Var(Z) = 50^2*VarA(X) + 50^ 2*VarB(X) =2500*0 + 2500 * 4 = 10,000
私の答えが正しいか間違っているかはわかりませんが、私は本当に自分自身を疑っています。誰でも私を確認または修正できますか? ありがとうございました!
ruby - should_receive は予期しないことをしますか?
次の 2 つの自明なモデルを考えてみましょう。
そして、次の Rspec テスト:
このテスト (または類似のテスト) を実行すると、スタブが機能していないように見えます。
ご想像のとおり、失敗は上記の「ここでエラー」とマークされた行にあります。should_receive
行をコメント アウトすると、このエラーは表示されなくなります。どうしたの?