As quintas-feiras são dias grandes no Departamento de Arquitetura e Desenvolvimento do Instituto de Informática. Para 45 consultores é o momento da verdade que se aproxima: «todas as quintas-feiras à noite há novo software a entrar em funções», explica Hugo Rocha, coordenador da Área de Acreditação do Departamento de Arquitetura e Desenvolvimento do Instituto de Informática. Além dos testes relativos à carga, ao tráfego ou ao número de acessos, os consultores da área de Acreditação tentam deslindar falhas relacionadas com as funcionalidades disponibilizadas ao público. Para isso, contam com um aliado de peso: uma plataforma criada “em casa” que dá pelo nome de TestAut. O “Test” é relativo a “testes”; e o “Aut” deve-se a “automatizados”. Entre setembro de 2015 e a atualidade a TestAut levou a cabo 2334 testes automatizados a diferentes módulos de software. «Manualmente seria impossível fazer estes testes todos em tão pouco tempo», acrescenta Hugo Rocha.
Segundo os respetivos criadores, a TestAut é, provavelmente, a única plataforma de testes de software criada na Administração Pública. O Instituto de Informática (II) tem vindo a usá-la especialmente em testes ao software usado nos organismos tutelados pela Segurança Social, mas não está posta de parte uma eventual aplicação na caça ao bug de serviços online dos vários ministérios e institutos estatais. Hugo Rocha recorda que já começaram os primeiros contactos com gestores de organismos estatais que terão demonstrado interesse em conhecer a plataforma que funciona como último filtro de segurança antes da estreia de um serviço na Internet.
O coordenador da Área de Acreditação do II dá como exemplo de sucesso o recente lançamento do Segurança Social direta, que passou a adotar a lógica de pré-preenchimento, à semelhança daquilo que o Portal das Finanças popularizou no IRS, eliminando à partida a esmagadora maioria dos erros originados aquando do preenchimento de formulários. «Com o Segurança Social Direta, houve uma mudança radical, mas não chegámos a ver nenhuma notícia má sobre o funcionamento desta plataforma. O que não significa que não haja um bug ou outro – mas, a existirem, são coisas mínimas, em termos de magnitude», acrescenta Hugo Rocha.
Nos 2334 testes automáticos levados a cabo pelo TestAut, 1491 terminaram com a deteção de erros. O que totaliza 64% dos testes. Aos olhos de um leigo pode parecer que as plataformas de deteção de erros apenas servem para apontar o dedo aos programadores, mas é precisamente o contrário: como a rede do trapézio, é esta plataforma que evita males maiores quando um serviço estreia na Net.
Para a Área de Acreditação do II a automatização também traz ganhos de eficácia. Hugo Rocha lembra que a TestAut é responsável por um incremento de 120% no que toca à produtividade da deteção de bugs em diferentes módulos de software. «Esta é uma prova de que a Administração Pública tem capacidade para fazer coisas inovadoras. Os testes de software são cada vez mais importantes, porque há cada vez maior exigência no que toca à qualidade», acrescenta.
A TestAut é descrita internamente como um framework, que reúne dois motores tecnológicos que qualquer outra softwarehouse pode encontrar no mercado: o Selenium, que ajuda a executar os testes realizados na Web, e o Silk Test para os testes relacionados com Java ou versões de software instaladas numa ou mais máquinas.
O uso destes dois motores tecnológicos é feito de acordo com uma metodologia de testes que dá pelo nome Unified Process, que tem em conta as regras de funcionamento, transações e trocas de informação entre cidadãos, empresas e os serviços de um organismo público.
Sempre que é tecnicamente viável, os testes são reutilizados pelos vários consultores da Área de Acreditação do II em diferentes módulos de software. No caso de ser detetado um erro, é possível fazer a regressão mostrando o caminho para se chegar às funcionalidades ou opções que “dão erros”. A plataforma está apta a testar códigos, ações, conjuntos de ações, ferramentas, contextos, e até diferentes cargas de acessos ou ataques de hackers. Os especialistas do II também dotaram a TestAut de funcionalidades de virtualização que permitem correr diferentes testes em background enquanto o utilizador vai usado o computador de trabalho para outras atividades. No final de cada teste, é apresentado um relatório.
«Também podem ser gerados relatórios estatísticos, que podem funcionar com manómetros que permitem saber que testes foram feitos, quais os departamentos ou programadores com maiores taxas de erros, ou quais os erros mais recorrentes», acrescenta Hugo Rocha.
Somados os primeiros sucessos, os criadores da TestAut já apontam para novos episódios na vida da TestAut. Será que a plataforma consegue singrar fora das paredes do II? Hugo Rocha acredita que, tecnicamente, nada impede esta ferramenta de vir a ser usada noutros organismos da Administração Pública ou empresas privadas que produzem software ou têm serviços baseados na Internet: «A TestAut pode ser adaptada à realidade de cada empresa ou instituição».