タグ

testに関するkabiyのブックマーク (4)

  • RSpecによるユニットテストの書き方 — recompile.net

    2012年04月19日 最近、新人のテストコードを見る機会があり、ユニットテストの書き方について考える機会があった。ユニットテストはテンプレートみたいなものがあるので、それさえ押さえれば、誰でも簡単に書くことができる。 ここでは、その方法について紹介したい。サンプルはRSpecで書くが、その他のユニットテストフレームワークでも、応用ができるとおもう。 はじめにごく単純化すると、テスト対象は状態を持ち、入力を与えると何らかの出力を行なうものである。入力が変われば出力は変化するし、状態が変化すると入力が同じでも出力が変わる(かもしれない)。 ユニットテストは、テスト対象の状態を操作し、与えた入力によって意図通りの出力を得られるかを確認する作業のことをいう。なので、ユニットテストを書くときには、オブジェクトの状態ごとにメソッド単位で入力と出力を確認するようにする。 RSpecの疑似コードで書くと

    RSpecによるユニットテストの書き方 — recompile.net
    kabiy
    kabiy 2012/04/20
    「新人」です。とてもわかりやすい解説、どうもありがとうございます /
  • Jenkins を iOS アプリ開発に導入してみた (SenTestKit編)

    最近、iOSアプリの開発でも継続的インテグレーション(CI)を取り入れていくプロジェクトが増加傾向にあるようで、各種ツールやライブラリ、ノウハウが出回ってきているように感じられます。そこで私も早速iOSアプリ開発でのCI導入を試してみることにしました。今回の導入試験では、以下のような環境を想定して行いました。 iOSアプリの開発を、Xcode 4.X系のプロジェクトとして行う。 VCSにはgitを採用し、githubの公開リポジトリをリポジトリサーバーとして使用する。 CIサーバにはMacを採用し、プロジェクトをビルドするためにXcode 4.Xをインストールしておく。 ■必要なツールを準備する CIといったら、まずは何はなくともJenkinsです。 http://jenkins-ci.org/ ここでは導入について詳しくは挙げませんが、私は以下のを参考にしました。 https://gi

    Jenkins を iOS アプリ開発に導入してみた (SenTestKit編)
    kabiy
    kabiy 2012/01/21
    / A-Liaison BLOG: Jenkins を iOS アプリ開発に導入してみた (SenTestKit編)
  • 動的 UTF-8 文字列 生成 ランダム - 鳩舎

    ランダムにUTF-8の文字列を生成しようとしてつまったので適当な解決策 codes = (0x00 ... 0x1ffff).to_a chars = [] (rand(10) + 10).times do chars << codes[rand(codes.length)] end chars.pack('U*') これで10文字から20文字のUTF-8の文字列がランダムに生成できる。制御文字とかもばんばん入ってくるのでテストデータとしては有効に作用し、僕のコードのバグが露見する。作らなければよかった。

    動的 UTF-8 文字列 生成 ランダム - 鳩舎
    kabiy
    kabiy 2012/01/21
    / 動的 UTF-8 文字列 生成 ランダム
  • TDD的にiOSアプリケーション開発してみる - yaakaito::Blog

    Test, Objective-C, iPad, iPhone(iOSのテストを書くとViewControllerがコントローラーになれる話 - yaakaito::Blog を先に見ておくと、何がやりたいか分かり易いかもしれません。)iOSアプリケーションのテストの書き方、難しいですよね。僕もよく分からないので手探り状態です。とりあえず、標準のOCUnit使ってTDDっぽいことしてみれば、何か叩き台になるかな?と思ったのでその過程を公開してみます。書くテストロジックテストだけです。後々アプリケーションテストもやる予定なのですが、というか一緒にやってたんですが、重すぎたので一旦ロジックテストだけです。ロジックテスト主体で書けるようにできる限りViewContollerと切り離してコードを考えています。ツッコミ大歓迎!(ロジックテストだけやるので、ビューに表示するところまで書いてません)リク

    kabiy
    kabiy 2012/01/18
    / TDD的にiOSアプリケーション開発してみる
  • 1