- Desenvolvimento de Software
No SoftDrops desta semana, o desenvolvedor Juliano Terres explicou para os colegas como funciona a automatização de tarefas com o fastlane. Esse conjunto de ferramentas automatiza atividades manuais, como o processo de testes, compilação, entrega, entre outros, facilitando a homologação e publicação de aplicativos iOS e Android nas suas respectivas lojas.
Juliano criou nove passos para publicar um aplicativo usando o fastlane, mas salientou que eles não são obrigatórios, e sim uma sugestão funcional. São eles: cadastro do aplicativo no Developer Portal; cadastro na loja online; criação e gerenciamento dos certificados no Developer Portal; criação e gerenciamento de usuários de testes; geração de screenshots e informações do aplicativo; execução de testes unitários e de interface; compilação do projeto; upload do build para teste; e produção e notificação das pessoas envolvidas.
O desenvolvedor destacou a agilidade proporcionada pela automatização, lembrando que o fastlane a torna muito mais rápida do que a execução manual: “Para testar o fastlane, fizemos um aplicativo da Marvel com duas telas, uma com a listagem de personagens e a outra com os detalhes de cada personagem. Nesse app, os nove passos demoraram cerca de 15 minutos para serem realizados, enquanto se feitos manualmente, demorariam cerca de uma hora”, afirma.
Outra vantagem do conjunto de ferramentas é a confiabilidade. “Todos os processos rodados na minha máquina com o fastlane podem ser rodados em máquinas de outros desenvolvedores, ou até mesmo no Jenkins ou qualquer outra ferramenta de CI (Continuous Integration), e sempre serão executadas as mesmas tarefas, sem riscos de erros humanos. Ou seja, é garantido que o script do aplicativo será sempre seguido da mesma forma”, explica Juliano.
Por fim, o desenvolvedor ainda pontuou que o fastlane pode ser executado em diversos ambientes, o que lhe atribui portabilidade; e pode conter diversos processos distintos a serem executados, o que o torna adaptável. “É possível, por exemplo, gerar somente as screenshots, executar somente esse passo. Conforme a necessidade do desenvolvedor, basta adaptar os comandos para atingir os objetivos”, finaliza.