In this tutorial, we'll take a look at WebDriverJs which is a tool used for browser automation. Chrome will be used throughout however modern browsers tend to have available drivers for use with WebDriver (even mobile) so do check them out if you wish to automate other browsers. While unit tests are certainly valuable for modern web applications, at some point, as your application grows, you'll fi
TL;DR - 最初の一人はつらいけど後続はそうでもないので先駆者は自覚と誇りを持ってオールグリーンを維持しよう このエントリはMarionette.js ベースで3ヶ月開発したアプリのカバレッジ推移をまとめてみた - @kyanny's blogというエントリの続きにあたります。未読の方は先にそちらを一読されることをおすすめします。 Marionette.js ベースで3ヶ月開発したアプリのカバレッジ推移をまとめてみた - @kyanny's blogの結論で触れたように、今回テストを書くことにこだわったのは、「クライアントサイド JavaScript (AltJS) のテストを書くのは本当に難しいのか?」という問いに対する自分なりの回答を実践して検証してみたかったという理由があったからだ。 以前から「クライアント JavaScript (CoffeeScript や他の AltJS を
本連載は、テストコードをこれから書こうと考えているJavaScript技術者を対象に、テストコードの意義からテスト駆動開発、JavaScriptでのテストコードの書き方、継続的インテグレーションなど、テスト全般にわたって解説します。また、原理原則だけでなくWhyから説明し、チームメンバーを巻き込みながら開発現場に活かせる考え方を総合的に解説します。第5回目の本稿は、JavaScriptのクロスブラウザのテスト方法をjs-test-driverを使って説明します。 対象読者 JavaScriptの基本をある程度理解している方 テストコードをこれから書こうと考えている方 複数のブラウザでのJavaScriptのテスト 前回までは、主にテストコードの書き方について説明してきました。今回からは、テストの実行環境についての説明をします。 JavaScriptの実行環境は、クライアントサイドはブラウザ
JavaScript Test-Driven Development with Jasmine 2.0 and Karma This document discusses JavaScript test-driven development using Jasmine 2.0 and Karma. It introduces test-driven development principles and benefits, then covers the Karma test runner, PhantomJS browser, and features of the Jasmine testing framework including describe blocks, expectations, matchers, spies, and custom matchers. It also
システムの画面キャプチャを大量にとる必要があり、とり直しが発生しうることを考慮すると、プログラマブルにキャプチャを取りたいなーとツールを探していると CasperJS というのが見つかったので簡易的な使い方をメモ。 CasperJS とは CaperJS は UI テスト向け高レベルの JavaScript フレームワークで、 PhantomJS(WebKit) SlimerJS(Gecko) という2種類のレンダリングエンジンに対応している。 以下のような用途に使える。 defining & ordering browsing navigation steps filling & submitting forms clicking & following links capturing screenshots of a page (or part of it) testing remot
In this tutorial, we get in touch with end to end testing in JavaScript. To save time, we take the existing ToDo App written with Backbone.js. We will extend this app by adding a grunt workflow. The code of this tutorial is hosted on a github repository. Requirements Git node phantomjs casperjs Technology We are using following tools: PhantomJS – a commandline webkit browser without a GUI. CasperJ
We will cover writing a CasperJS test for Caregaroo
13 Jul 2014 edit My team at Bazaarvoice has been spending a lot of time lately thinking about quality and how we can have greater confidence that our software is working as it should. We've long had functional tests in place that attempt to ask questions like "When a user clicks a button, will The Widget do The Thing?" These tests tell us a fair amount about the state of our product, but we've fou
Goodpatchのフロントエンド定例より皆様へ情報を共有する場「Codepatch」第三回! 初めまして、iOSデベロッパのseiyaです。 今回は前回の記事「【Codepatch #02】PhantomJSを使ってスクリーンキャプチャを自動化、他」で少し触れたProtractorを始め下記の項目でお送りします。 ・Protractorでテスト、スクショの撮影を自動化 ・MixinライブラリBourbon紹介 ・楽々Framer.js! shortcuts-for-framer ProtractorとはAngularJSのE2Eテストフレームワークです。WebDriverJSという、JavaScriptでブラウザを動かすための仕組みを元に作られています。 そのため前回のCodepatchで取り上げたCasperJSと異なり、様々なブラウザでの動作が確認できたり、手元のブラウザと全く同じ見
こういうのって、割と規模が大きくなってくると使えるかも。 jsoverson/plato – github platoはNode.jsで動作するjavascriptの解析ツール。 これを利用すると、javascriptのソースに対して、以下解析レポートを取得することができる。 Maintainability ソースのメンテナンス性。0〜100で数値化。100に近いほどメンテナンスがしやすいソースということらしい。 Line of code ソースの行数 Estimated errors in implementation 実行時の推定誤差(?) Lint errors 構文エラー インストールも利用もすごく簡単だけど、念のためにメモを残しておく。 1. インストール Node.jsで動作するので、npm経由でインストールする。 $ npm install -g plato 2. 使い方 詳
最近Goodpatchに入社した、フロントエンドエンジニアのmigiです。 Goodpatch内のHTML5やiOS・Androidアプリ開発についてや業務中の疑問を共有する場としてのフロントエンド定例、そこで出た内容の一部を皆さまに共有する「CodePatch」の第二回目をお送りします! 前回の記事「【CodePatch #01】グッドパッチのフロントエンド定例で話題になった技術を不定期で配信してみます。」には多くの反応をいただきまして誠にありがとうございました! 自分たちが興味を持っている技術に対して全国数千万人(推定)のフロントエンド愛好家の皆さまにも同じく興味を持っていただけたようでとても嬉しく思います。 それでは今回もさっそく、今週のフロントエンド定例で話題に上がった話をご紹介していきます! PhantomJSとは、JavaScriptで操作を行う、画面を持たないWebブラウザで
Веб студіяБудь-який вид бізнесу, а тим паче його розвиток неможливо уявити без взаємодії з людьми, які є потенційними партнерами або клієнтами. У сучасному світі всі питання, що стосуються бізнес-завдань і залучення замовників вирішуються через Інтернет. Замовити сайт веб студії Codeweb, можна з повним циклом розробки. Наше агентство займається проектуванням і розробкою багатозадачних ресурсів, са
スクショを「Excelに」貼るのはわけがわからないけど、実際スクショを貼るのはテストケースが不足しがちなGUI開発にとっては実装アピールとして有用だし、コードレビューの助けになるのでJavaScriptでグリグリ動く機能作ったときはgif添付するの便利だからみんな貼って欲しい— ノ鰻鯉シヘ鮪 (@mizchi) 2014, 8月 4 @koizuka コードだけみせてもこれで何が出来たのかわからん、って言われることあって、確かに自分が他人のGUI実装みても何が起こるかわからなかったりするし、副作用が外部から値チェック可能な形で観測できなかったりするしで、辛いですね…— ノ鰻鯉シヘ鮪 (@mizchi) 2014, 8月 4 もちろんサーバーサイドエンジニアの皆様に於かれましては、GUIの遷移で俺たちの実装した何がわかるんだ感があるでしょうが、サーバサイドでは値の変化が確認しやすいのに対し、
As JavaScript has matured as a language, the module has become the primary unit of code organization. However, as with many facets of JS, modules grew organically from the developer ecosystem (as opposed to being designed as part of the language from the beginning), so they have their flaws – one being that you can only export one interface, and any functions not exported through the interface are
テストしたくないでござる。テストしたくないでござる。 いやまあきちんと環境が整ってたらテスト書くのもわりと楽だし、プログラム本体書いているときの安心感が全然違うので、それなりの規模のプログラムを書く時は良いんだけど。でも、2〜3日で書くようなちょっとしたブラウザ側だけのJavaScriptプログラムとか、開発環境がインストールされていないPCでも気軽にテストできないかなあというのが今回のテーマ。 これだけメジャーなJavaScriptなんだからテストも簡単だろうと思って調べると、ブログとかのサンプルを見てもNode.js前提だったり、Mochaが良さそうだと使おうとしたらアサーションライブラリは別だとか、UIはbrowserifyいるの?いらないの?とか、もじゃもじゃしたヤクの毛にからまって必死で刈り進める感じ。テスト初心者の人にテストコードの書き方を説明するときなんか、たどりつくまでがす
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く