Asset Publisher Asset Publisher

Return to Full Page
Back

Ciência da Computação tem defesa de dissertação no próximo dia 10

A dissertação tem como orientador o professor Marcelo Bezerra d'Amorim

O Programa de Pós-Graduação em Ciência da Computação do Centro de Informática (CIn) da UFPE promove defesa de dissertação de mestrado, no dia 10 deste mês, às 14h30, no auditório do CIn, Campus Recife da Universidade. O trabalho é intitulado “Test Suite Parallelization in Open-Source Projects: A Study on Its Usage and Impact”, do aluno Jeanderson Barros Cândido.

A dissertação tem como orientador o professor Marcelo Bezerra d'Amorim. A banca examinadora é formada pelos professores Fernando José Castor de Lima Filho (UFPE/Centro de Informática); Eduardo Magno Lages Figueiredo (UFMG/Departamento de Ciência da Computação) e Marcelo Bezerra d'Amorim (UFPE/Centro de Informática).

Resumo:

Teste de software é um processo custoso, mas mandatório no processo de desenvolvimento. Sistemas complexos podem demandar horas para executar várias suítes de testes. Para mitigar os custos, uma estratégia popular em grandes corporações é o uso de um ambiente de execução distribuído em escala global. Desta forma, a carga de testes é dividida entre diversos servidores e os testes são executados simultaneamente em diferentes servidores. Outra estratégia explorada no contexto acadêmico e industrial é a aplicação de técnicas de teste de regressão, como seleção e minimização de testes. Uma outra forma igualmente relevante e complementar a estratégias existentes é a execução paralela de suítes de testes em uma mesma máquina. Nos últimos anos, com a popularização de processadores com múltiplos núcleos, ferramentas de build e bibliotecas de teste adicionaram suporte à execução paralela de testes em diferentes granularidades com o objetivo de prover a máxima utilização dos recursos computacionais de uma máquina e diminuir o tempo execução. Desta forma, testes podem ser executados em diferentes processos e até mesmo em múltiplas threads em um mesmo processo.
Este trabalho reporta nossas descobertas sobre a utilização e o impacto de execução paralela de testes em projetos de código aberto e provê recomendações a programadores e desenvolvedores de ferramentas que pretendem utilizar ou prover esta funcionalidade. Considerando um conjunto de 468 projetos populares escritos em Java, observamos que 24% destes projetos possuem suítes de teste custosas. Apesar disto, apenas 19.1% utilizam alguma forma de paralelismo para acelerar a execução dos testes. Para melhor entender o motivo desta subutilização, elaboramos um questionário para desenvolvedores destes projetos. O principal motivo de resistência à adoção de execução paralela é o receio de introduzir problema associados ao não determinismo da execução, como por exemplo, problemas de concorrência. Os resultados sugerem que, em média, desenvolvedores preferem manter a previsibilidade de uma execução determinística ao invés de alta performance.

Mais informações
Programa de Pós-Graduação em Ciência da Computação
(81) 2126.8430

 

 

Date of last modification: 06/04/2018, 14:07