タグ

テストに関するAJYAのブックマーク (33)

  • 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編) ふだん何気なく使っている鉄道。改札を降りるときにICカードを自動改札にかざすと、「ピッ」という音と共に一瞬のうちに運賃を計算してくれます。けれど、複数の路線を乗り継いだり、途中で定期券区間が挟まっていたりと、想像しただけでもそこには膨大な組み合わせがあります。それでも運賃計算プログラムはわずか一瞬で正しい運賃計算が求められ、バグがあったら社会的な一大事にもつながりかねません。 爆発的な計算結果の組み合わせがあるはずの運賃計算プログラムは、どうやってデバッグされ、品質を維持しているのでしょうか? 9月12日から14日のあいだ、東洋大学 白山キャンパスで開催された日科学技術連盟主催の「ソフトウェア品質シンポジウム 2012」。オムロンソーシアルソリューションズ 幡

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)
  • Credit Card Test Numbers and Paypal Test Accounts

    2013年8月28日 Webサイト制作 オンラインショップで最も使われている決済方法がクレジットカード決済。しかし、過去にオンラインショップを制作したことのあるWeb屋さんは、決済時の動作テスト方法にとまどった事はありませんか?動作確認に自分のクレジットカードを使っていたという人が多いかと思います。私もそうやってテストしていました…が、実は各種メジャークレジットカードではオンライン決算時用のテスト番号があるのです!便利ですよね! ↑私が10年以上利用している会計ソフト! 以下のクレジットカード番号を使えば、実際に決済が完了した時と同じ動作をします。もちろんテスト番号なので実際に入金などはありません。有効期限は現在の年月より先のものならなんでもOKです。 広く使われているこのテスト番号ですが、対応していないサービスもあります。番号自体のチェックは「【PHPクレジットカードチェックサンプル」

    Credit Card Test Numbers and Paypal Test Accounts
  • かっこ悪くて面倒でもテストコードを書こう - 今川館

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

  • PHPUnit でテスト駆動開発を始めよう

    9. class CalculatorTest extends PHPUnit_Framework_TestCase { public function setUp() { $this->calc = new Calculator; } public function test_add_引数の和を返す() { $result = $this->calc->add(1, 2); $this->assertSame(3, $result); } } 10. class CalculatorTest extends PHPUnit_Framework_TestCase { public function setUp() { 1 $this->calc = new Calculator; } public function test_add_引数の和を返す() { $result = $this-

    PHPUnit でテスト駆動開発を始めよう
  • ソフトウェアテストを勉強しはじめて10ヵ月でやったこと - うさぎ組

    WACATE 2011 夏に誘われたのがキッカケでソフトウェアテストを勉強しはじめて10ヵ月くらいがたちました。 先日、わんくま名古屋でソフトウェアテストの勉強法についてLTしたのですが、みなさんにいろいろ聞かれたのでここにまとめておこうと思います。 当は1年の区切りで書こうと思ったけど、まぁいいでしょう。 追記ここから わんくまで発表したLT資料はこちらです うさみみのソフトウェアテスト勉強法 View more presentations from Kyon Mm 追記ここまで こういうのを書くときに時系列で書くべきか、コツを書くべきか悩みますね。 でも、みんなが知りたいのは僕の歴史じゃなくってコツだと思うので後者で書きます。前者はTwitterとか勉強会とかお事とかお茶でもしているときに聞いてみてください。 以下では多くの書籍を紹介していますが、僕がこの10ヵ月で読んだ。ってい

    ソフトウェアテストを勉強しはじめて10ヵ月でやったこと - うさぎ組
  • より良いテスト駆動開発を行うためのチートシートの紹介

    みなさんこんにちは。@ryuzeeです。 planetgeek.chというサイトでUrs Enzler氏がTDDのチートシートを公開していたのでご紹介します。 Clean Code and Clean TDD Cheat Sheets (PDFファイルでダウンロード可能です) 以下で、チートシート内の一部を意訳にてご紹介しましょう。 Unit Test Smellsテストが何もテストしていない一見するとテストが有効に機能しているように見えるが、実はテスト対象をテストしていない テストに過度なテスト準備が必要とされるテストが環境をセットアップするのに長いコードを必要としている。こういうノイズがテストが当にテストしたいのが何なのか?ということを分かりにくくする。 大きすぎるテスト有用だが大きすぎるテスト。たぶんテストが1つではなく複数の機能をチェックしているか、テストが1つ以上のことをやろう

    より良いテスト駆動開発を行うためのチートシートの紹介
  • グーグルが行っているビルドとテストの種類。続々、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? - Publickey

    グーグルが行っているビルドとテストの種類。続々、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? グーグルでTest Engineering Directorを務めるJames A Whittaker氏が、ブログ「Google Testing Blog」に書いているグーグル社内のソフトウェア品質に関するノウハウ。最近の記事「How Google Tests Software - Part Four」「How Google Tests Software - Part Five」では、ビルドの種類とテストの種類について紹介しています。 One of the key ways Google achieves good results with fewer testers than many companies is that we rarely attempt to sh

    グーグルが行っているビルドとテストの種類。続々、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか? - Publickey
  • JavaScriptでソフトウェアの正しさを数学的厳密に証明してみた - yukobaのブログ

    現在、Shibuya.js が開催中です!Ustream で http://www.ustream.tv/channel/shibuyajs にて放送されています。これから、このブログの内容をしゃべります! 今回「テスト」がテーマなうえ、Shibuya.js は「役に立つ話担当」「ネタ担当」に分かれていて、僕は「ネタ担当」なんですが(笑)、いつも通りネタです。でも、遠い未来の役立つネタです! きっかけは、id:t-wada さんに、GUIの自動テスト関係の質問をしたら、凄くいいことを教えてもらいました。 全てのテストはサンプリングテストである (少し表現違ったらごめんなさい)話の流れで、部屋を移動しなくていけなくて、たしか、それしか話ができなかったのですが、要するに、サンプリングテストである以上、全ての入力パターンをテストすることは不可能であり、できることは、限られたコストの中で、効率よく

    JavaScriptでソフトウェアの正しさを数学的厳密に証明してみた - yukobaのブログ
  • 開発とテストの融合こそゴール。続、グーグルはあれほど多くのソフトウェアのテストをどのように行っているのか?

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

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

    Ryutaro YOSHIBA / Agile Coach, CTO at Attractor Inc. 翻訳者/ Scrum Alliance認定スクラムトレーナー(CST) / 認定チームコーチ(CTC) /書籍→『SCRUM BOOT CAMP THE BOOK』『プロダクトマネージャーのしごと』『エンジニアリングマネージャーのしごと』『チームトポロジー』『スクラム実践者が知るべき97のこと』『プロダクトマネジメント』『みんなでアジャイル』『レガシーコードからの脱却』『カンバン仕事術』『Effective DevOps』他 ご相談はお気軽に!!

    【資料公開】テストについて考える
  • 「バグ数には興味ないのだよ」――顧客が喜ぶテスト仕様書とは?

    「バグ数には興味ないのだよ」――顧客が喜ぶテスト仕様書とは?:誰にでも分かるSEのための文章術(11)(1/2 ページ) 「提案書」や「要件定義書」は書くのが難しい。読む人がITの専門家ではないからだ。専門用語を使わず、高度な内容を的確に伝えるにはどうすればいいか。「提案書」「要件定義書」の書き方を通じて、「誰にでも伝わる」文章術を伝授する。 メーカーが機械を納入する際は、耐久試験や性能試験などの結果を添付して、問題がないことを顧客に確認してもらいます。同様にシステム開発においても、テスト結果を顧客に提示してシステムに問題がないことを確認してもらう必要があります。 今回と次回の2回にわたって、「テスト仕様書」の書き方と表現のポイントを説明します。 今回は、「顧客にとって良いテスト仕様書」とは何か、「顧客にとって良いテスト仕様書」にするためには何を記述すればよいのか、テスト仕様書のおおまかな

    「バグ数には興味ないのだよ」――顧客が喜ぶテスト仕様書とは?
    AJYA
    AJYA 2010/07/22
    顧客がシステム屋さんだと、技術者用に特化していてもいいだろうけど、ユーザーに近ければユーザーにとってわかりやすくしないといけないんでしょうね。
  • 【連載】実践ソフトウェアテスト考現学 (6) ソフトウェア工学に見るテスト戦略の4つの原則 | エンタープライズ | マイコミジャーナル

    これまでのソフトウェアエンジニアリングの歴史の中でも、テストをうまくやり遂げるための方法はいくつも提案され、実証されています。主なものとしては次のようなものが挙げられます。 テストレベルに分割し段階的にテストを行う テストレベルとは、いわゆるコンポーネントテスト、統合テスト、システムテストのことを指します(図1)。 図1 V字モデル 何事においても、一度にいろんなことをやろうとすると訳がわからなくなるものです。「要求を満たしていることを確認するのか」「仕様と合致していることを確認するのか」、はたまた「設計で意図した通りに実装できているか」……これらを整理して少しずつテストしていく方が、結果的にテスト数も少なくなります。また、段階的にテストを行っていくと、開発の流れに合わせてできたものをより早くテストできます。これにより、問題の切り分け(デバッグ)が容易にできることもメリットとして挙げられま

  • 【連載】実践ソフトウェアテスト考現学 (5) 開発プロジェクでの勝つための決め手となる「テスト戦略」とは? | エンタープライズ | マイコミジャーナル

    テストには、「どこまでやれば全部テストしたことになるのかわからない」とか「納品間近になってもバグが出続けるけど、テストを終わりにしていいのか」という問題が付きまといます。これらを乗り越えて製品をリリースするために、誰しもが何らかのテスト戦略を立てていますが、テストだけの個別戦略になってしまっているケースも往々にして見受けられます。さらに一歩進んでテストから開発全体を最適化させるためには、戦略立案のパラダイムシフトが必要となります。今回は、テスト戦略の基的な考え方について説明します。 「戦略」とは、strategyの日語訳であり、漢字からもわかる通り、元々軍事用語です。戦いの局面では、兵力的に圧倒的に劣る場合でも、戦略次第で勝負に勝てる場合が出てきます。 例えば、以下のようなアプローチで戦いに挑むと良いと言われています(※)。 ・接近戦を選択する ・一騎打ちの場面を作る ・兵力を集約

  • 第3回 そのテスト、大丈夫ですか?─テストの性善説 | gihyo.jp

    筆者が新入社員の頃は、毎日テストケースを繰り返し実施していました。夕方には、上司にテストの実施結果を報告して、1日の仕事が終了です。当時のテストログ(その日、行ったテスト実施結果のレポート)には、実施したテストケース(種類・名前等⁠)⁠、実施結果(OK/NG⁠)⁠、実施時間や発生したトラブルなどを記入していました。実施結果がNGのものは、問題管理に事象の登録を行っていました。ふと思うと、テスト結果がNGのものしか振り返りをしていないことに気付きました。 結果良ければすべて良し!! って当? さて、ここで少しテスト現場の会話を聞いてみましょう。 中堅社員氏: 「先週のテストの概要を報告してくれ。」 新入社員君: 「はい。先週は、延べ350件のテストケースを実施しました。」 中堅社員氏: 「それで、テスト結果はどうなった?」 新入社員君: 「全てのテスト結果はOKでした。品質には問題なかった

    第3回 そのテスト、大丈夫ですか?─テストの性善説 | gihyo.jp
  • ブラウザを選ばず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
  • 第1回 テスト管理システムとは何か? | gihyo.jp

    はじめに TestLinkとは、オープンソースのテスト管理システムです。TestLinkは、Francisco Mancardi氏、Andreas Morsing氏、Martin Havlat氏を中心としたコミュニティで開発されています。元々は海外で作られていたソフトウェアでしたが、最近は日でも徐々に浸透してきているようです。 連載では、TestLinkの日語化に携わっているTestLink日語化部会の私たちが、このTestLinkの基機能について順次ご紹介していきます。 今回はTestLinkのご紹介する前準備として、「⁠テスト管理システムとは何か」「⁠では、そもそもテスト管理とは?」といったことについて考えてみましょう。 テスト管理システムとは何か 「テスト管理システム」と言う言葉を聞いたことはありますか? もしかしたら、「⁠バージョン管理システムやバグ管理システムなら聞いた

    第1回 テスト管理システムとは何か? | gihyo.jp
  • 第0回 軽やかにテストをこなしてみませんか? | gihyo.jp

    はじめに 入社してから早2ヵ月。もう会社には慣れたでしょうか? 新入社員研修も終わりプロジェクトチームに配属されている人たちも多いことでしょう。 最初に取り組んだ仕事は何でしたか? プログラムを書かせてもらったかもしれません。しかし、チームに配属してから最初の仕事が、ソフトウェアテスト(以下、テストと略します)の担当かもしれません。「⁠新入社員(以下、新人と略します)にはテストを任せる」という方針[1]の現場が多いからです。 連載では、テストというタスクを任されたチームに配属されたばかりの新人が、知らなくてはならないエッセンスを書いていきます。 この連載の構成 連載は全部で6回を予定しています。今回は第0回ということで、それぞれの回の概要を説明します。 連載内容 第1回 最初の仕事にとまどっていませんか? 「はじめに」にも書きましたが、現場配属時の最初の仕事として、テストのお手伝いを指

    第0回 軽やかにテストをこなしてみませんか? | gihyo.jp
  • MOONGIFT: » ブラウザをターミナルから操作して自動テストを実現「Firewatir」:オープンソースを毎日紹介

    Webアプリケーションのテストは面倒くさい。HTTPでゲットするだけであれば良いが、ポストしたり、JavaScriptでレンダリングしてあったりと、動作も複雑だ。それらを全て網羅的にテストするのはなかなか難しい。 自動操作中 そこでテストにブラウザを使ってみよう。自動操作することで、テストの効率化をはかれる。 今回紹介するオープンソース・ソフトウェアはFirewatir、Firefoxを自動操作するソフトウェアだ。 FirewatirはIEをRubyを使って自動操作するソフトウェア、WatirのFirefox板とでも言うべきソフトウェアだ。実際、読み込むファイル等は違えども全体的な操作はWatirと同じスクリプトで動作する。 操作中のターミナル 実際の使い方はFirewatirの提供するXPIをFirefoxにインストールし、JSSHを起動する。そしてGemを使ってFirewatirをイン

    MOONGIFT: » ブラウザをターミナルから操作して自動テストを実現「Firewatir」:オープンソースを毎日紹介
  • 窓の杜 - 【NEWS】プログラムの動作テスト用のダミーデータを簡単に大量作成「プラデータ」

    プログラムの動作テスト用のダミーデータを簡単に大量作成できるソフト「プラデータ」v1.0が、4日に公開された。Windows XP/Vistaに対応するフリーソフトで、現在作者のホームページからダウンロードできる。なお、動作には.NET Framework 2.0が必要。 「プラデータ」は、プログラムの動作テスト用のダミーデータを簡単に作成できるソフト。CSV/TSV形式のファイルなど、テキスト形式のダミーデータを大量に作成できるので、各種テキスト形式での入出力機能をもつソフトの動作をテストしたい場合などに便利だ。 ダミーデータを作成するには、まず“定義”を作成する。たとえば、1番目は数字4桁からなるID、2番目は最大12文字の名前、などといったようにデータの構造を決めて、リストに記入しよう。“定義”のデータ型には、テキスト・数値・日時を選択可能で、数値の桁数や文字列の長さ、日時の形式など

  • バグ見つけた→それってどんなテスト?もしくは、なんでMVCなんて使うの? - D-6 [相変わらず根無し]

    バグ見つけた→それってどんなテスト?もしくは、なんでMVCなんて使うの? 最近ソフトウェアエンジニアリングに置ける開発手法に関して考えている。 ぶっちゃけ言ってしまうと「やっぱりTDDっぽいのがいいな」というところに落ち着きつつあるのだが、厳密にTDDをしたほうがよい、と思ってるわけではない。TDDとかExtremeプログラミング、Agileプログラミングにしても理想はいいんだけど、原理主義っぽい使い方は現実にそぐわないと思ってるからだ。 前置きはこれくらいにしておいて・・・重要だと思うのは以下の点: 開発サイクルに自動テストツールを組み込むエンジニアによるバグ/不具合発見時には「動かない」は許可しない。必ず再現コードを提出してもらうテストを自動テストツールを組み込む(=次回リリース前にはかならずテストを実行できる状態にする)テストが通るまで修正を続けるという開発サイクルを取るべきだ、とい