Kodrill

Python 3 エンジニア認定実践試験 / テスト・デバッグと暗号関連 ・ 無料問題 2/5

テスト・デバッグと暗号関連 問題2[モックを使ったテスト (unittest.mock)]

次のコードを実行したときの出力を選んでください。

Python
from unittest import mock​m = mock.Mock(return_value=10)print(m(1, x=2), m.called, m.call_count)print(m.call_args)​fetch = mock.Mock(side_effect=[1, ValueError("boom")])print(fetch())try:    fetch()except ValueError as e:    print("error:", e)

選択肢

  • A.None True 1 call(1, x=2) [1, ValueError('boom')] error: boom
  • B.10 True 1 call(1, x=2) 1 error: boom正解
  • C.10 True 1 (1, {'x': 2}) 1 error: boom
  • D.10 False 0 call(1, x=2) 1 1

解説実行して確認済み

Mock は呼び出されると return_value の値を返し、呼び出しの記録 (called・call_count・call_args など) を残します。side_effect にリストを渡すと呼び出しのたびに順に値を返し、要素が例外の場合はその例外を送出します。外部 API のエラーなど、再現しにくい状況をテストするのに使います。

この問題の答えは、試験の対象バージョンでコードを実際に実行して確かめています。確かめ方は運営者情報に書いています。

「テスト・デバッグと暗号関連」の要点を解説記事で読む

「テスト・デバッグと暗号関連」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。