PHPUnit」タグアーカイブ

php-webdriverをWindowsのローカルで試す

投稿日:

小学校とか幼稚園とかの行事に参加する度に日焼けに悩まされています。
この時期は外でも地味に調子こけるからそれが辛い。

さて、前回はローカルのMacでphp-webdriverを使ってseleniumを動かしてみましたが、今回はみんな大好きWindowsを使ってみたいと思います。
※ WindowsなのでもちろんIEも動かせます

といっても、Macで試したときとそんなに違いはありません。

環境

環境ですが、

  • Windows 7 Professional
  • php
    • PHP 5.6.23 (cli) (built: Jun 22 2016 12:15:20)
    • xampp を使いました
    • php-webdriver は PHPのバージョンが5.5 以上であれば大丈夫です
  • java jdk
    • 1.8.0_77
    • javaは 1.8 以上であれば大丈夫です

自分はこんな感じです。
とりあえず、PHP(>=5.5) と Java(>=1.8) が入っていればよいと思います。

利用するブラウザ

利用するブラウザのバージョンは以下の通りです。

  • Chrome
    • 59.0.3071.86 (Official Build) (64 ビット)
    • ヘッドレスじゃないよ!
  • Firefox
    • 53.0.3 (64 ビット)
    • ※ 32 ビット版でも大丈夫だと思います
  • IE
    • 11.0.9600.18537

続きを読んでみようかな…

CentOS 6.8 でphp-webdriverを試す (Firefox編)

投稿日:

前回 はローカルのmacでphp-webdriverを試したので、今回は CentOS 6.8 上での実行を目標に作業を行っていきます。
先に断っておきますと、とりあえず利用するブラウザはFirefoxのみです。

環境

  • CentOS 6.8
$ cat /etc/redhat-release
CentOS release 6.8 (Final)

Java (jdk) のインストール

$ sudo yum -y install java
  • 確認
$ java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)

1.8が入らなかった場合とかソースから直接インストールしたい場合

$ wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm
$ sudo rpm -ivh jdk-8u131-linux-x64.rpm

Firefoxのインストール

$ sudo yum -y install firefox
  • 確認
$ firefox -v
Mozilla Firefox 52.1.0

続きを読んでみようかな…

PHPUnitでheader関数を使うメソッドのテスト

投稿日:

まだ冬は本気をだしていないぞ〜。

以前こんな PHPUnitでajaxから呼ばれるモジュール(jsonをecho)のテストをする自分の解 | Shimabox Blogのを書きました。
その時はよく分からずmockを使えばうんたらかんたらみたいなことを書いちゃったのですが、最近同じようなケースがありまして、えぇ、調べ直したら実に簡単な方法があったのでメモっておきます。

ちなみに、PHPUnitのバージョンは4.8.31です。
続きを読んでみようかな…

PHPでテスト (PHPUnit / DBUnit) を書く前にする事とか依存性の注入とか

投稿日:

最近凄く寒くなってきて、こういった本格的な冬までの移行期間に何を着たらいいのかわからないというか適切な洋服を持っていないくていつも困ります。
軽く羽織れてなおかついい感じの洋服が欲しいです。

今回は自分がPHPでテスト (PHPUnit / DBUnit) を書く前に、
まずテストが書ける様に行っていること
を書き連ねてみます。

例えば既存ソースの修正があって、それにはテストが無かったとします。
テストを書かないのが許されるのなんて小学生までだよね~、そうだよね~、よしテスト書くぞとなります。
で、ソースを見ます。
続きを読んでみようかな…

PHPUnitとPHPのバージョン対応表

投稿日:

そこにペチパー(PHPer)が100人いたら97人はPHPUnitでテストを書く。
と言われている位(適当です)、PHPでは珍しくデファクトとなっているPHPUnit。

なにそうなのか!?と、いざ導入しようとしてwget https://phar.phpunit.de/phpunit.pharから入れたらPHPのバージョンが合っていなくて挫けそうになった経験。あると思います。

何故なら、PHPUnitの最新バージョンはPHP5.6PHP 7以上を求めているからです。
※ 上記のwget 〜 では最新のPHPUnitが取得されます

そして恐らく、みんながみんなPHPのバージョンは最新では無いはずです。
(一番マシなのが5.5系でヘタすれば未だに5.3系なんてとこも??5.2系使っていたら頭おかしい)

え、じゃあ僕は5.5系使っているんだけど、どうしたらいいの?私は5.4系よ、どうしたらいいの?という事になりますが結論を先に書くと、


PHP5.6以上の人 => PHPUnitは 最新 のものでOK (今のところ)
PHP5.5以下の人 => PHPUnitは 4.8系 を使う (pharファイルはphpunit-4.8.35.phar)

PHP7.0以上の人 => PHPUnitは 最新 のものでOK (今のところ)
PHP5.6の人 => PHPUnitは 5.7系 のものでOK (pharファイルはphpunit-5.7.20.phar)
PHP5.5以下の人 => PHPUnitは 4.8系 を使う (pharファイルはphpunit-4.8.35.phar)

という事になります。
※ 最新の PHPUnit (6.0.0) から PHP5.6 のサポートを止めたようです
Release Announcement for PHPUnit 6.0.0 · sebastianbergmann/phpunit Wiki · GitHub

つまり、それぞれこんな感じでインストールすればOKです。

  • PHP5.5以下 ( >= ) の人はこんな感じでバージョン指定する
$ wget https://phar.phpunit.de/phpunit-4.8.27.phar
$ chmod +x phpunit-4.8.27.phar
$ sudo mv phpunit-4.8.27.phar /usr/local/bin/phpunit
  • Chefだとこんな感じ(上のバージョン指定)

続きを読んでみようかな…