• 締切済み

PHPでローカルだけ通信内容のモックを貼る方法

現在EC Cubeで作ったサイトのカスタマイズを行っていますが 通常の素のPHPのコードと同じような感じで捉えて下さい。 ローカル仮想マシンでデザインなどを当て込みを行うのに、課金周りの処理では、擬似的な課金サーバーに接続をして、パラメーターをもらって返すという処理を行って、画面遷移できるようにしようとしています。 そのための画面遷移を行いたいのですが、課金サーバーに通信は送りたくありません。 こういう場合、ローカルで課金サーバーへの通信を行った場合、これを奪い取って擬似的に生成した値を返すような仕掛けがあれば、別に結果を返すためのサーバーを用意しなくても良く、ベストに近い方法なの、RubyでいうWebmock的な機能を持ったpearパッケージはないでしょうか?

みんなの回答

  • t_ohta
  • ベストアンサー率38% (5320/13881)
回答No.2

hosts ファイルを書き換えて仮想マシンに作った課金サーバのモックにアクセスさせればいいのでは? ブラウザによってはアドオン機能で、一時的にテスト用のhostsに切り替えるとか、DNSをハックして指定のIPアドレスを返すようにしてくれるモノもありますよ。

m_matsubara
質問者

お礼

まー、フツーはそうなりますよね。 デザイナさんの環境にそういう設定を行うのが辛いので、なるたけPHPのコード中で完結させたかったのですが、結局今回は、無理に頑張らないで課金周りのページのhtmlを保存して、デザイナさんにはそれを修正してもらいました。 そうやってもらったデザインを開発側で当て直している時に、敗北感ありましたけどね。 ありがとうございました。

すると、全ての回答が全文表示されます。
回答No.1

>>擬似的な課金サーバー クレジット・コンビニ決済代行の業者の多くはテスト用のサーバ用意していると思います。 ローカルがネットから切り離されてない環境であればそちらを使っては?

m_matsubara
質問者

補足

テスト用のサーバーですが、そちらにつないでも課金履歴は課金サーバー内部に残ってしまうので、こちらのDBのみに入会・大会の情報を残しておかないと、データに齟齬が発生してしまうと、後々のすり合わせが辛いのです。 なるべく全てをローカルでまかなえる体制があるといろいろ捗るので、頑張ってみたかったのですが、モックの仕掛けは、PHPではphp-unitと抱き合わせでしか使えないそうです、今回は諦めました。 どうもありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A