Tengo esta clase de prueba a continuación y solo quiero ejecutar una prueba de ella, por ejemplo, "aboutPage". ¿Alguna idea de cómo?
Así es como ejecuto solo este archivo:
codecept run tests/acceptance/VisitorCest.php
Pero ahora quiero ejecutar solo una prueba del archivo.
<?php
use \AcceptanceTester;
class VisitorCest
{
public function _before(){}
public function _after(){}
public function aboutPage(AcceptanceTester $I)
{
$I->wantTo('check about page');
}
public function contactPage(AcceptanceTester $I)
{
$I->wantTo('check contact page');
}
}
php
codeception
Tzook Bar Noy
fuente
fuente

.phpextensión del nombre de archivo, así:codecept run -- -c frontend unit models/ContactFormTest:testSendEmailmyTestNametampoco tiene que ser el nombre completo de la prueba. Ejecutará cualquier prueba con una coincidencia parcialesto es lo que funciona:
codecept ejecutar {nombre-suite} {nombre-archivo} .php: {nombre-función}
observe el espacio entre el nombre de la suite y el nombre del archivo
fuente
.phppieza.Además de la respuesta proporcionada por @Tzook Bar Noy , puede agregar un final
$cuando hay varias pruebas que comienzan con el mismo nombre . Considere el siguiente ejemplo:<?php use \AcceptanceTester; class VisitorCest { public function aboutPage(AcceptanceTester $I) { } public function aboutPageOption(AcceptanceTester $I) { } }Donde el siguiente comando ejecutará ambas pruebas:
Esto ejecutará solo el primero:
fuente
Una forma más adecuada de hacer esto será asignar una anotación de grupo al caso de prueba en cuestión. Esto es preferible por la siguiente razón; Si tiene dos casos de prueba, por ejemplo, en la misma clase VisitorCest;
public function aboutPage public function aboutPage2Ejecutando
ejecutará los casos de prueba VisitorCest: aboutPage y VisitorCest: aboutPage2.
Asignar un grupo a un caso de prueba como este
/** * @group aaa */ public function aboutPage(AcceptanceTester $I) { }Y ejecute este caso de prueba en particular como este
codecept run -g aaafuente
Además de las respuestas anteriores, puede ejecutar uno o varios métodos agrupando por un nombre dado:
/** * @group test-aboutPage */ public function aboutPage(AcceptanceTester $I) { $I->wantTo('check about page'); }Utilice la opción
-gy el nombre del grupo:fuente
esto es lo que hago.
php codecept.phar run unit UnitNameTest.phpfuente
Si lo está utilizando
PHP Yii2 Framework, puede ejecutar solo una prueba con este comando.Asegúrese de estar en el directorio de pruebas.
fuente
Ceptsolo contiene una prueba, peroCestpuede contener varias pruebas; consulte la pregunta inicialPruébelo phpunit --filter {TestMethodName} {FilePath}
fuente