Prazo limite para entrega: hora de início da aula de laboratório de cada grupo na semana de 2009/10/26 a 2009/10/30.
Após obter os testes que obedeçam às especificações fornecidas, crie o ficheiro ep4.jar, contendo apenas os ficheiros fonte (.java) de todas as classes concretizadas. Se todas as classes estiverem no mesmo directório, deve ser dado o seguinte comando:
jar -cvf ep4.jar *.java
Se todas as classes estiverem na mesma package pacote, deve ser dado o seguinte comando:
jar -cvf ep4.jar pacote
De seguida, entregar o ficheiro ep4.jar para avaliação. O trabalho pode ser entregue várias vezes, até à data limite de entrega, sendo avaliada apenas a última versão.
Endereço para entregas: https://po.rnl.ist.utl.pt/fenix4dei/student
As entregas estão sujeitas às condições genéricas associadas ao processo de entrega.
Pretende-se testar o correcto funcionamente de uma classe que representa uma operação de comparação sobre dois inteiros (representados por instâncias da classe java.lang.Integer).
A classe da operação matemática a testar depende do turno da aula prática:
- 3ª feira: GreaterThanComparator
- 4ª feira: Lesser ThanComparator (manhã); LesserOrEqualThanComparator (tarde)
- 5ª feira: GreaterOrEqualThanComparator
- 6ª feira: EqualComparator
Nenhuma destas classes define atributos. Cada uma possui apenas o construtor automático e define o método público e não estático compare com a seguinte assinatura:
public boolean compare(Integer n1, Integer n2) throws Exception
Este método realiza a funcionalidade associada ao nome da classe correspondente. Por exemplo, na classe
GreaterThanComparator, este método deve devolver
true caso
n1 seja maior que
n2 e
false em caso contrário. Para qualquer das classes, se algum dos argumentos do método
compare for
null, então deve ser lançada uma excepção.
O teste ou testes realizados devem ser especificados numa única classe de teste, chamada, respectivamente,
GreaterThanComparator
Test ,
Lesser
ThanComparatorTest , etc. Os testes devem testar exaustivamente a funcionalidade da classe correspondente.
O método de execução dos testes é semelhante ao praticado na
aula prática 5 e aos que foram usados para o caso do exemplo
arabiannights.
Sugestão: (caso pretenda verificar o correcto funcionamento da sua classe de teste)
- concretizar a classe de comparação a testar;
- introduzir várias situações de erro nesta classe, uma de cada vez, e verificar que a classe de testes correspondente detecta cada uma dessas situações;
- repetir 2. até se obter uma boa ideia do funcionamento dos testes.