Moving Foward!
Att.
Natanael Fonseca
Moving Foward!
Att.
Natanael Fonseca
Olá Pessoal,
mvn install -DskipTests
O que de fato gostaria de passar neste post hoje é a importância dos testes unitários e como devemos construí-los, separei então algumas dicas que podem ajudar os desenvolvedores a construir testes uteis e que com certeza terão uma vida longa no build do projeto.
1. Não realizar o SetUp do teste no construtor
Jamais realize o set up do caso de teste no construtor, além de dificultar o tratamento de exceção do framework, você não estaria utilizando um método que foi criado especificamente para isso. Ao invés, considere sobrescrever o método setUp().
Exemplo:
@Override
protected void setUp() throws Exception {
super.setUp();
//Realizar o setUp aqui…..
}
2. Não depender da ordem de execução dos testes
Exemplo:
public static Test suite() {
suite.addTest(new SomeTestCase (“testDoThisFirst”;));
suite.addTest(new SomeTestCase (“testDoThisSecond”;));
return suite;
}
3. Cuidado com os Efeitos Colaterais
4. Chamar os métodos SetUp() e TearDown
5. Não usar Hard-Coded
Exemplo de código errado:
public void setUp () {
FileInputStream inp = new FileInputStream(“C:\\TestData\\data1.dat”);
}
Exemplo de código correto:
public void setUp () {
FileInputStream inp = new FileInputStream(“data1.dat”);
}
6. Nomear os testes unitários cuidadosamente
testLoggingEmptyMessage()
testLoggingNullMessage()
testLoggingWarningMessage()
testLoggingErrorMessage()
7. Não Incluir informação temporal
Quando estiver construindo um teste unitário, deve-se a qualquer custo evitar colocar informação temporal, fazendo com que o teste unitário dependa de uma data especifica para sua execução ou ainda pare de funcionar por conta disso.
8. Utilize Locale
Uso incorreto:
Date date = DateFormat.getInstance ().parse (“dd/mm/yyyy”);
Uso correto:
Calendar cal = Calendar.getInstance ();
Cal.set (yyyy, mm-1, dd);
Date date = Calendar.getTime ();
9. Utilizar JavaDoc
/**
* Teste unitário que verifica as quatro operações básicas
* da calculadora criada.
**/
@Test
public void testOperacoesBasicas() {
// MyClass is tested
MyCalc tester = new MyCalc();
// Tests
assertEquals(“10 x 0 must be 0”, 0, tester.multiply(10, 0));
assertEquals(“0 x 10 must be 0”, 0, tester.multiply(0, 10));
assertEquals(“0 x 0 must be 0”, 0, tester.multiply(0, 0));
}
Bem pessoal, espero que tenham gostado dessas pequenas dicas.
Um grande abraço.
Att.
Natanael Fonseca
![]() |
Plataformas Suportadas |
![]() |
Arquitetura do Dynatrace |
![]() |
Pure Path |
O segundo dia foi tão interessante quando o primeiro, neste podemos ver o que na minha visão é a principal função de um profiling, a instrumentacao ! Bem, como era de se esperar o dynatrace não só é fantástico nesse quesito como também deixa seus concorrentes comendo poeira.
![]() |
Visão geral da Aplicação |
![]() |
Visão por localidade do usuário |
Conclusão
Ola pessoal,
A semana que passou foi marcada por grandes desafios, confesso que teve horas em que pensei em desistir, sei la, quem sabe uma casa na praia ou uma viajem de dois anos pela Europa(SQN). O que fiz foi procurar um local vazio pra pensar, onde eu pudesse lembrar das coisas boas que eu ja fiz na minha carreira e tambem das pessoas em que ajudei. Depois de uma longa reflexão sobre alguns pontos cheguei a uma conclusão simples: você escolhe o caminho a seguir !
Não quero ser demagogo ou repetitivo, mas acontece que esses minutos de reflexão me ajudaram a seguir em frente, pensar em coisas boas não só me fez resolver o problema que eu estava passando, como também me ajudou a ajudar outras pessoas. Não canso de falar, Deus existe ! Apesar de cada vez mais estarmos consumindo informação ou arrumando explicação pra tudo, existem coisas que simplesmente a nossa inteligencia não vai conseguir alcançar, sabe por que ? porque esta no campo da f’e, da crença e também na experiencia de vida que cada um carrega.
Para os que estão começando na área de tecnologia e ainda tem a chama da curiosidade e do amor por coisas novas, não deixem isso morrer, algumas vezes o stress vai ser tao grande tao grande que apenas o amor pelo que você faz sera o combustível pra continuar.
Aqui em São Paulo é ate comum ver profissionais que perderam esse amor pelo tecnologia e hoje são apenas pessoas que esperam o dia do pagamento. triste né ?
Em resumo, o que mais simboliza o que quero passar neste post é a mensagem abaixo:
Moving Foward !
Abrcs e bons codigos.
Natanael Fonseca
Olá Pessoal,
Compartilhando mais uma edição da Oracle Java Magazine com vocês….
Link.
Abrcs.
Natanael Fonseca
Olá Pessoal,
Compartilhando a edição da Java Magazine deste bimestre :
Boa leitura !
Abrcs.
Natanael Fonseca
Olá Pessoal,
// Isto é um código Java.
public class PigLatin {
public static String pigLatin(String word) {
char firstLetter = word.charAt(0);
if ("aeiou".indexOf(firstLetter) != -1)
return word + "ay";
return word.substring(1) + firstLetter + "ay";
}
public static void main(String args[]) {
System.out.println(pigLatin("red"));
System.out.println(pigLatin("orange"));
}
}
; Isto é o mesmo código, só que em Clojure.
(def vowel? (set "aeiou"))
(defn pig-latin [word]
(let [first-letter (first word)]
(if (vowel? first-letter)
(str word "ay")
(str (subs word 1) first-letter "ay"))))
(println (pig-latin "red")) ;Utiliza a função pig-latin
(println (pig-latin "orange")) ; --//--
Abrcs,
Natanael Fonseca
Olá Pessoal,
Gostaria de compartilhar uma notícia especial, publiquei um artigo sobre AIDL na Mobile Magazine Edição 59, espero que ajude os programadores interessados nesta tecnologia. Este artigo é a realização
de um sonho antigo que eu tinha, ter uma publicação em uma revista importante da área.
Aproveito este post para agradecer meus amigos e familiares que me apoiaram nesta jornada, espero poder retribuir todo este apoio com mais artigos publicados.
Obrigado a todos !
Abrcs
Natanael Fonseca