タグ

2017年11月27日のブックマーク (3件)

  • PHP のスタティックメソッドをモック化する - pixiv inside [archive]

    初登場の @tototoshi です。今回は pixiv のユニットテストで利用しているモックライブラリの紹介をします。 ここ2ヶ月くらいの間、レガシー化したとあるモジュールのリファクタリングに取り組んでいました。 リファクタリングにはテストコードが必須です。しかし今ではすっかりテストを書く文化が根付いている pixiv にもテストコードがない時代がありました。リファクタリングが必要な古いコードにはテストコードがないことが多く、そういったコードに新たにテストをつけていくのはなかなか大変です。テストの概念のないプロジェクトはテスト可能なように設計・実装されていません。テストを書くのが大変なのではなく、書けるようにするまでが大変です。 特にやっかいだったのは DB を参照したりするようなスタティックメソッドを使ったメソッドのテストでした。以下のようなスタティックな Dao を使用した Serv

    PHP のスタティックメソッドをモック化する - pixiv inside [archive]
  • Cookieとセッションをちゃんと理解する - Qiita

    #引用/参考書籍 「よくわかるPHPの教科書」 「初めてのPHP5」 「パーフェクトPHP」 「体系的に学ぶ安全なWebアプリケーションの作り方」 「PHPスーパーサンプル」 「プロになるためのWeb技術入門」 インターネット上で情報をやりとりするということは、大事な内容をはがきに書いて相手に送るようなもの。その情報が相手に届くまでに誰に見られるかわからない。 #概要 HTTPはステートレスなプロトコル。「状態」を持てない。 例えば、「ログイン」ページの場合、「ログインしているかどうか」のチェックをする必要がある。 NG例) http://www.littleforest.jp/itemlist?login=ok loginパラメータを調べてokかどうかを調べる。 →→パラメータを容易に改変できてしまう。 解決策として、Cookieとセッションを使う。 Chromeで、Cookieを確認す

    Cookieとセッションをちゃんと理解する - Qiita
  • PHPまとめ - セッション管理

    HOME | TOP ■ 概要 セッションは、アクセスしてきた人が次にアクセスした時も同一のマシン環境からかどうかを判別するための仕組みです。 セッションを開始する時には『セッションID』というものを発行します。 これはその場で生成したランダムな文字の並びなのでこの中に情報が盛り込まれているということはありません。 アクセスしてきたユーザとは何の関連性もないただのランダムな文字列を発行することは、セッションIDを他の情報から割り出されないようにするためには重要なことです。 発行したセッションIDは、一方はアクセスしてきた人のブラウザに保存してもらい、もう一方はサーバ側で持っておきます。 このブラウザ保存はクッキーと言われる仕組みを使っているのでブラウザがクッキーを受け入れない設定になっていればこの方法は使えないということになります。 ログイン認証の時には、ユーザ名とパスワードが一致すればセ