In your phpunit-bootstrap.php
you can do something like this:
$site = getenv('DOMAIN');
and use
<php>
<env name="DOMAIN" value="http://production.com"/>
</php>
in your phpunit.xml
file as shown in the documentation.
The downside of this approach is that you need to have two different xml
files.
Other options are using a custom wrapper script around phpunit like @DavidHarkness showed which tends to work out well
or, if you don't want to run those tests in an automated way (or use both approaches) to do something like:
$site = getenv('DOMAIN');
if(!$site) {
echo "Enter Domain: ";
$site = fgets(STDIN);
}
and have the runner check the environment and if nothing is there ask you for the domain.
Env or define or anything else
The same goes for pretty much every way that php can take in input from the outside world.
<php>
<define name="DOMAIN" value="http://production.com"/>
</php>
also works in case you are using a constant anyways, for example.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…