タグ

テストに関するfumokmmのブックマーク (21)

  • 次世代のモックフレームワークであるJMockitの基本的な使い方 - 達人プログラマーを目指して

    以前のモックフレームワークの技術的制約 今まで私が担当してきたプロジェクトにおいては、モックオブジェクトを使ったJUnitの単体試験はjMockとEasyMockのいずれかのフレームワークを利用して行ってきました。しかし、これらのフレームワークはJavaプラットフォームにおけるコード自動生成の考え方の変遷で説明したように動的プロキシーに基づいているため、以下のような制約がありました。 モック化する対象の型はインターフェースを実装しているか、継承可能なクラスであること モック化するメソッドはfinal、static、privateでないこと*1 モック化するロジックはコンストラクターの呼び出しではないこと モックオブジェクトをテスト対象クラスにDIかパラメーター経由で引き渡すことが可能であること モック化する場合はクラス全体をモック化する必要があること(getterやsetterなどは物の

    次世代のモックフレームワークであるJMockitの基本的な使い方 - 達人プログラマーを目指して
    fumokmm
    fumokmm 2014/07/30
    モック伊藤
  • JavaのテストコードからはじめるGroovy #gadvent2012 - やさしいデスマーチ

    エントリーは、G* Advent Calendar 2012の24日目のエントリーです。前日は、@tetsurokitaharaさんのGroovyにProcessingを!でした。 何をネタに書こうかなと悩んだのですが、思うほどG*なネタは持っておらず、JUnitネタとなりました。実は、書籍「JUnit実践入門」でもGroovyを活用するトピックを入れる予定だったのですが、紙面の都合上、入れる事ができませんでした*1。そこで、少しだけですが、エントリーで補足したいなと思います。 テストコードでGroovyを使う Groovyは、Javaと親和性の高いプログラミング言語です。上司を説得する場合は「GroovyはJavaの拡張ライブラリです(キリッ」と言っても良いでしょう。当は開発環境やビルドツールの設定などで一工夫しなければ利用できませんが、その辺は裏でしれっとやってしまえばOKです。

    JavaのテストコードからはじめるGroovy #gadvent2012 - やさしいデスマーチ
  • Continuous Testing in Clojure

    Sustainable Security Requirements with the ASVS Josh Grossman provides a brief overview of what the ASVS is, but takes a closer look at balancing trade-offs and prioritizing different security requirements. Josh shares how to make the process repeatable and how to implement it as part of your own organization's requirements process.

    Continuous Testing in Clojure
  • assertEqualsよりassertThatが好きなわけ - 日々常々

    assertEqualsよりassertThatが好きなのは、Matcherもあるけど、引数の順番に悩まないからです。英語として云々なんてどうでもいい。。。。 2012-07-13 00:07:14 via YoruFukurou 元ネタ*1は「xUnitよりRSpecがいいとか言ってたひとは英文ぽいのがいいとか言ってたけどさー」みたいな感じでしたが、xUnitであるところのJUnitでも最近は assertThat なんてもんが入って英文ぽさを売りにすることもあったりなかったり。 ツイートでも言ってる通り、英文ぽさなんてどうでもいいと思ってます。可読性は大事だけど、読めるならそれ以上は要らない派。ならば決め手は何だ。書きやすさと、エラー時の表示です。 assertEqualsのばあい こんな感じに書きますね。短い。書く量が少ないのは良いです。でも1番目と2番目どっちがどっちだったか。 a

    fumokmm
    fumokmm 2012/07/13
    PowerAssert最強。
  • かっこ悪くて面倒でもテストコードを書こう - 今川館

    Python | 10:08わたしはプログラマーではありませんが、いくつかの仕事でテストコードを見たり書いたりすることがあったので、その過程で思ったことをメモとして残しておきます。コーディングとテストを分けて工数を言う癖をやめようどっちもコードを書くのだから分けて考える必要はないテストコードの重要性は理解しているけど、工数も厳しいし客がテストコードを書くことに工数を割くことを認めてくれない。ありがちな話ですが、それがテストを書かないことの根拠であるならば少し考え直しましょう。コーディングとテストを異なる工程と考えるのをやめてしまえばそんなことに悩む必要はなくなります。つまり、「テストを書きながらコーディングする」のです。だいたい、普段プログラムを書いているときだって手元で動かしながらものを作っているでしょう。それと同じことをプログラムを書いてやればいいだけです。客がテストを書かせてくれない

    fumokmm
    fumokmm 2012/04/24
    まぁ、単体テストをいまどき手でやる気は起きないですね。SIerとかが言ってるテスト工程は結合テストからの話かなと思ってた。
  • テストというのは、ソースコードの冗長化だと思う - きしだのHatena

    テストというのは、基的にはソースコードの冗長化だと思う。来ならプロダクトコードだけ書けばよいところを、信頼性を高めるために複数の視点でのコードを追加する。 また、サーバーの冗長化で、2台構成を3台構成にするよりも、はるかに1台構成を2台にするのが難しいように、テストも、10のテストを20にするよりも、最初のテスト(プロダクトコードも含めると2目のコード)を書くのが一番難しい。 テストがソースコードの冗長化であるなら、アクセスのないサイトでサーバーをクラスタリングするのが単なる金や設定時間の無駄であるように、長期的な信頼性の求められないプロダクトにテストを書くことも金の無駄だ。 アクセスが多いのにサーバー冗長化の金を払わない顧客に対してクラスタリング構成を構築する義理がないように、信頼性が求められるのにテストの金を払わず時間も確保しない顧客のためにテストを書いてやる必要もない。もち

    テストというのは、ソースコードの冗長化だと思う - きしだのHatena
    fumokmm
    fumokmm 2012/02/23
    同意。すごく利用頻度の低い機能や使われないと分かっているような機能にまで血眼になってテストは書かなくて良いだろう。
  • 単体テスト/結合テストなんて存在しない

    テストプロセスを再定義する時代が来た。 単体テスト、結合テスト、システムテストといったテストレベルがテスト設計において寄与しているメリットはあるのか? また、それらが結局はプロジェクトのマイルストーンをひくための単なる慣習的な単語であり、実作業に悪影響を与えているのではないか。 という疑問をもったうさみみことkyon_mmの話にソフトウェアテストクラスタの方がつきあってくださいました。 kyon_mmは現在、ソフトウェアテストを勉強しはじめたばかりの人です。 続きを読む

    単体テスト/結合テストなんて存在しない
  • C#でのテスト(3) NMock 2.0を使ったテスト - ぐるぐる~

    C#でのテスト(2) nantによるビルドの自動化 - ぐるぐる〜に続いて、今回はNMock 2.0の使い方を紹介する。 NMock 2.0は、 The original NMock was a .NET port of the Java-based DynaMock, whereas NMock 2.0 is inspired by the newer jMock library. NMock: A Dynamic Mock Object Library for .NET とあるように、jMockの影響により、NMockとは別物となっている。以降、面倒なのでNMockはNMock 2.0を指すものとする。 NMockはまず、Mockery*1というクラスのオブジェクトを生成する必要がある。 この生成したMockeryオブジェクトを使用してモックオブジェクトを生成する。 // Mocker

    C#でのテスト(3) NMock 2.0を使ったテスト - ぐるぐる~
  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

    fumokmm
    fumokmm 2011/05/25
    SwingのGUIを効率的にテストするやつっぽい。
  • グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?

    グーグルは検索エンジンだけではなく、メールソフトのGmail、オフィス系ソフトのGoogle Apps、WebブラウザのChromeやOSのAndroidなど、さまざまな種類と規模のソフトウェアを開発しています。 それらはどのようにテストされ品質管理されているのでしょうか? グーグルのブログGoogle Testing Blogに、Test Engineering DirectorのJames A Whittaker氏による「How Google Tests Software」がポストされ、その概要を伝えています。 3つのチームからなるEngineering Productivity Whittaker氏はまず、グーグルにはテストの専門部隊はいないのだ、という組織構造の説明から始めます。 There isn't an actual testing organization at Googl

    グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?
  • GrUnitなるものありき - uehaj's blog

    GrUnitというものができたようです。これは何かというと、ざっとみたかぎり、「Groovyでもっと簡単にGroovy流儀でテストを書けるようにする」というもののようです。今のところ、これはGroovy++に付属する機能であるようです*1。 http://groovy.dzone.com/articles/grunit-groovy-way-unit-testing http://groovy.dzone.com/articles/grunit-inline-tests-groovy 具体的には、 TestCase,GroovyTestCaseから継承せずに、スクリプトとしてテストコードを書く 「インラインテスト」。@GrUnitアノテーションの引数としてテストコードを書き、テスト対象クラスとテストコードを1ファイルに含める。 というものののようです。 前者について、たしかに、従来のGro

    GrUnitなるものありき - uehaj's blog
  • Selenium

    Selenium automates browsers. That's it!What you do with that power is entirely up to you. Primarily it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should) also be automated as well. Selenium WebDriver If you want to create robust, browser-based regression automation suites and tests, scale and di

  • ブラウザを選ばずWebテストを自動化するSelenium

    Webアプリケーションのファンクションテストを行うツールとして注目されている「Selenium」のバージョン1.0が6月20日にリリースされました。安定性が向上するとともに、Firefox 3.0、3.5(Selenium IDEは1.0.2から、Firefox 3.5に対応)や、Internat Explorer(以下、IE) 8などの最新のWebブラウザにも対応しました。 稿では、Selenium 1.0をベースとしたSelenium IDEとSelenium RCを利用した効果的なSeleniumの利用方法を紹介します。 Webアプリのテストで誰もがイラつく大きな課題 Webアプリケーションテストを手で行うと、非常に煩雑です。Selenium登場以前の従来のやり方では、次のような問題がありました。 回帰テストに時間がかかる バグ修正や仕様変更などで、Webアプリケーションを変更した

    ブラウザを選ばずWebテストを自動化するSelenium
  • ビヘイビア駆動開発 - Wikipedia

    テスト駆動開発で記述されるテストケースは、作成したプログラムの動作が正しいかどうかを検証するために行う「テスト」である。テストであるという点は同一であるが、加えて、これから作成しようとするプログラムに期待される「振る舞い」や「制約条件」、つまり「要求仕様」に近い形で、自然言語を併記しながらテストコードを記述する。テストフレームワークのメソッド名も自然言語(英語など)に近い形をとっている。 テストコードの可読性があがる上、テストコードが要求仕様となりうる。要求仕様からテストコードを起こす際も、スムーズにコードに移行しやすい。 BDDではスペック(仕様)とテストは限りなく近い物である。従って、テスト駆動開発における「テストファースト」は、BDDにおいては「スペックファースト」となり、スペックを作ってから実装するという、より自然な形でのプログラム製作を実現している。 いくつかのテストフレームワー

    fumokmm
    fumokmm 2010/12/14
    ビヘイビア駆動開発いいですね。
  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

    fumokmm
    fumokmm 2010/10/09
    Scalaでビルドとかテストとかを自動化してくれるツール。
  • Microsoft Learn: Build skills that open doors in your career

    Microsoft Learn. Spark possibility. Build skills that open doors. See all you can do with documentation, hands-on training, and certifications to help you get the most from Microsoft products. Learn by doing Gain the skills you can apply to everyday situations through hands-on training personalized to your needs, at your own pace or with our global network of learning partners. Take training Find

    Microsoft Learn: Build skills that open doors in your career
  • HtmlUnit – Welcome to HtmlUnit

    Constantly updating and maintaining the HtmlUnit code base already takes a lot of time. I would like to make 2 major extensions in the next few months Add HTTP/2 support Replace the Rhino based JavaScript engine For doing this I need your Sponsoring. HtmlUnit is a "GUI-Less browser for Java programs". It models HTML documents and provides an API that allows you to invoke pages, fill out forms, cli

    fumokmm
    fumokmm 2009/05/06
    GUIなしのJavaプログラミングで動くブラウザです。
  • IE6/7/8, Fx, Op, Safari, Chromeを同時に起動できる -Xenocode Browser

    Internet Explorer 6/7/8rc1, Firefox, Opera, Safari, Chromeなど主要なブラウザをWindows上で同時に起動できるXenocode Browserを紹介します。 Run IE876, Firefox, Safari, Chrome, and Opera from the web Fx, Op, Safari, Chromeはそのままで同時に起動できますが、IE 6/7/8rc1の異なるバージョンをOSに依存せずにインストール・起動できるのはブラウザ検証の大きな武器になります。 IE 6/7/8rc1でAcid 2のテストを表示してみたところ、レンダリングはそれぞれのバージョンのものになっていました。

    fumokmm
    fumokmm 2009/02/25
    同時起動で各バージョンのテストとかが必要な時とかに便利そう
  • WritingTestableCode - テストできるコードの書きかた

    WritingTestableCode - テストできるコードの書きかた 目次 この文書について まずいのその1: コンストラクタがやりすぎ まずいのその2: 深い仲になってしまっている まずいのその3: 脆いグローバルな状態とかシングルトンとか まずいのその4: クラスがやりすぎ テストできるコードの書きかた この文書について "Guide: Writing Testable Code" の日語訳です http://misko.hevery.com/code-reviewers-guide/ 推敲歓迎: 誤訳, タイポ, 訳語の不統一, そのほか... TODO: 各 Flaw のリンク先も訳す Misko Hevery コードをベストな状態に保つために、 我々は Google でソフトウェアエンジニアに以下のようなをガイドを定期的に送っていた。このガイドを共有できてうれしいね。 この

  • Page not found - ファイヤープロジェクト

    The page you are trying to reach does not exist, or has been moved. Please use the menus or the search box to find what you are looking for.