操作方法

with JSTAPd の章

Yappo: yappo あっと shibuya.pl
Shibuya Perl Mongers

この章のテーマ

本日は、僕が会社で作ってるFiciaというAjaxなサービスで使っている、AjaxテストツールのJSTAPdについてお話します。

目次

background

QUnit-TAP ?

Test::QUnit ?

これら、のツールでは満足できなかった

狙い

jsTestDriver との違いを言うとすれば Perl の作法で書けるかどうか?

すいません、ちょっと詳しく調べてないのでこれ以上は。。

what is JSTAPd

さらなる特色

ユーザが使う可能性の
あるブラウザで
自動テストする事が必須

目次

how to install

$ curl -L http://cpanmin.us | perl - JSTAPd
  

github

http://github.com/yappo/JSTAPd
$ git clone http://github.com/yappo/JSTAPd.git
  

目次

実際に動かしながら
紹介

テストプロジェクト作成

$ jstapd -n project_name
  

テストサーバ起動

$ jstapd -d project_name
  

ブラウザでアクセスして
「make test」ボタン
を押す

スケルトンで作った
ファイル説明

index

conf.pl

01_base.t

01_base.js

01_base.html

肝心のCLIは?

conf.plに以下を追加

$config->{auto_open_command} =
 'open -g -a Safari %s';
  

or 環境変数設定

$ export JSTAP_AUTO_OPEN_COMMAND=
 'open -g -a Safari %s'
  

コード書きながら以下を説明

JSDeferred-ish

before

setTimeout(function(){
 foo();
 setTimeout(function(){
  bar();
  setTimeout(function(){
   baz();
  }, 100);
 }, 100);
}, 100);
  

after

jstapDeferred.wait(100).next(function(val){
  foo();
 }).
 wait(100).next(function(val){
  bar();
 }).
 wait(100).next(function(val){
  baz();
 });
 

Ajax Testing

実際にコード
書きながら説明

目次

inside JSTAPd

inside JSTAPd 以上

JSTAPdの使い方入門記事を、10月に発売された Web+DB PRESS vol.59 にて書きました。

まとめ

最後に宣伝

JPerl Advent Calendar
2010 やります

参加者募集中

Perlなんか
やってられるかの人は
他の言語などのを
やると面白いです

kanasanが
JS Advent Calendar
やるっぽいです

node.js Advent Calendar
とかやると良いのでは?

関連情報は
#jpac2010@twitter
に流しときました

有り難うございました!