He escrito Selenium Test case para PHP. Me gustaría obtener la cobertura del código mientras ejecuto estos casos de prueba. Mi caso de prueba:Cobertura del código con PHPUnitSeleniumTestcase
<?php
class Example extends PHPUnit_Extensions_SeleniumTestCase
{
protected $coverageScriptUrl = 'http://applicationname/phpunit_coverage.php';
protected function setUp()
{
$this->setBrowser("*firefox");
$this->setBrowserUrl("http://applicationname");
$this->setCollectCodeCoverageInformation(true);
$this->setTestId("10001");
$this->setHost("applicationname");
}
public function testMyTestCase()
{
$this->open("http://applicationame");
$this->assertEquals("title", $this->getTitle());
$this->type("id=ext-comp-1002", "testuser");
$this->fireEvent("id=ext-comp-1002", "blur");
$this->type("id=ext-comp-1003", "testpassword");
$this->fireEvent("id=ext-comp-1003", "blur");
$this->click("ext-gen45");
$this->waitForPageToLoad("200000");
}
}
?>
He seguido los pasos mencionados en el enlace "http://www.phpunit.de/manual/current/en/selenium.html"
Después de ejecutar la prueba Soy no puede encontrar la cobertura del código. En phpunit_coverage.php, está buscando cookies con el nombre PHPUNIT_SELENIUM_TEST_ID. Esta cookie se está creando en Driver.php y veo que la cookie está disponible, pero tiene un nombre de host para establecer en "localhost" en lugar de mi nombre de aplicación.
El tiempo de vida de la cookie se establece sesión, es decir, inmediatamente después de la ejecución del caso de prueba esta cookie ya no estará disponible y cuando intento iniciar phpunit_coverage.php, no puede encontrar la cookie y la información para que no aparezca la cobertura del código.
cosas que no entiendo:
protected $coverageScriptUrl = 'http://applicationname/phpunit_coverage.php';
- Si la cookie tiene tiene diferentes host mas que la aplicación puede ser accesible esta cookie
he visto este problema se discute en muchos foros, pero uno dio una respuesta concreta
Muchos foros sugirieron usar localhost
en lugar de 127.0.0.1
como nombre del servidor. En mi caso, ya es localhost.
Cualquier sugerencia a este respecto será útil.
Gracias, Ravuri
Quizás las respuestas a estas preguntas puedan ofrecer alguna ayuda: http://stackoverflow.com/questions/11270527/does-phpunit-selenium-code-coverage-work – Potherca