タグ

テストに関するy-kawazのブックマーク (27)

  • Karma(元Testacular)を使って簡単にテストを実行しよう | DevelopersIO

    Karmaとは 昨年、Googleがnode.jsベースのJavaScriptテストランナー、「Testacular」をオープンソース化しました。 このツールは元々AngularJSのためのテストフレームワークとして作られたそうで、 クライアントサイドのJavascriptコードのテストを簡単に実行することができます。 このツール自体はテストランナーで、JasmineやMochaなどのテストフレームワークを使用してテストを行います。 先日このプロジェクトの名前が変更され、「Karma」という名前になりました。 今回はKarmaのインストールからテスト実行(+ Gruntでの実行)までをおこなってみます。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.4 Node.js : v0.10.0 npm : 1.2.14 Grunt : 0.4 npm

  • Puppet や Chef で構築したサーバを RSpec でテストする - Gosuke Miyashita

    追記 ここに書いてあることを実現する serverspec という gem をつくりました。詳しくはこちらのエントリで。 Puppet マニフェストをリファクタリングするからテスト書くぞ、ってことで、 puppet-lxc-test-box に書いたように、テストするためのシステムコンテナを簡単に作る仕組みをつくったので、今度は実際にテストコードを書くためのベースをつくってみた。 rspec-lxc-test-box こんな感じでテストが書ける。 require 'container_spec_helper' describe 'nrpe' do it { should be_installed } it { should be_enabled } it { should be_running } end describe 'nagios-plugins-all' do it { shou

  • CI as a Service ブラウザを使ったJavaScriptのテストをCIサービスで動かす方法のまとめ

    Travis CIを始めとするウェブサービスとして使えるCIを使って、 JavaScriptのブラウザテスト(ブラウザ上でJavaScriptを走らせて行うユニットテスト)をやる方法をサービスごとにまとめてみました。 テストフレームワークとして Buster.JS を使用して行います。 Karma (旧Testacular) では公式サイトにも Karma – Travis CI でCI Serviceとの連携方法が記載されているのでそちらも参考にして下さい。 今回紹介するCI Servicesは以下のものです。 Travis CI drone.io BuildHive Jepso CI テスト実行の流れ Jepso CI を除いては、テスト実行の流れ自体は同じなので先に解説します。 Capture用のローカルサーバを立てる テストしたいブラウザで capture URL へアクセスする

    CI as a Service ブラウザを使ったJavaScriptのテストをCIサービスで動かす方法のまとめ
  • JavaScriptのテストツール「testem」が素晴らしいぞ - Mach3.laBlog

    この記事は賞味期限切れです。(更新から1年が経過しています) JavaScriptユニットテスト一年生の私が、Nettuts+ のチュートリアルで知ったテストツール 「testem」のお陰で大変捗ったので是非お勧めしたく、ここで紹介してみます。 testem ってなに testem via GitHub : airportyh/testem Unit testing in Javascript can be tedious and painful, but Testem makes it so easy that you will actually want to write tests. 要するに、面倒なJSのユニットテストをより快適にしてみんなでハッピーにテスト書こうよ!というツールです。 testem自体はnode.jsベースで動作し、Jasmine/QUnit/Mochaに対応して

    JavaScriptのテストツール「testem」が素晴らしいぞ - Mach3.laBlog
  • mochaとphantomJSとtravis-ciでフロントエンドJavaScriptのテスト - Webtech Walker

    東京Node学園祭2012 アドベントカレンダーの9日目です。Node.jsとほとんど関係ないうえに内容がけっこう薄い感じなった気がするんですけど気にせずいこうと思います。 フロントエンドJavaScriptをテストするとき最近はいつもmochaを使ってるんですが、やはりJenkinsとかtravis-ciを使って自動テストもしたいと思って試してみました。 hokaccha/mocha-phantom-travis-test ここではよくあるjQueryで画像のロールオーバーをするというプラグインを作ってそのライブラリに対してテストを書いています。ソースコードはこんな感じです。 $.fn.rollover = function() { return this.each(function() { var $img = $(this); var src = $img.attr('src');

    mochaとphantomJSとtravis-ciでフロントエンドJavaScriptのテスト - Webtech Walker
    y-kawaz
    y-kawaz 2012/10/24
    ブラウザの試験
  • 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)

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

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)
    y-kawaz
    y-kawaz 2012/09/25
    凄いテスト。テストしたい。
  • Vagrantで簡単仮想マシン構築

    VagrantはOracle VirtualBoxを利用した仮想マシンをコマンドラインから作成してくれるソフトウェアだ。 設定ファイルをRubyで書くことができ、Chef等とも連携できるので、開発環境をコマンドライン一発で作成することができる。更にはCapistranoと組み合わせてアプリケーションのデプロイも一括で行うことで完全自動でいつでもテスト環境をつくれたりもする。 仮想マシンを捨ててしまってもいつでも再構築できること、誰のところにでもすぐ同じ状態に展開できることは開発を進める上で非常にメリットがある。 以下ではまずはVagrantを利用した簡単な仮想マシン構築の手順を説明する(当に説明したい内容はもっと違う話なのだが追って別のエントリで書いていくことにする) Oracle VirtualBoxのインストールhttps://www.virtualbox.org/にアクセスし左ナビ

    Vagrantで簡単仮想マシン構築
  • expressやsocket.ioのテストはこんな感じで書いてます、というお話 - アルパカDiary Pro

    最近仕事ではNode.jsしか書いてないtoritoriです。 お仕事でもexpressやsocket.ioを使っているのですが WebアプリケーションのテストについてWeb上にあまり書かれていないような気がします。 特にソケット接続した後のメッセージ送信/受信の部分です。 今までのようなHTTPの単純なリクエスト/レスポンスとは手法が異なりますしどうしたものかと。 そこで「自分はこんな感じでテストしてますよー」という記事を書いてみます。 裏を返せば「もっといい方法あるよ!」というのを聞きたいのです>< サンプルについて socket.ioのexample を使います。 ただし、サンプルではログイン時に遷移しない方式なので もう少し実用的な動作に近づかせるため あえてログインURLから遷移するようにし、 セッションもRedisを使うようにしてexpressとsocket.ioでセッションを

    expressやsocket.ioのテストはこんな感じで書いてます、というお話 - アルパカDiary Pro
  • ペアプロ・TDDの『お題』をまとめてみた #tddbc #coderetreat #pp_con - Diary of absj31

    TDD及びペアプロを通じてプログラミングスキルを上げるべく、ネットで公開されている『お題』について色々情報収集してみました。 お題やテーマについては、見つけ次第随時追加していきます。 Stackユーティリティ from 『車窓からのTDD』 - 車窓からのTDD こちらについては自分でも試しに写経してみました。以下エントリ。 『車窓からのTDD』を写経してみた ( JDK7 / Eclipse4.2 / Quick JUnit / Mercurial / Bitbucket ) - Shinya’s Daily Report FizzBuzz問題 from TDDBC TDDBC お題 うるう年問題 from TDDBC TDDBC お題 LRU Cache from TDDBC TDDBC お題 ワードフィルタ from TDDBC TDDBC お題 以上、ここまでの4つのお題は和田卓人

    ペアプロ・TDDの『お題』をまとめてみた #tddbc #coderetreat #pp_con - Diary of absj31
    y-kawaz
    y-kawaz 2012/07/22
    これはいいね。
  • LANケーブルが変わると速度がどれほどアップするか38種類テスト結果まとめ

    LANケーブルを買いに家電量販店に行くと、フラット・極細・より線・カテゴリー5・5e・6・6a・7などいろいろな種類のものがそろっていますが、LANケーブルを選ぶ際に重要視するポイントはカテゴリーで、5・5e・6・6a・7に分けられ、5・5e・6・6a・7の順に通信速度・伝送帯域などが高性能になり高価になります。また、同じカテゴリーでもLANケーブルの形状が通常より平らになったフラットケーブルや細くなっているものがあるので、通信速度に違いがあるのか実際に計測して確かめることにしました。 ◆集めたLANケーブル 会社ごと・製品ごとの違いを確かめるため、家庭でも使えて売れ筋の長さが5メートルで、なおかつカテゴリー5e・6・6a・7が全部そろっていること、という条件で探していった結果、エレコム・サンワサプライ・バッファロー・ミヨシの4社のLANケーブル、合計38種類を計測することに決定。 実際に

    LANケーブルが変わると速度がどれほどアップするか38種類テスト結果まとめ
    y-kawaz
    y-kawaz 2012/06/13
    「ケーブル選択に大差はない」という意味のある実験。フラットケーブルとかも意外に全く問題ないんだな。
  • 複雑度と単体テストケース数の相関関係 - プログラマの思索

    garyoさんから、ソースの複雑度と単体テストケース数について有益なアドバイスを示唆してもらったので、メモしておく。 ◆SourceMonitor Version 2.4 SourceMonitorはフリーで、以下の言語のソースのソフトウェア複雑度(McCabeのサイクロマチック数)を測定できる。 例:C++, C, C#, VB.NET, Java, Delphi, Visual Basic (VB6) or HTML ◆McCabe's cyclomatic complexity SourceMonitorで求められる複雑度(McCabeのサイクロマチック数)は、モジュール内の分岐の数(+ループの数)で計算される。 複雑度の数値は、下記の意味を持つらしい。 10 以下であればよい構造 30 を越える場合,構造に疑問 50 を越える場合,テストが不可能 75 を越える場合,いかなる変更も

    複雑度と単体テストケース数の相関関係 - プログラマの思索
    y-kawaz
    y-kawaz 2012/05/15
    ん?複雑度って一番右のAvg Complexityのことかな?手元のプロジェクトだと2を超えるのが無いんだけど100とかあるの?見てるとこが間違ってるんじゃないか不安になる…。
  • RSpecによるユニットテストの書き方 — recompile.net

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

    RSpecによるユニットテストの書き方 — recompile.net
  • クライアントのテストはzombie.jsでいいんじゃないか - mizchi log

    zombie.jsとは jsdomというnode製のDOMシミュレータがあります。これを使えば、ブラウザを使わずにDOMイベントを発行することができます。 zombie.jsはセッション管理とブラウザのアクションを管理するjsdomのラッパーです。 個人的には、Ajaxのテストは無理せずJavaScriptでやれとおもってるので、その点zombieは素直に動いてくれます。 利点 AjaxでDOMを書き換えたりするイベントもテストできる (qt-webkitと比較して) 無茶苦茶早い コンパイルが楽(というかQTは定期的に互換崩れてバイナリ壊れてる… 論よりコード サンプルをアップロードしてあります mizchi/zombie-tester-example https://github.com/mizchi/zombie-tester-example インストール等はReadme見てもらうと

    クライアントのテストはzombie.jsでいいんじゃないか - mizchi log
  • Vimスクリプトを書いてみよう — KaoriYa

    目的 機能を持ったVimスクリプト(プラグイン)を徐々に作る様子を見て、書き方を学習してみよう 作るのはよくあるタイプのプラグイン Javaの単体テスト用クラスファイルを開く(作る)コマンドを作るよ 「ね、簡単でしょう(by ボブ)」と言ってみたい まずは雛形 ひな形としてこんなスクリプトを作ります。 command! -nargs=0 UtestAppend call <SID>UtestAppend() function! s:UtestAppend() echo 'HERE' endfunction " s:UtestAppend() UtestAppendというコマンドを追加 UtestAppendコマンドいが実行されたら ‘HERE’ と表示する ほら、すごく簡単ですね。 Javaだけに作用させる 以下はdiff形式で変更点だけ。 @@ -1,5 +1,17 @@ c

  • 簡単にできるウェブサイトのユーザー テストやユーザー リサーチの方法

    +1 ボタン 2 AMP 11 API 3 App Indexing 8 CAPTCHA 1 Chrome 2 First Click Free 1 Google アシスタント 1 Google ニュース 1 Google プレイス 2 Javascript 1 Lighthouse 4 Merchant Center 8 NoHacked 4 PageSpeed Insights 1 reCAPTCHA v3 1 Search Console 101 speed 1 イベント 25 ウェブマスターガイドライン 57 ウェブマスタークイズ 2 ウェブマスターツール 83 ウェブマスターフォーラム 10 オートコンプリート 1 お知らせ 69 クロールとインデックス 75 サイトクリニック 4 サイトマップ 15 しごと検索 1 スマートフォン 11 セーフブラウジング 5 セキュリティ 1

    簡単にできるウェブサイトのユーザー テストやユーザー リサーチの方法
    y-kawaz
    y-kawaz 2012/02/13
    ユーザが何を思いどういう行動するかを意識する。
  • Node.jsのテスティングフレームワーク「Mocha」(後編) : ryu22eBlog跡地

    2011年12月21日 Node.jsのテスティングフレームワーク「Mocha」(後編) 前回に引き続き、Mochaのチュートリアルに沿ってMocha(バージョン0.3.6)を使ってみます。 なお、このエントリーはJavaScript Advent Calendar 2011(Node.js/WebSocketsコース)の参加エントリーです。 前回のあらすじアサーションは好きなライブラリを組み込んで使えるよ!同期・非同期どちらのコードでもテストできるよ!テスト実行の前後に呼ばれるコードを書いて、前準備や後始末ができるよ!「あとで書く」用途のテストを書けるよ!便利なオプションがたくさんあるよ!テスト結果の表示形式がすごく見やすいよ!テストの書き方を色々選べるよ!ざっとこんな感じの内容を書きました。 では、前回からの続きです。 Reportersテスト結果の出力形式は以下のとおりです(スクリー

  • mocha と Jenkins で Node.js の CI 環境を構築する - hakobera's blog

    最近、mocha をつかってテストを書くのが楽しくなってきました。でも、テストの数が増えてくるとローカルでの実行だけでなく、CI 環境が欲しくなりますよね。github にあげられるようなプロジェクトだったら、Travis CI も良いですが、実際に仕事で使うとなると、既存の Jenkins と組み合わせてやる必要ができてきたので、実際にやってみました。 基的な手順は以下の通りです。 mocha でテスト結果を TAP 形式でファイルに出力する 出力したファイルを Jenkins の TAP Plugin に読み込ませる 簡単ですね。 実際にやってみた というわけで、以下のような最小構成で試してみます。 myapp |- lib | |- calc.js | |- test | |- calc.test.js | |- package.jsonここには書いていませんが、実際は git

    mocha と Jenkins で Node.js の CI 環境を構築する - hakobera's blog
  • IEの異なるバージョンをテストする環境のまとめとそれぞれの特徴

    IE6, IE7, IE8などIEの異なるバージョンをテストするアプリケーション・環境のまとめとそれぞれの特徴を紹介します。 Internet Explorer 7のキャプチャ [ad#ad-2] 「Sandboxed IE Browsers from Spoon」から各アプリケーション・環境のまとめと特徴をピックアップし、いくつか追加しました。 IETester Virtual PC IE Super Preview IE Collection マルチPC環境 IETester IETester 対応するIEのバージョン IE5.5 IE6 IE7 IE8 IE9preview 主な特徴 異なるIEのバージョンをタブで同時に表示することが可能なアプリケーションです。 プリントプレビューのテスト、ポップアップによるインタラクション以外のテストは万事良好に動作します。FlashとCSSのフィ

    y-kawaz
    y-kawaz 2011/02/15
    この記事には記載がないが、IE9だと開発者ツール開いてブラウザモードってメニューでIE7,8,9とそれぞれ互換モードと標準モードが切り替えられるようになってたよ。
  • SSD耐久テスト - 第4回 東芝製SSDは壊れる前にリードオンリーになるのか

    実際に壊れるまでSSDに書き込み続けて、SSDの限界を調べてみよう。 仕様 SSD耐久テストのプログラムについて 第1回 MLCの書き込み回数はどれぐらいなのか テスト結果 第2回 空き容量はウェアレベリングに影響するのか テスト結果 第3回 Win7のTrimコマンドは寿命を延ばすのか 最新記事 第4回 東芝製SSDは壊れる前にリードオンリーになるのか テスト結果 第4回 東芝製SSDは壊れる前にリードオンリーになるのか 2010.4.7 東芝製SSDは物理的に壊れるのを防いでくれるらしい。書き込み続けることで徐々に予備領域が失われていくが、これがSSDの実容量に影響を与える前にリードオンリーにして(以降の書き込みを禁止して)、ファイルが破壊されるのを防ぐ仕組みだ。 右側2列が予備領域。これがあるからといって、SSDの実容量を超えて保存できるわけではなく、ウェアレベリン

  • The HTML5 test - How well does your browser support HTML5?

    HTML5test how well does your browser support HTML5? Your browser Other browsers Compare News Device Lab About the test The HTML5 test score is an indication of how well your browser supports the HTML5 standard and related specifications. Find out which parts of HTML5 are supported by your browser today and compare the results with other browsers. The HTML5 test does not try to test all of the new

    The HTML5 test - How well does your browser support HTML5?