タグ

テストに関するhatz48のブックマーク (14)

  • 【ノンプログラマ向け】プログラマの仕事内容を理解する(1) ~「テスト」という工程が必要な理由 | きのこる庭

    前書き 「一緒に働いている以上、プログラマのことを理解して仕事をしたい」そう考えている企画・ディレクションの方は経験則的に少なくない。 ノンプログラマから見て、プログラマの仕事はイメージが湧きづらく、何故その工程にそこまでのコストをかける必要があるのかわからない事が多い。 プログラマは作業の必要性を説明してくれるかもしれないけれど、専門用語も多いしイマイチピンとこなかったりする。 ここで重要なのはまさに「イメージ」だと思う。すなわちイメージを提供するための良質なメタファーだと思う。メタファーが良質であれば より直感的に理解できる。 実際メタファーの力はバカにならない。「Chef」も「Jenkins」も それぞれ 統一的な世界観が学習者の直感的な理解を後押ししてくれる。 というわけで、今回から数回に分けて なるべく「技術的な話」をせずに イメージを想起しやすいストーリーを導入することで プロ

    【ノンプログラマ向け】プログラマの仕事内容を理解する(1) ~「テスト」という工程が必要な理由 | きのこる庭
  • sinatraでテストの入門の入門(その1) - tomiの日記

    「sinatraすげー」って今さら思い、sinatraで何か作ってみようかねーと思い、当然テストのことが気になりました。 そもそも「テスト出来るの?実はrailsと比べて大変じゃないの???」って感じのアホな不安でした。(1週間前までsinatraのことと言えば名前しかしらなかったので。。)テストについてはちゃんと公式ページで解説されています。rspecも使えます。capybaraも使えます。他のテストフレームワークも使えるようです。 参考ページは Testing Sinatra with Rack::Test です。ここの内容を理解していきます。 サンプルコード テスト対象のコード。いつものhello world。 require 'sinatra' get '/' do "Hello World #{params[:name]}".strip end テストコード require '.

    sinatraでテストの入門の入門(その1) - tomiの日記
  • プログラムに証明が付く日 | RANDMAX

    この記事は「Theorem Prover Advent Calendar 2013」6日目の記事です。 http://qiita.com/advent-calendar/2013/theorem_prover 神田「野らぼー」にて、地下の薄暗い店内で… 「そう言えばこないだ隣で起こってたポインタオーバーラン、対応大変そうだったですけどちゃんと家に帰れてたんでしょうかね、新婚なのに…」 「ヌルポとかポインタオーバーランとか、どうして無くならないんだろうね。その時はみんな手を抜いてるつもりなんて毛頭なくて、一生懸命考えて大丈夫だと思ってるはずなんだけどね。レビューもして、それでも起こった後でみんなでソース見てみると、なんで気づかなかったんだよ!ってことになる。」 「人間って、そういうの苦手なんでしょうねきっと。ほら、『何かほかにありませんか』って聞かれても出てこないじゃないですか。静的な解析っ

    プログラムに証明が付く日 | RANDMAX
    hatz48
    hatz48 2013/12/10
    面白い
  • JSのCIで椅子を投げられないため方法

    状況はかなり改善した 非同期、setTimeout, Ajax系はSinonJSで簡単に Swarm系のツールでDOMのテストも容易に 環境構築も非常に楽になった PhantomJSはバイナリもあるし、ビルドも簡単 Swarm系のツールならブラウザでURLへアクセスすればすぐテスト開始

  • JUnitのTheoryテストについて — recompile.net

    2011年08月05日 JUnit 4.4から組み合わせを表現するためのTheoryという機能が導入されています。このTheoryという機能について、日語での概説がなかったため、調べた範囲で紹介したいとおもいます。 Theoryの実行Theoryは組み合わせテストのための表現方法です。Theoryを利用するためには、@RunWithアノテーションでTheoriesランナーを指定します。すると、@Theoryアノテーションが指定されたメソッドが実行されます。 @RunWith(Theories.class) public class HelloTheoryTest { @Theory public void helloTheory() { System.out.println("Hello, Theory!"); } } 出力は下記の通りとなります。 Hello, Theory! Data

    JUnitのTheoryテストについて — recompile.net
  • 第2回 C++アプリケーションの効率的なテスト手法(CppUnit編)

    第2回 C++アプリケーションの効率的なテスト手法(CppUnit編):連載 C++開発者のための単体テスト入門(2/4 ページ) ■CppUnitテスト環境の構築 では、CppUnitを使った単体テストの方法を、順を追って説明します。簡単なカウンタ・クラス(=カウントを数える機能を持つクラス)をテスト対象としましょう。 さっそくVS 2005でソリューション「CounterSolution」を作成し、その中にテスト対象となる(「Win32」の)スタティック・ライブラリのプロジェクト「Counter」を用意します(※プロジェクトの作成方法については、前回の記事などを参照してください)。 そしてもう1つ、Counterプロジェクトをテストする「Win32 コンソール アプリケーション」のプロジェクトとして、「CounterTest」をCounterSolutionソリューションに追加します(

    第2回 C++アプリケーションの効率的なテスト手法(CppUnit編)
  • http://unicus.jp/skmk/archives/251

  • テスト/品質系エンジニアが身に付けておくと得をする7つの技術 - 現場のためのソフトウェア開発プロセス - たかのり日記

    「Software Test & Quality Advent Calendar 2011」の初日エントリーとして、書きます! テスト/品質系のエンジニアも、今や、テストや品質のことだけを知っているだけでは、幸せにはなれない時代となってきています。 プログラムは書けなくても、身に付けておくと良いと思っている技術をまとめてみました。 ※注 今回記述した内容は、以下のような私のドメインに偏ったモノになっています。 ミッションクリティカル/エンタープライズ系 Java/.NET 他のドメインでは異なる部分や他の標準的なツールがあれば、コメントを頂ければと思います。 バージョン管理/課題管理 今や、必須のスキルと言えるでしょう。 バージョン管理(SCM/VCS/DVCS)としては、 集中型のSubversion(SVN) 分散型のGit/Mercurial などが有名ですね。 分散型の場合は、各エ

    テスト/品質系エンジニアが身に付けておくと得をする7つの技術 - 現場のためのソフトウェア開発プロセス - たかのり日記
  • 【ハウツー】速攻解説! JUnit 4.4 - 前提条件をAssumeで表現、実験的アサーションTheory | エンタープライズ | マイコミジャーナル

    「速攻解説! JUnit 4.4 - 新アサーションメソッド『assertThat』の用途とは」で触れたとおり、JUnit 4.4では新しいアサーションメソッドとしてassertThatが導入されたわけだが、同じく新たに導入されたAssumeクラスを併用すると処理の「前提条件」を表現することもできる。また同様の処理の拡張的な使い方になるが、JUnit 4.4では「Theory」という概念が導入されている点も興味深い。稿では、その2つの機能について紹介したい。 Assume.assumeThatで実行環境の「前提条件」を表現 テストコードを作成してユニットテストをクリアしたのにもかかわらず、アプリケーションを他の環境に移した途端に問題が現れるというのは実によくある話だ。これはユニットテストコードを作成したデベロッパが暗黙の前提として仮定しているものが、自分の開発環境とほかの環境とでい違っ

  • コードやテストを保存したら自動でPHPUnitを実行しGrowlへ通知する環境 | Act as Professional

    TDDやってますか?テストを書いて、実行。コードを書いて、テストを実行。PHPUnitコマンドを1日に何度も叩いているPHPerに朗報です。コードとテストを修正して保存をすると、それを検知して、自動的にPHPUnitを走らせて、結果をGrowlで通知する環境をつくりました。これで、TDD Boot Camp in Tokyo #tddbcもテンポ良くすすめられますね。 gem watchr インストール PHPerには申し訳ないのですが、Rubyのgemを使います。 gem install watchr growlnotify インストール Growlへの通知をするgrowlnotifyをインストールします。 Growlをダウンロードして、Extraディレクトリに含まれている、growlnotifyをインストールしてください。 環境をcloneする hirocaster/phpunit-s

    コードやテストを保存したら自動でPHPUnitを実行しGrowlへ通知する環境 | Act as Professional
  • 結合テストと総合テスト

    ソフトウェアの開発におけるテスト作業は、「テスト計画」「テスト設計」「テスト実施」「テスト管理」という4つのプロセスで構成されます(図1)。 テスト計画プロセスでは、テスト全体の指針や概要をまとめます。テストの目的、対象範囲、実施方法、テスト体制、テスト環境、スケジュール、合格基準など、テスト全般に関わる方針を「テスト計画書」にまとめ、ユーザを含むプロジェクトメンバー全員で方向性を共有します。 テスト設計プロセスでは、策定されたテスト計画に基づいて、実際のテスト作業内容を設計します。テストのシナリオやテスト内容、確認すべき項目などを「テスト仕様書」に具体的に定義します。 テスト実施者は、このテスト仕様書に基づいてテストを実施します。障害を発見した際は、障害番号を採番し、障害管理票に記載して残管理します。これらの障害が片づいて、テストが正常に行われた場合は「テスト報告書」で報告します。 弊社

  • 開発とテストの融合こそゴール。続、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?

    開発とテストの融合こそゴール。続、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? グーグルでTest Engineering Directorを務めるJames A Whittaker氏が書いたエントリを紹介した先日の記事「グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?」が非常に好評で、「続きがあれば読みたい」というコメントをいただいていました。 Whittaker氏がそのエントリの続き「How Google Tests Software - Part Threeを公開していますので、ご要望に応えて紹介することにしましょう。 品質は開発の問題であってテストの問題ではない 品質とはどのように実現するものなのか? という問いに対して、Whittaker氏は次のように書いています。 The simple solution to this con

    開発とテストの融合こそゴール。続、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?
  • モバイル開発に欠かせないテストツール14選

    Adobe Device Central CS5 Adobe CS5 をパッケージ購入すると一緒についてくるモバイルデバイスのテスト環境。様々なエミュレーターが存在しますが、オールインワンで素早くテストがしたい場合はこちらがオススメです。特に Flash を活用したモバイルサイトをテストするのであれば欠かせない存在です。 Android SDK Javaで開発されているので、Mac, Windows, Linux で動作する公式のエミュレーター。2011年1月現在、Android OS 1.1 〜 2.3 までのテストが可能。エミュレーターは実際のスマートフォンと同じ動作をするので、ディフォルトのブラウザだけでなく、Opera Mini や Firefox など他のブラウザをインストールしてテストすることができます。 iOS SDK XCode も含め諸々ダウンロードしなければいけませんし

    モバイル開発に欠かせないテストツール14選
  • システム開発の備忘録 | テストケースの作り方

    プログラムをしていると、必ずテストという工程が必要になります。 (自分はテスト工程を飛ばしてミスをしまくった経験が多々あります) いや、まあそれだけミスをすると、テスト工程も大事だと物凄く認識するんです。 一個のコードが足りないだけで、あるサービスの全員のユーザーの登録情報が変わる事もあり。 一個のコードが足りないだけで、あるサービスのユーザーがアップロードしたファイルを全部消してしまう事もあり。 散々です(爆/笑い事ではないんですが) そんなわけでテストケースというものが必要だと言われました。 テストケースとは、例えば var $a; var $b; var $c; (int)$a + (int)$b = $c echo $c; という文があったとします。 この場合は、$cが予想した結果として表示されるかのテストになります。 $a + $b なので、$a = 1; $b = 2 だと、$

  • 1