タグ

テストに関するsupermomongaのブックマーク (22)

  • ノンプログラマーが3ヶ月でWebサービスを作ってみた - Qiita

    ノンプログラマーがはじめてWebサービスを作ってみた記録です。 2016.3.28 追記: リリース1年後について書きました。 はじめてのOSSリリース記 〜なぜ無料でソースコードを公開するのか? 自己紹介 趣味でたまにプログラムを書く程度のノンプログラマー業は SHIFT( http://www.shiftinc.jp ) という会社でテスト自動化エンジニアをしています。 20代最後の年に何か新しいことを!と思い立ち、勢いでWebサービスを作ってみました。 作ったもの Chibineko - 世界で最もシンプルなテストツール https://chibineko.jp 面倒なテストはサクッと終わらせよう Chibinekoはテストケースの作成と実行管理を行うためのシンプルなテストツールです。 テスト項目を箇条書きにするだけで、あなた専用のテスト実行ページが瞬時に作成されます。 あとは

    ノンプログラマーが3ヶ月でWebサービスを作ってみた - Qiita
  • RailsのRESTful APIをテストで理解する - ワザノバ | wazanova

    http://www.commandercoriander.net/blog/2014/01/04/test-driving-a-json-api-in-rails1 comment | 0 pointsPivotal LabsのEno ComptonがRailsでJSON APIをテスト形式で理解できるように紹介してくれてます。「Railsアプリをてがけると、いずれ、シングルページアプリ、モバイルクライアントのためにRESTful APIが必要になるだろうから練習用に。」ということで、コードはGithubで公開されています。 GET /movies POST /movies GET /movies/:id PUT /movies/:id DELETE /movies/:id 上記のrouteをサポートするために、Railsアプリ + RSpec + FactoryGirlを用意したら、

  • ShouldBee - テスト作業を限りなくゼロに

    次世代テスティング オートメーションで ソフトウェアを最高の品質に ShouldBeeは無料で使えるウェブサイトのテスト自動化を支援するツールです。 これまで手動で実施していたテストの手順書を日語で書いて実行するだけ!

    ShouldBee - テスト作業を限りなくゼロに
  • マイクロソフトがテストツール「BrowserSwarm」発表

    テスト結果はInternet Explorer(IE)、Google Chrome、Firefox、Safari、OperaなどのWebブラウザのバージョンごとに合格率が表示される。テストに合格した項目と不合格だった項目は別々に参照でき、修正が必要な個所がすぐに分かるようになっている。 BrowserSwarmのプロジェクトは、jQueryライブラリの開発などに参加しているappendTo、クラウドベースのテスト用プラットフォームを提供するSauce Labs、マイクロソフトのInternet Explorer(IE)チームが協力して手掛けている。 IEチームは「質の高いフレームワークは現代のWebの基盤であるにもかかわらず、さまざまな端末やWebブラウザで横断的なテストができるリソースはあまり存在していなかった。BrowserSwarmでは相互運用性を備えたフレームワークの構築を支援する

    マイクロソフトがテストツール「BrowserSwarm」発表
  • RailsでSMTPへ送信したメールを実際には送信せずにローカルに保存する方法 - AorBorF

    MailTrapを使うと超簡単にSMTPサーバをローカルに構築できます。 しかも実際にはメールを送信せずにローカルに保存してくれるのでTailコマンドで流しっぱなしにしておくといちいち受信しなくて便利です。 インストールはgemで一発 $ sudo gem install mailtrap SMTPサーバの構築は以下のコマンド一発 $ mailtrap start Railsへの設定は{RAILSROOT}/config/environment.rb に以下を記述します。 # Be sure to restart your server when you modify this file # Uncomment below to force Rails into production mode when # you don't control web/app server and can'

    RailsでSMTPへ送信したメールを実際には送信せずにローカルに保存する方法 - AorBorF
  • Jenkins で静的解析のグラフを作るとコードを読まなくてもソフトウェアの品質が分かって面白い - おともだちティータイム

    細かく書きたいけど、とりあえずメモだけ。 ステップ数が増ている なんらかの開発が行なわれている ステップ数が減っている リファクタリングが行なわれている? 単に仕様落ちしたコードが削除された可能性もある テストカバレッジが下がる テストが書かれていない ... ステップ数が増えている場合 テストが減っている ... ステップ数が変わらない場合 FindBugs 、 PMD 、 Android Lint の警告数が増えている 品質の低下、レビューが正しく行なわれていない CPD 警告数が増えている 品質の低下、レビューが正しく行なわれていない そろそろリファクタリングしたほうがいい Checkstyle 警告数が増えている 品質の低下、レビューが正しく行なわれていない Jenkins で継続的にビルドしたり、テストを行なうのは言うまでもなく大切だけど、こういった静的解析の数値をグラフ化してい

    Jenkins で静的解析のグラフを作るとコードを読まなくてもソフトウェアの品質が分かって面白い - おともだちティータイム
  • 「CIを半年間まわしてみて」というお題でLTをしてきました - kaz29

    大分時間も経ってしまい今更ではありますが、先日行われた第67回 PHP勉強会で「CIを半年間まわしてみて」というお題でLTをしてきました。 昨年の11/30に、当時ちょうど開発が始まった案件の開発環境に関して「今時なCakePHPでの開発環境!?」というエントリーを書いて、初のホッテントリ入りしました。4月末でこのプトジェクトが始まって半年という事で、実際にCIをまわしている中で起こった事や、試行錯誤しつつどうやって解決したかなどを簡単にまとめてお話ししました。 LT用に作った資料ではちょっと伝わりにくいので、以下にまとめ直しました。 成長の軌跡 Jenkinsサーバーを立ち上げた時は、UnitTestのテストケースが10個だけだったのですが、4/30現在 UnitTestのテストケースが467件、受入れテストのシナリオ数が292件とものすごい成長っぷりです。 この半年間に起こった事 テス

    「CIを半年間まわしてみて」というお題でLTをしてきました - kaz29
  • Python で TDD してみる - methaneのブログ

    RSpec の入門とその一歩先へ がとてもよい記事だったので、 Python で写経させてもらいました。 https://github.com/methane/pytest-tut Ruby コミュニティと Python コミュニティの考え方の違いも見えて面白いと思います。 環境は Python 3.3 で、実行には py.test コマンドを使いましたが、 py.test の機能は特に使っていないので nose でもなんでも大丈夫です。 ファイルの作成 まずは空の実装とテストを作ります。 message_filter.py class MessageFilter: pass message_filter_test.py 最初のテストを書く py.test は .should といったメソッドを勝手に生やしたりはしません。普通に assert 文を書きましょう。 --- a/messege

    Python で TDD してみる - methaneのブログ
  • JenkinsでPHP開発を自動化するのまとめ

    これまでJenkins+PHPで色々な処理を自動化させてきたので、今までの記事をまとめてみました。 さくらVPSにjenkinsを入れてみたときの備忘録 jenkinsで新規ジョブを作成して、Subversionと連携してみる Phingをjenkinsと連携させてみる jenkinsでCheckstyle pluginを利用して、CakePHPのコーディング規約をチェックする PHPMD(PHP Mess Detector)をjenkinsで利用してみる PHPCPDとjenkinsを利用して、冗長化したコードを検出してみる jenkinsにPHPDocumentor2を連携させてみる CakePHP2.X+PHPUnit+jenkinsでテストを自動化する ここまでの処理をまとめたビルドファイルもgithubのほうにアップしています。 myPhingBuildXml – github

  • 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 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
  • cakephp2.0で初めてのテスト

    Web2.0 Powered Collaboration with Alfresco. Presented by Rivet LogicAlfresco Software

    cakephp2.0で初めてのテスト
  • CakePHP(例えば2系)のテスト

    5. 1系と2系の違い ● 1系 ○ SimpleTest ● 2系 ○ PHPUnit 「なぜPHPUnitに移行したか」は以下参照 ● http://mark-story.com/posts/view/cakephp-and-phpunit ● http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=2331&forum=3 6. 僕がやっている流れ 1. 「create table」でテーブル作成 2. 「cake bake」でテーブル用のModelを作成 3. ロジックのクラスとそれをテストするファイルを手 動作成 4. Test Test Test ○ もうここで大部分のテストは終わらせたい 5. 「cake bake」でControllerを作成 6. Test Test Test Modelの話は他の人が発表しそうだからC

    CakePHP(例えば2系)のテスト
  • RSpecによるユニットテストの書き方 — recompile.net

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

    RSpecによるユニットテストの書き方 — recompile.net
  • inforno :: 俺的モダンなPythonのOSS開発環境

    趣味プログラマです、こんにちわ。一応生きてます。 さて、Pythonista各位におかれましてはmoratoriumをエンジョイされていますでしょうか。そろそろライブラリも著名なものはPython3に対応してきましたし、そろそろ格的にPython3、となっているころ合いですね。というか、Python3に対応してないとちょっと恥ずかしくなってきましたね。 とはいえ、Python2は根強く残るでしょう。というわけでPython2とPython3両方で動くコードを書きましょう。テストも書くのは当たり前ですし、せっかくなのでCIもしましょう。 と私も最近思ったので快適に開発を進めるための環境についてメモです。 github : 言わずもがなですね。 travis : githubと連携してCIできるサービス。P言語にも対応していて、最近アツいです。 tox : 複数のPython処理系でvirt

  • はじめる! Cucumber

    書誌情報 著者: 諸橋恭介 発行日: 2010-10-31 最終更新日: 2011-09-05 バージョン: 1.0.0 ページ数: 102ページ(A4PDF版換算) 対応フォーマット: EPUB, PDF 出版社: 達人出版会 対象読者 Cucumberに興味のある方。テストに興味のある方。特に、Railsでのテストについて、ユニットテスト以上のテストに興味のある方。 著者について 諸橋恭介 宮城県出身。文系エンジニア。2006年より株式会社永和システムマネジメントにてRubyRailsを使った仕事をしています。TDDをやり始めたのもその頃からです。Webアプリを作るのが仕事ですが、近頃はWebAPIを叩いたり作ったりする仕事をしています。 Cucumberを使い始めたきっかけは、半信半疑で試してみたら日語で書けるのがいたく気に入ったため。すっかり気に入ってを書きました。いくつか、

    はじめる! Cucumber
  • PHP (続)CakePHPでユニットテストする際に気をつけること

    前回の話はこちらを参照 前回以降もテストしているんだけど、「メモっとかないと忘れちゃうねー」的な話を以下列挙。 それにしても今回は真面目にテストしているぞ(笑 カバレージを測定したかったらテストモジュールの分割方法は、テスト対象モジュール1つにつきテストモジュール1つにするべきだ。  僕が作っているシステムは一般向け画面と管理者向け画面に分かれていて、管理者画面へのアクセスはadmin routingを使っているのだけれど、こういう場合のテストでもコントローラー単位、モデル単位で分割すべきで、利用シーンで分離すべきではない。但し受け入れテスト等、カバレージではなく業務要件への充足確認が中心になる場合は別だけど。 setUp、startTest、startCase等の初期化処理の違いを押さえておくこと。bakeでControllerのテストケースを作るとsetUp()が自動で作成されるが、こ

    PHP (続)CakePHPでユニットテストする際に気をつけること
  • 眠るシーラカンスと水底のプログラマー(旧):cakePHP:テスト駆動開発をするには? - livedoor Blog(ブログ)

    前置き: テスト駆動開発とは これまでの作業でcakePHPの表示部分を軽く触ってみました。 静的にフッターを表示したので、 次は動的に…と、ようやくプログラムらしい段階に来たのですが、そのまえにTDDを行えるようにしてみます。 TDDというのはTestDrivenDevelopmentの略で、 日語でいうところの「テスト駆動開発」です。 職業プログラマーでない場合、 聞きなれない言葉だと思いますが、 コードを書く前に、テストケースを準備するという一見変わった手法です。私もまだまだ勉強中ですが、テスト駆動開発を行うと、 ・クラス構造が綺麗になる(自然とテストできるようなクラス=整理されたクラスになる) ・少しづづ構築するので、事象を分断して捉えやすくなる(プログラムを書くというのは複雑さとの戦いです。細かく分断すること、分断して再構築を繰り返すことは複雑さに対する良い武器です) ・修正に

  • CakePHPでユニットテストする際に気をつけること

    今やっている案件ではCakePHPを使ったアジャイル開発で、当然テストも自動化している。 テストの自動化を徹底的にやったので楽なんだけど、次回の案件のためにどういう観点でテストを組んでおくと良いか、またどこに嵌りがあるかメモとして残しておく。 CakePHPに限らない話 テストしやすい実装にする。例えばメソッドに複数の異なる役割を持たせない。引数と戻り値が明確。適切な行数など MVCの複数レイヤーにまたがる処理を書かない。例えばコントローラの中でSQLじゃぶじゃぶ投げたり、バリデーションチェックをぐちゃぐちゃやったりしない 自動でテスト実行できる仕掛け作り。例えばPHPならphpUnderControl。JAVAならCruiseControlとかHudson。 基に返って、テストを先に書くという意識付け テストがいっぱいありすぎたら今度はテストのリファクタリング。似たようなテストがコピペ

    CakePHPでユニットテストする際に気をつけること
  • 1-byte.jp - CakePHPを使ったテスト駆動開発

    ブログ初ポストはCakePHPを使ったテスト駆動開発です。 CakePHPはユニットテストとしてSimpleTestに対応しています。 SimpleTestをインストールするだけで、モデルやコントローラ、シェル、ルーティングクラスなどのユニットテストが出来るようになります。 今日はこのCakePHPSimpleTestを使ってテスト駆動開発の流れを説明します。 ただ、僕自身テスト駆動開発を学んだのは去年のCake祭りなので、至らない点が多々あります。 もし何かあれば、コメントでご指摘ください。 今更感もありますが、この場を借りてCake祭りでテスト駆動の指導をしてくださった、@sizuhikoさんに感謝します。 開発手順 まずは開発手順を示します。少し細かいですが、テスト駆動では以下のような順で開発していきます。 設計する。 テストケースを書く。 テストケースをデバッグする。 コー