Mas o que são fixtures? Fixtures são dados que são usados para se ter um controle total dos testes.
Com fixtures, não precisamos nos preocupar se um teste altera dados do banco por que a cada teste esses dados são renovados.
A implementação de fixtures no cakephp é muito simples, basta criar o arquivo app/tests/fixtures/nome-do-modelo_fixtures.php com a seguinte estrutura:
class Nome-do-modeloFixture extends CakeTestFixture {
var $name = 'Nome-do-modelo';
var $fields = array(
'id' => array('type'=>'integer', 'null' => false, 'default' => NULL, 'key' => 'primary'),
'descricao' => array('type'=>'string', 'null' => false, 'default' => NULL)
//aqui são listados todos os campos da tabela
);
var $records = array( //aqui vai os dados
array(
'id' => 1,
'descricao' => 'teste1'
),
array(
'id' => 2,
'descricao' => 'teste2'
)
);
}
Pelo bake, o usuário pode gerar esse arquivo automaticamente, e se já existir a tabela povoada, pode importar os registros facilmenteAgora, no arquivo do teste basta incluir essa fixture com o prefixo 'app.', como por exemplo:
class Nome-do-modeloTestCase extends CakeTestCase {
var $fixtures = array ('app.Nome-do-modelo');
}

Nenhum comentário:
Postar um comentário