レンタルサーバー選びの迷いを解決!全力サポートします

Google or AdMax Promotion (srv)

MakeGood(on Eclipse)を使うならPHPUnitはComposerが確実(.pharは使わない)

MakeGoodのインストールで散々ハマりながらも動作環境を構築するに至ることができました。
実際に動作する環境を構築してみて、サイトでみかけた一言が、
結構重要だったのかなと感じるに至りました。
MakeGood(Eclipse)を使うならPHPUnitはComposerでインストールした方が確実。
というか、Composerでインストールされてくる依存コンポーネントを見れば、
到底手動ではインストールしきれない数のインストールがされてくることが分かります。

MakeGood(on Eclipse)を使うならPHPUnitはComposerで、.pharは使わない

MakeGood(Eclipse)を使おうとあちこち読み漁っている時に、
ふと以下のコメントに目が止まりました。

ShakeyDave commented on 7 Nov 2015

Hi – this could be a configuration error by me – I’ve been following the instructions here: [[http://blog.loftdigital.com/running-phpunit-tests-in-eclipse-pdt]] on a Windows machine, though I’ve adjusted them to bring things up-to-date (i.e. I’ve installed PHPUnit as a project dependency using Composer, not PEAR).

Here’s the stack trace:

I’m using the V11 x64 Thread Safe build of PHP. Could it be an issue with php-win.exe not recognising namespaces, maybe?

-G訳-

こんにちは – これは私の設定エラーかもしれません – 私はここに指示に従ってきました:Windowsマシン上の[[http://blog.loftdigital.com/running-phpunit-tests-in-eclipse-pdt]]、 私は物事を最新にするよう調整しましたが(つまり、PHPUnitをPEARではなくComposerを使ってプロジェクトの依存関係としてインストールしました)。

スタックトレースは次のとおりです。

(引用)Error: Class ‘PHPUnit_Util_Configuration’ not found · Issue #51 · piece/stagehand-testrunner · GitHub

 

私も同じ問題に直面していました。
PHARでPHPUnitをインストールしたり、Composerを使ったりと、
試行錯誤をしている中で、このエラーに対して質問をされている方の

最後の注記としてのコメントは何か意味があるのではないかと感じたのです。

つまり、PHPUnitをPEARではなくComposerを使ってプロジェクトの依存関係としてインストールした

(だから「PEARでインストールしていないかい?」という無用な返答は不要だ)

そう言っているように聞こえたのです。

 

言い換えれば、
「PHPUnitをMakeGood(on Eclipse)で使うなら
Composerでインストールすること」
ぐらいは私は分かっている。

たぶん、そう言いたいのかなと。

 

そこから、ComposerでMakeGoodを動く環境を構成する模索をし、解決に至る事ができました。

彼の一言は振り返ってみれば非常にいいヒントになった。

 

プロモーション

Google or AdMax Promotion (srvpos)

現実的にはComposerじゃなきゃ無理だ

どうしてそう思うのか?

コマンドラインでPHPUnitを動かすだけであれば手動インストールも可能でしたが、
実際、Composerでインストールされてくる依存コンポーネント群を見ると、

実際はこれだけのものが必要なのか・・・と唖然とするのです。

例えば、以下の様な「composer.json」で、
「phpunit/phpunit」と「phpunit/phpunit-skeleton-generator」を指定して、
インストールを行ったとします。

composer.json

コマンドプロンプトによる実行の結果は以下のようになります。
5行目から34行目までがインストールされたコンポーネントです。

これは以下の様な要件に従ってインストールされています。

phpunit/phpunit 5.7.27

  • ext-pdo: *

(抜粋)phpunit/phpunit 5.7.27 – Packagist

ちなみに上記の「phpunit/phpunit-skeleton-generator」単体でも、
こんなに多くはありませんが、そこそこの依存関係は発生します。

phpunit/phpunit-skeleton-generator 2.0.1

(抜粋引用)phpunit/phpunit-skeleton-generator 2.0.1 – Packagist

 

これだけのコンポーネントを手でインストールする事を考えると、
やっぱりちゃんと動く環境を構築するのは、もはや修行だなとさえ思います。

MakeGood(on Eclipse)を使うなら、
PHPUnitはComposerでインストールする。これが確実。

 


AdMax Promotion

公開日:

コンテンツナビ
すべて展開 | すべて省略

AdMax Promotion

カテゴリ
すべて展開 | すべて省略

QRコードからもこのURLを開けます。