Qual é o ambiente de programação?
O ambiente é literalmente tudo o que está instalado na sua máquina e que pode afectar o desenvolvimento e/ou teste da sua aplicação - que pode incluir :
- Os editores/IDEs que está a utilizar (pode afectar o quão eficientemente pode escrever o código).
- Que compiladores/intérpretes está a utilizar, e as suas versões exactas - pode afectar se o seu código será executado ou não, ou o quão eficientemente o faz.
- O sistema operacional instalado na sua máquina - Pode ter um efeito significativo na forma como o seu código é escrito.
- As variáveis de ambiente definidas na sua máquina, especialmente relevantes durante os testes, uma vez que estas podem afectar dramaticamente certas funções de algumas aplicações.
- As bibliotecas extras instaladas em sua máquina (incluindo potencialmente quaisquer instaladas por outros programas); pode afetar o quão bem seu código será executado nas máquinas de outras pessoas (com versões de bibliotecas potencialmente diferentes instaladas)>li>Outros programas rodando em sua máquina, especialmente durante os testes de carga e desempenho.
- O espaço disponível em RAM e disco em sua máquina: pode afetar o desempenho do seu código, especialmente sob condições de carga/estresse>li> A capacidade e conectividade da rede local: pode afetar diretamente o desempenho de alguns programas (ou mesmo se eles funcionarem).
O seu ambiente de desenvolvimento deve ser o mais limpo possível - instale apenas as bibliotecas que o seu código precisa, e use apenas as versões do compilador/interpretador que você planeja usar. Similarmente para testes funcionais você precisa de um ambiente limpo onde sua aplicação só possa executar com as versões das bibliotecas que você planeja para.
Para testes de carga/estresse você precisa ir um passo além - uma máquina totalmente estéril sem nenhuma outra aplicação rodando nela além do sistema operacional, e somente sua aplicação e as dependências instaladas nela. Algumas organizações irão ao ponto de fazer uma limpeza completa do disco e reinstalar quando planejam testar programas de stress.