フェイスブックの新 API でフェイスブックアプリのテストを自動化しよう。
みなさま
お久しぶりです。最近フェイスブックアプリを作ったりしてますが、やっぱりテストが大変ですよね><
と思っていたら、今日以下のような API が公開されたみたいです!
Test User - グラフAPI - ドキュメンテーション - 開発者向けFacebook
アプリをインストールしている、テストユーザーを API で作ってそのユーザーを使ってテストできるようになるんですね!
すばらしい!
と、いうわけでさっそく試してみた。
まずはアプリの access_token ゲット!
まずは、アプリの access_token を取得します。
以下のように POST してください。
$ curl -F grant_type=client_credentials -F client_id=ここにアプリケーションのID -F client_secret=ここにシークレットキー https://graph.facebook.com/oauth/access_token
こうやると、レスポンスで access_token が帰ってきます。
まずは「俺は、このアプリのクレデンシャルを持ってるぜー」という認証をして、アクセスの認可を貰うわけです。
あとは、テストユーザー 50 人までつくりほーだい!
以下のように POST することで、どんどんテストユーザーが作れます。
$ curl -F installed=true "http://graph.facebook.com/ここにアプリケーションのID/accounts/test-users?access_token=ここにaccess_token"
わーい!
テストユーザーの情報は以下の形式で帰ってきます。
{"id":"ユーザーID","access_token":"テストユーザーのリソースに対するaccess_token","login_url":"ログイン URL"}
permissions というパラメータをつければ、様々な権限付きで access_token がもらえます。
以下は、ログイン URL にアクセスしたところ
こんな感じのユーザーが出来てます。
あとは、テスト用にソーシャルグラフを作る
以下のように友達リクエストを出して
$ curl -d "" http://graph.facebook.com/テストユーザーAのID/friends/テストユーザーBのID?access_token=テストユーザーAのaccess_token
以下のように承認します。
$ curl -d "" http://graph.facebook.com/テストユーザーBのID/friends/テストユーザーAのID?access_token=テストユーザーBのaccess_token
このように、テスト用のソーシャルグラフを作ります。
あとは、テストするだけ!
楽チンですね!
Test Users API 素敵です。