タグ

unit testに関するarrowKatoのブックマーク (5)

  • 自動テストはなぜうまくいかないか?乗り越えるためには何が必要か? - Qiita

    リファクタリングの鶏卵問題 ソースコードがクソなので綺麗にしたい。 リファクタリングしたい。 しかし、リファクタリングが出来ない。 リファクタリングが出来ないのは、テストが無いからだ。 よし。じゃあテストを書こう。あれ、テストが書けない? そのようなテストが無く、書き換えられないことによる矛盾や憤りは皆さん何百回と感じてきたと思います。 しかし、この「テストが出来ない」ということを言語化するのは、非常に難しいと思います。それは、「テストが出来ない」には実は2つの視点があります。 質的にテストが困難なモジュールで、誰がやってもテストが書けない。 質的にモジュールはテスト可能だが、自分の実力が足りず、自分ではテストが書けない。 1.のようなテスト困難なモジュールは誰がやってもテストは書けないです。しかし、問題は、「テストを書きたい」と思ったとき、「自分がそれほどテストに詳しくない」という場

    自動テストはなぜうまくいかないか?乗り越えるためには何が必要か? - Qiita
  • [python] まだmockで消耗してるの?mockを理解するための3つのポイント

    隣の席の人がテスト強化週間とか抜かしていたので自分もちゃんと理解するために なるべくわかりやすく まとめてみようと思います。 この記事は 2015 tech-yuruyuru アドベントカレンダー - 15日目の記事です。 2015 tech-yuruyuru アドベントカレンダー (2015/12/01 00:00〜)# 2015 #tech-yuruyuru アドベントカレンダー #tech-yuruyuru のアドベントカレンダーです。 テーマは特に決まっていません。好きなことを書いてください。 * 参加したい日の参加枠に参加登録してください * 2 日以上参加したい場合は、フィードで宣言してください ## カレンダー 1. @pjxiao: VPC のプライベートサブネットについて解説 2. @pjxiao: mDNS を使いローカルマシン内の仮想環境に接続する 3. @pjxia

    [python] まだmockで消耗してるの?mockを理解するための3つのポイント
  • pytest ヘビー🐍ユーザーへの第一歩 - エムスリーテックブログ

    蛇行区間にはレールの内側に脱線防止ガードが設置される(文とは関係ありません)。 こんにちは、エムスリー・エンジニアリングG・基盤開発チーム小です。 pytest は Python のユニットテストのデファクトスタンダードです。エムスリーでも顧客向けレポートや機械学習Python&pytest をヘビー🐍1に使っています。 ですが、実は pytest は、意外と入門のハードルが高い。と言うのも、pytest の公式ドキュメント が、fixtureのような新概念も登場する上、詳細で分量が多いからです(しかも英語)。初心者にいきなり読ませると挫折する可能性大です 2。 そこで、とりあえず使い始めるのに必要そうな情報を日語でまとめました。 pytest ってどんなライブラリ? unittest や nose から簡単に移行できる 書き方がシンプル fixture モックもできる プラグイ

    pytest ヘビー🐍ユーザーへの第一歩 - エムスリーテックブログ
  • 単体テストと副作用 - 第1話 はじまり - Qiita

    シリーズ 単体テストと副作用 - 第1話 はじまり 単体テストと副作用 - 第2話 オブジェクト指向 単体テストと副作用 - 第3話 DIとモック 単体テストと副作用 - 第4話 副作用の回避 単体テストと副作用 - 第5話 オブジェクト指向への反乱 はじめに 私は単体テストをしてみたい(・ω・)! でも、やり方分かんないお。 ググってみる…。 うーむ。 検索してもそれっぽい記事があんまり見つからないお(´・ω・`) おかしくない? プログラマは単体テストと常に共にあると思っていたのに…。 その具体的な方法について書かれた記事が少ない気がする。 何も考えないでコードを書くと、とてもじゃないけどテストなんてできないようなゴミコードが出来あがる…。 それは即ち、単体テスト可能なコードというのは、キチンと考えられ、整然と法則に従っているコードだということ。 そのやり方を、誰かに指南してほしかっ

    単体テストと副作用 - 第1話 はじまり - Qiita
  • 副作用ってなんだ? 〜楽に小さく単体テストをしよう〜 - Qiita

    プログラミングにおける副作用(ふくさよう)とは、ある機能がコンピュータの(論理的な)状態を変化させ、 それ以降で得られる結果に影響を与えることをいう。代表的な例は変数への値の代入である。 wikipedia より つまり? (ざっくり言うと)同じ様に呼び出しても同じ結果が返ってくるとは限らない処理のことです 何が悪いの? 単体テストがしづらい!! (以後、この記事ではJUnitの様なテストフレームワークによるソースコードの自動テストを単体テストと言います) 他にも色々面倒を引き起こします テスト環境で評価するのが面倒だったり出来なかったりすることが多い 開発コストがかさむ 改修範囲の特定が難しかったり、切り分けが出来なかったりする サンプル見せてよ このクラスを単体テストしたいと思ったけど無理っぽいぞどうしよう、という想定です @AllArgsConstructor public clas

    副作用ってなんだ? 〜楽に小さく単体テストをしよう〜 - Qiita
  • 1