タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

testingとjavascriptに関するjoker1007のブックマーク (7)

  • ブラウザでビジュアルテストをするreftest-runnerを作った

    概要 reftest-runnerというブラウザで描画内容やレイアウトといった表示結果をテストするためのライブラリを作りました。 要素技術としてはブラウザ、WebDriver API、レンダリングキャプチャ、画像Diffという感じです。 azu/reftest-runner 時間が無い人向け 以下のスライドに簡単にreftest-runnerやreftestとはなにか、どういうユースケースがあるのかが書いてあります。 reftest-runner-overview.pdf reftestとは reftest(Referrence Test)とは、2つのHTMLの表示結果(スクリーンショット)を比較することで表示結果が意図したものかをテストする方法です。 用意するHTMLとして以下の2種類を1セットとして用意して利用します。 テスト用HTML テストしたい機能を使って実装したHTML リファ

    ブラウザでビジュアルテストをするreftest-runnerを作った
    joker1007
    joker1007 2015/05/15
    この手のツールどっかで試してみたいのだが、中々手が出せてない。
  • ServiceWorker を使った XHR のモックテスト - Block Rockin’ Codes

    Intro 似た話は既出なのでご提案にはならないけど、PoC として一応ライブラリっぽくしてみた。 タイトルの通り XHR のリクエストに対して、任意のレスポンスを返すことによって、 再現の面倒なエラー処理などのテストを、 Local Proxy 無しで実現する方法のメモ。 というか、これ自体がブラウザ上の JS だけで完結する Local Proxy と言えるかもしれません。 ざざっと書いただけなので、API というか使い方もまだ適当というかどうしようか考えてるところです。 今これが使えるブラウザ自体がそんなにないので、 SW の実装が普及するまでにもう少しまともにしておきます。 Jxck/response-injection · GitHub 色々踏んだので、 Service Worker 使う際の参考になればと。 モチベーション Service Worker(SW) には色々な機能が

    joker1007
    joker1007 2015/01/16
    ServiceWorkerがリクエストをフックするイベント持ってるの知らんかった。
  • おまえは今まで実行したassertの回数を覚えているのか?あるいは新しいアサーションユーティリティのご提案 - teppeis blog

    JavaScript Advent Calendar 2014 11日目。 いきなり要約: Promiseや非同期テストのアサーションを簡単確実に書けるようになるesplanというライブラリのPoCを作った話。 Promiseや非同期のテストは難しい 詳しくはJavaScript Promiseの: Chapter.3 Promiseのテストをご覧いただきたいのだが、Promiseのテストを正確に書くのはそんなに簡単ではない。 例えばmochaだと、 // 間違ったテスト1: // mayBeResolveWithOne() が1以外でresolveしたときタイムアウトエラーになる it("mayBeResolveWithOne()は1でresolveする", function(done) { mayBeResolveWithOne().then(function(value) { as

    おまえは今まで実行したassertの回数を覚えているのか?あるいは新しいアサーションユーティリティのご提案 - teppeis blog
  • クライアントサイド JavaScript (AltJS) のテストを書くのは本当に難しいのか? - @kyanny's blog

    TL;DR - 最初の一人はつらいけど後続はそうでもないので先駆者は自覚と誇りを持ってオールグリーンを維持しよう このエントリはMarionette.js ベースで3ヶ月開発したアプリのカバレッジ推移をまとめてみた - @kyanny's blogというエントリの続きにあたります。未読の方は先にそちらを一読されることをおすすめします。 Marionette.js ベースで3ヶ月開発したアプリのカバレッジ推移をまとめてみた - @kyanny's blogの結論で触れたように、今回テストを書くことにこだわったのは、「クライアントサイド JavaScript (AltJS) のテストを書くのは当に難しいのか?」という問いに対する自分なりの回答を実践して検証してみたかったという理由があったからだ。 以前から「クライアント JavaScript (CoffeeScript や他の AltJS を

    クライアントサイド JavaScript (AltJS) のテストを書くのは本当に難しいのか? - @kyanny's blog
    joker1007
    joker1007 2014/09/02
    個人的には難しさの壁はある程度越えられたような気はしているけど、コストに見合わないような気がしていて結局余り書いていない。そもそもクライアントサイドJSの設計力が弱いな……。
  • なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog

    ってsinonのスタブ漏れを探しながら何度目かわからない感じにキレてた。 とにかく仕事でJSのテスト書くのが辛いので考えてみる。比較的JSのテストに慣れてる自分ですら辛いのだから、世界はもっと辛いに間違いない。サーバーサイドのnode.jsの話ではない。 JavaScriptで完結しない 構造がHTMLの構造と密結合している。装飾や位置、表示/非表示はCSSによって制御されている。 クライアントJSはHTMLと密結合しており、CSSからビューは影響を受ける。それらがネットワークの結果を受け非同期に振る舞いを帰る。その最終的な値を取得するのが難しい。 もちろんサーバーサイドだってDBやネットワークという外部リソースを扱うが、モックの手法が確立しているし、局所的な複雑度は、JSの方がはるかに多い。 言語仕様が貧弱 mochaやjsmineはrspecを真似てるけど、質的にJavaScript

    なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog
    joker1007
    joker1007 2014/02/07
    ハマったことある箇所ばかりで、めっちゃ「あーあるわー」ってなった。
  • Testable JavaScript

    Read it now on the O’Reilly learning platform with a 10-day free trial. O’Reilly members get unlimited access to books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers. One skill that’s essential for any professional JavaScript developer is the ability to write testable code. This book shows you what writing and maintaining testable JavaScript for the

    Testable JavaScript
    joker1007
    joker1007 2012/09/25
    これは気になるな。
  • JavaScript UnitTest Patterns

    ここでは以下の順番でSinonJSとJsTestDriverを使用したJavaScriptUnitTest Patternsを紹介します。 初期化の遅延非同期実行の同期化html, cssのテストイベントのテストその他問題になりうるコード初期化の遅延UnitTestを行う場合、まずは初期化functionが自動的に実行されないようにしましょう。 初期化functionをこちらの任意のタイミングで実行できるようにすることにより事前に対象外のコードをstub化したり、必要なfunctionへspyを仕込んだ状態でfunctionを実行できるようになります。 UnitTestの場合のみ初期化を遅延する一番簡単な方法はUnitTest実行時のみ条件分岐で初期化を止める方法です。 $(function () { if (window.sinon) { init(); } }); この方法は簡単かつ

    JavaScript UnitTest Patterns
  • 1