dmitrynikolaev
dmitrynikolaev

Reputation: 9132

How can I access global variables inside PHPUnit 3.4.9?

I'm trying to write tests for some legacy code with PHPUnit 3.4.9, but it seems that all my global variables are invisible.

How can I access global variables inside PHPUnit 3.4.9?

Upvotes: 5

Views: 1852

Answers (2)

kinushoo
kinushoo

Reputation: 11

Use this command phpunit --no-globals-backup

Upvotes: 1

Gordon
Gordon

Reputation: 316999

They should be available. However, PHPUnit backups global state between tests:

By default, PHPUnit runs your tests in a way where changes to global and super-global variables ($GLOBALS, $_ENV, $_POST, $_GET, $_COOKIE, $_SERVER, $_FILES, $_REQUEST) do not affect other tests. Optionally, this isolation can be extended to static attributes of classes.

so this might be an issue. Also note that

Objects of some classes that are provided by PHP itself, such as PDO for example, cannot be serialized and the backup operation will break when such an object is stored in the $GLOBALS array, for instance.

See the chapter on Testing Global State in the PHPUnit Manual

Upvotes: 3

Related Questions