Selenium Java - devo utilizar?

Estou iniciando as automatizações de testes e pra isso escolhi uma linguagem que domino, que é o Java com JUnit e Selenium.

Porém, uma pessoa na empresa é certificado Java e abomina a linguagem. Toda vez que tento tirar dúvidas com ele, fica me dando n motivos para abandonar o Java e utilizar o Python. Ontem falou que não documentei antes de iniciar o projeto e que o Java obriga a documentar. Disse que se qualquer um na comunidade Java souber que eu iniciei o projeto sem documentar com TODOS os diagramas da UML, vão me linchar. Argumenta que é uma solução para grandes problemas e que o meu é pequeno.

Acredito que o Java seja uma linguagem para todos os problemas, sejam eles grandes ou pequenos e que não há falta de profissionais e nem falta de material na internet, portanto é uma boa linguagem a escolher. Além disso é concretizada e muitos forums falam de Java.

Qual a opinião dos prezados?

Nunca ouvi isso de obriga a documentar. Aliás, a ausência de documentação é que é a regra (pela experiência que tenho, no máximo faz-se uma engenharia reversa).
Existem coisas, no java, que sim, são focados em grandes sistemas (JEE, por exemplo). Mas, você pode usar sim, em sistemas de médio e pequeno porte.
Agora, dizer que é para todos os problemas é exagero. Não existe bala de prata.

1 curtida

Cara, pesquisei isso uma vez… ACHO q a documentação só é obrigatória se seu software for ter ISO (não lembro qual).

Não sei te afirmar com certeza.

1 curtida

Qualquer empresa que implemente qualquer padrão de desenvolvimento ou de boas práticas (ITIL, COBIT, ISO, etc) ou que tenha um processo bem definido e maduro, vai ter documentação.
Ocorre que UML nunca foi e nunca será documento. UML é uma ferramenta para modelagem e só. Nunca vi e muitas das pessoas com as quais eu conversei, nesses quase 10 anos de dev, jamais viram atualizar diagramas UML ou sequer viram construir todos os diagramas da UML para um projeto.
A maioria das empresas utiliza modelos baseados na UML (como o RUP, que não utiliza mais que diagrama de atividades, sequência e classes, além da especificação de casos de uso).

Mas, pode ser que, este sujeito tenha o intuito de fazer com que isso realmente aconteça. Aí são outros 600.

2 curtidas

Até um tempo atrás realmente seria linchado. A comunidade Java realmente alimenta muitos excessos de engenharia. Mas hoje diminuiu pela força das soluções mais simples. Java é uma tecnologia atrasada, mas muito madura, uma das mais usadas em produção pelo mercado corporativo. Nenhuma tecnologia específica resolve todos os problemas. Python é mais usado em startups e meio academico/científico.

1 curtida

Poisé, eu aprendi com os cascudos que, ainda que existam padrões e regras, no final de tudo quem manda é o desenvolvedor. É óbvio que os padrões existem, todos já sabemos porque, mas quando o problema é pequeno demais e não existe argumento suficiente pra justificar o trabalho, ele não deverá ser feito.

Exemplo:
O cara reclamou que eu atribuo um valor a uma variável antes de imprimir na tela.

resposta = "erro";
resposta = formataResposta(resposta);
System.out.println(resposta);

Sugeriu que colocasse a função formataResposta dentro do Sysout, porém eu sei que o código fica mais legível quando atribuímos um valor a uma variável e ela é nomeada de forma adequada.
Também sei que o custo de uma variável na memória (sobretudo quando o sistema está prestes a finalizar) é insignificante.

Cada um com seu cada um.

Reclamam de coisas mínimas mas usam Hibernate/Jpa com aquele canhão do sessionfactory/managerfactory.

1 curtida