quarta-feira, 15 de novembro de 2017

Bechmark - Cuidados ao otimizar o seu código

Precisa fazer uma otimização no seu código? Veja os pontos que é necessária atenção:

1) Tenha métrica antes de qualquer alteração (Baseline).

Isso serve para saber se houve ganho e o quanto. Também para saber se o ganho vem em contrapartida de outro recurso (ganha tempo de processamento, mas aumenta memória)

2) Tenha um ambiente controlado para a execução dos testes
2.1) Pense em executar o processo com exclusividade dos recursos (Se for algum teste de rede, tenha a rede disponível)
2.2) Pense no warmup da aplicação ou opte pelo coldstart. Saiba que seu código pode executar mais rápido uma segunda vez
2.3) Execute o processo a ser otimizado várias vezes, já que alguma das vezes seu ambiente pode estar suscetível a alguma variável que mudar o resultado.
2.4) Tenha as métricas bem definidas, colete bem os dados e analise o antes e o depois Para todos esses itens, conheça o BechmarkDotNet para lhe ajudar.

Veja como começar facilmente no Getting Started.

Várias opções de configuração estão disponíveis facilmente
  • Comparar o desempenho de diferentes frameworks do .Net. 
  • Definir formas de exportar o resultado, inclusive com gráficos
  • Definir o teste baseline
  • Definir variação de parâmetros
  • Configurar diagnósticos como MemoryDiagnoser e InliningDiagnoser
Para saber mais veja o Overview.

segunda-feira, 6 de novembro de 2017

Compartilhar tags de App.Config

É possível adicionar partes do arquivo app.config/web.config com a configuração:


     


E criar o connections.config, conforme abaixo:

   
   


Além disso, é possível adicionar o connections.config como link, compartilhando entre projetos. Basta selecionar o arquivo e "Adicionar como link". https://stackoverflow.com/a/15154456/3424212

segunda-feira, 18 de setembro de 2017

Configurando o Selenium para o Node no Ubuntu

1) Instale o Node
2) Instale o pacote selenium-webdriver
npm install selenium-webdriver

3) Instale os drivers do browser que deseja trabalhar
3.1) Para instalar Firefox (geckodriver) no Ubuntu, siga os passos:
3.1.1) Ache a ultima versão do driver para a plataforma e faca o download:
wget https://github.com/mozilla/geckodriver/releases/download/v0.19.0/geckodriver-v0.19.0-linux64.tar.gz

3.1.2)  Descompacte o arquivo:
tar -xvzf geckodriver*

3.1.3) Faca ele ser executável
chmod +x geckodriver

3.1.4) Deixe ele disponível nos binários locais:
sudo mv geckodriver /usr/local/bin/

3.2) Para instalar Chrome Driver no Ubuntu, siga os passos:
3.2.1) Instale o unzip:
sudo apt-get install unzip

3.2.2) Ache a versão do driver para a plataforma compativel com sua versao do Chrome(Lembrando que nem todo driver e compativel com a versao do Chrome) e faca o download:
wget http://chromedriver.storage.googleapis.com/2.25/chromedriver_linux64.zip

3.2.3) Descompacte o arquivo:
unzip chromedriver_linux64.zip

3.1.3) Faca ele ser executável
chmod +x chromedriver

3.1.4) Deixe ele disponivel nos binarios locais:
sudo mv chromedriver /usr/local/bin/


Referencias:
http://toolsqa.com/selenium-webdriver/selenium-grid-how-to-easily-setup-a-hub-and-node/