Warning: include(): Failed opening 'SiteTest: Firefox.php' for inclusion
... \yii\framework\YiiBase.php on line 418
Yii v1.1.10
PHPUnit v3.6.10
PHPUnit_Selenium v 1.2.6
I get this error when trying to run the example on the book "Agile Web Development with Yii 1.1 and PHP5" I kind of feel that there is a problem with the phrase SiteTest:
, it shouldn't be there. But, how do I fix this?
UPDATE (SOLVED):
Apparently, the problem is not the warning shown above, but there is another error down the road. It says that "curl_init()" is undefined. I already enabled the php_curl extension, but the PHP from CLI is not using the same .ini file as the apache one. So, after I enabled the php_curl in the CLI version of the ini, it works fine now (still giving the warning, but the test is running).
I have the same issue while trying to test my app.
You should download and start selenium server http://selenium.googlecode.com/files/selenium-server-standalone-2.22.0.jar
The warning will stay there, but the test will start!
There are some workarounds how to get rid of the warnings on Yii Framework Forum.
One of them involves editing PHPUnit core file Framework/TestSuite.php
to supress warnings: put @
in front of method_exists($this->name, 'setUpBeforeClass')
posted by Dmitriy K.
The other is more portable and right one. It is to comment browser lines in phpunit.xml:
<selenium>
<!-- <browser name="Internet Explorer" browser="*iexplore" />-->
<!-- <browser name="Firefox" browser="*firefox" />-->
</selenium>
And put into test script:
parent::setUp();
$this->setBrowser('*iexplore');
$this->setBrowserUrl(TEST_BASE_URL);
Displaying of those warnings depends on php.ini settings:
error_reporting
display errors
if you don`t want to display this warnings you must set
error_reporting(E_ALL & ~E_WARNING | E_STRICT)
or
ini_set('display_errors','off');
directives in WebTestCase.php
and don`t switch off error logging to file to save && check errors