Pergunta

Eu tenho uma classe com uma chave primária que é armazenado em um banco de dados. Ao criar uma nova instância da classe que pode ser obtido a partir da base de dados HSQLDB ou para itens não no banco de dados insere tudo, mas a chave primária e este é gerado automaticamente e voltou para a classe para definir o atributo id. Em seguida, tenho um método getID () para recuperar este ID.

Eu estou tentando escrever um teste JUnit que os controlos para garantir o ID gerado é o que é retornado pelo método getID () mas eu já usei 'Call identidade' consulta para obter o ID dentro do construtor e subsequentes utilizações deste retornar 0. Qual é a melhor forma de garantir o ID gerado é o mesmo que o ID retornado pelo método getID ()?

Foi útil?

Solução

Eu realmente considerar o projeto diferente para testar as classes. Acessando um banco de dados realmente não é um teste de unidade na maioria dos casos. Se o gerador db ID funciona e tem um teste então você não deve realmente precisa para testar sua classe.

Desde que você classe pode retornar um Id então tudo o que deveria importar-se que sua classe retorna o id que foi colocado em-lo em no momento certo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top