Palestra técnica ministrada no PySM em Santa Maria - RS.
Como iniciar testes com splinter.
Github: https://github.com/adrianomargarin/palestra-splinter
Documentação splinter: splinter.readthedocs.org
Este documento apresenta sobre desenvolvimento orientado a testes (Test-Driven Development - TDD) usando a linguagem Ruby on Rails. Resume em três frases:
O documento introduz TDD como uma técnica de design de software onde os testes e a documentação são produzidos juntamente com o código. Apresenta o ciclo básico de TDD - teste, código e refatoração - e como Ruby on Rails é perfeitamente adequado para aplicar TDD. Convida o leitor a colocar a técnica em prática com exemplos na web.
Minas Testing Conference 2016 - Testes de Carga com LocustStefan Teixeira
Este documento apresenta Locust, uma ferramenta open-source para testes de carga escrita em Python. Locust é descrita como simples, extensível e capaz de simular grandes números de usuários acessando um sistema simultaneamente de forma leve e escalável. Exemplos demonstram como executar testes de carga básicos e avançados com Locust.
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Igor Abade
Para muita gente teste exploratório é sinônimo de algo sem processo nem organização – apenas um pretexto para sair navegando pela aplicação e tentar achar algum erro. Nada mais longe da verdade! Venha ver nesta palestra como um simples plugin no Chrome pode ajudar a organizar seu processo de testes exploratórios, ajudando na coleta e registro de evidências.
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...minastestingconference
O documento discute a importância dos testes automatizados para entrega contínua e DevOps. Ele explica diferentes tipos de testes como testes unitários, de serviço e de interface do usuário e ferramentas para cada um. Também aborda tópicos como pirâmide de testes, antipadrões, cobertura de código e testes de mutação.
O documento discute Test Driven Development (TDD), incluindo seus princípios, tipos de testes, boas práticas e ferramentas. TDD envolve escrever testes automatizados antes de escrever código funcional e usá-los para guiar o desenvolvimento de software.
Coding Dojo é um treino coletivo de programação onde duplas se alternam resolvendo problemas usando Test Driven Development (TDD) e passos pequenos. O processo envolve escrever testes antes de implementar novas funcionalidades e só avançar quando os testes são aprovados, enquanto a platéia não pode se manifestar exceto quando solicitada. O objetivo é treinar boas práticas de programação e aprender novas habilidades de forma divertida e eficiente.
O relatório descreve um sprint realizado pela equipe cPython da Globo.com onde 10 problemas foram investigados, 7 patches foram submetidos e feedback foi recebido para 5 deles. Dois patches foram aceitos e 334 linhas de código foram modificadas.
O documento discute os benefícios da prática de desenvolvimento guiado por testes (TDD) e como implementá-la. Ele explica que o TDD melhora a qualidade do código, faz com que os desenvolvedores pensem nos requisitos e permite evoluir o projeto no ritmo desejado.
Este documento apresenta sobre desenvolvimento orientado a testes (Test-Driven Development - TDD) usando a linguagem Ruby on Rails. Resume em três frases:
O documento introduz TDD como uma técnica de design de software onde os testes e a documentação são produzidos juntamente com o código. Apresenta o ciclo básico de TDD - teste, código e refatoração - e como Ruby on Rails é perfeitamente adequado para aplicar TDD. Convida o leitor a colocar a técnica em prática com exemplos na web.
Minas Testing Conference 2016 - Testes de Carga com LocustStefan Teixeira
Este documento apresenta Locust, uma ferramenta open-source para testes de carga escrita em Python. Locust é descrita como simples, extensível e capaz de simular grandes números de usuários acessando um sistema simultaneamente de forma leve e escalável. Exemplos demonstram como executar testes de carga básicos e avançados com Locust.
Testes exploratórios não são sinônimo de bagunça! (TDC 2016 SP)Igor Abade
Para muita gente teste exploratório é sinônimo de algo sem processo nem organização – apenas um pretexto para sair navegando pela aplicação e tentar achar algum erro. Nada mais longe da verdade! Venha ver nesta palestra como um simples plugin no Chrome pode ajudar a organizar seu processo de testes exploratórios, ajudando na coleta e registro de evidências.
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...minastestingconference
O documento discute a importância dos testes automatizados para entrega contínua e DevOps. Ele explica diferentes tipos de testes como testes unitários, de serviço e de interface do usuário e ferramentas para cada um. Também aborda tópicos como pirâmide de testes, antipadrões, cobertura de código e testes de mutação.
O documento discute Test Driven Development (TDD), incluindo seus princípios, tipos de testes, boas práticas e ferramentas. TDD envolve escrever testes automatizados antes de escrever código funcional e usá-los para guiar o desenvolvimento de software.
Coding Dojo é um treino coletivo de programação onde duplas se alternam resolvendo problemas usando Test Driven Development (TDD) e passos pequenos. O processo envolve escrever testes antes de implementar novas funcionalidades e só avançar quando os testes são aprovados, enquanto a platéia não pode se manifestar exceto quando solicitada. O objetivo é treinar boas práticas de programação e aprender novas habilidades de forma divertida e eficiente.
O relatório descreve um sprint realizado pela equipe cPython da Globo.com onde 10 problemas foram investigados, 7 patches foram submetidos e feedback foi recebido para 5 deles. Dois patches foram aceitos e 334 linhas de código foram modificadas.
O documento discute os benefícios da prática de desenvolvimento guiado por testes (TDD) e como implementá-la. Ele explica que o TDD melhora a qualidade do código, faz com que os desenvolvedores pensem nos requisitos e permite evoluir o projeto no ritmo desejado.
Como eu aprendi que testar software é importante?Maurício Aniche
O documento discute a importância de testes de software, relatando a experiência do autor. Ele aprendeu sobre testes ao longo de sua carreira na faculdade e em várias empresas, onde testes automatizados ajudaram a evitar problemas. O autor também fornece dicas valiosas sobre estudos e carreira para desenvolvedores de software.
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva minastestingconference
Este documento apresenta três passos para a automação efetiva de testes: 1) Definir o valor do negócio através de exemplos em linguagem natural e feedback do cliente; 2) Automatizar os testes usando Selenium WebDriver e padrões como Page Object; 3) Refatorar os testes para evitar duplicação de esforços e manter baixo custo de manutenção.
O documento descreve os conceitos e benefícios do Desenvolvimento Guiado por Testes (TDD), incluindo suas regras fundamentais, ciclo de desenvolvimento, tipos de testes, e consequências como código mais testável e integração contínua.
O documento discute as vantagens e desafios da prática de Test-Driven Development (TDD). A prática de TDD pode melhorar a qualidade do código e do projeto de classes, mas não garante esses resultados automaticamente. Os desenvolvedores precisam estar atentos aos feedbacks dos testes para refatorar o código continuamente e melhorar o projeto.
Cristiano Raffi Cunha, um desenvolvedor full stack de 21 anos, apresenta sobre a importância da cultura de testes. Ele discute os tipos de testes, como testes unitários, de integração e end-to-end, e por que testar é importante para reduzir bugs e custos de manutenção. Ele também aborda desafios como manter a qualidade do código e como incorporar testes em projetos existentes.
Minas Testing Conference 2015 - Visual Regression Testing em ambientes na nuvemStefan Teixeira
O documento discute testes de regressão visual em ambientes na nuvem. Ele introduz o autor e suas credenciais, define testes de regressão visual e suas motivações, apresenta ferramentas como Kobold, e discute como testar na nuvem usando serviços como Sauce Labs e BrowserStack para executar testes em múltiplos navegadores e sistemas operacionais sem a necessidade de infraestrutura local. O documento também inclui um hands-on mostrando como configurar e executar testes de regressão visual usando essas ferramentas.
O documento descreve conceitos e benefícios do TDD (Test Driven Development) e do framework JUnit. O TDD é um estilo de desenvolvimento orientado a testes que guia o projeto. JUnit facilita testes unitários em Java verificando resultados de métodos. Ele possui tags como @Test, @Before e @After para definir métodos de teste.
O documento discute os benefícios do TDD (Test-Driven Development), incluindo aumentar a confiabilidade do código através da escrita de testes antes do código, contribuir para o aprimoramento do design do código, e aumentar a expectativa de vida do programador. As ferramentas comumente usadas incluem JUnit para testes e Mockito para simular objetos.
O documento descreve conceitos e benefícios do TDD (Test Driven Development) e do framework JUnit. O TDD é um estilo de desenvolvimento orientado a testes que guia o projeto. JUnit facilita testes unitários em Java verificando resultados esperados. Ele possui tags como @Test, @Before e @After para definir métodos de teste.
In tests we trust: começando com TDD, mocks e maisAna Paula Gomes
O documento discute os benefícios do Test Driven Development (TDD) em 3 frases:
Escrever testes unitários primeiro ajuda a moldar o design da aplicação e aumentar a qualidade e confiabilidade do código. Mockar dependências externas durante os testes torna os casos de teste independentes e mais rápidos. Começar com TDD requer prática, mas leva a um código mais fácil de manter e expandir no futuro.
Como Escrever Módulos Para o Kernel - Fábio Olivé LeiteTchelinux
O documento discute como escrever módulos para o kernel Linux, explicando que embora o kernel ainda seja monolítico, partes não essenciais podem ser carregadas sob demanda. Ele também aborda os perigos de adicionar ou remover código de um kernel em execução e como a ligação dinâmica lida com a comunicação entre módulos e o kernel. Por fim, discute práticas como Makefile, includes e parâmetros para compilação e como carregar e descarregar módulos.
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Igor Abade
Para muita gente teste exploratório é sinônimo de algo sem processo nem organização – apenas um pretexto para sair navegando pela aplicação e tentar achar algum erro. Nada mais longe da verdade! Venha ver nesta palestra como um simples plugin no Chrome pode ajudar a organizar seu processo de testes exploratórios, ajudando na coleta e registro de evidências.
Proposta: Métricas e Heurísticas para Detecção de Problemas em Aplicações WebMaurício Aniche
Proposta de pesquisa apresentada no encontro do NAPSoL em São Carlos, 2014: Proposta: Métricas e Heurísticas para Detecção de Problemas em Aplicações Web
Produtividade com Spring Roo no Google App EngineDr. Spock
Apresentação realizada no dia 07/Nov/2010 no evento The Developers Conference (TDC2010) na trilha Stadium Domingo (10:00 às 10:50) promovido pela Globalcode e VOffice em Florianópolis/SC/Brasil.
- O documento apresenta a ferramenta CasperJS, um framework para testes baseado em JavaScript que permite automatizar testes funcionais de forma headless através do PhantomJS e SlimerJS.
- A justificativa para usar a CasperJS é que os testes automatizados de qualidade são essenciais para entregas de sucesso e evitar bugs que possam custar dinheiro e credibilidade.
- A ferramenta CasperJS tem uma sintaxe para escrita de testes similar a outros frameworks, tornando sua curva de aprendizagem menor, e
O documento discute a importância do Git e do Github para iniciantes na área de TI, apresentando os primeiros passos para utilizar essas ferramentas de controle de versão e colaboração. Explica o que é controle de versão e como ele pode ser usado para gerenciar trabalhos acadêmicos, arquivos pessoais e exercícios. Também destaca a importância do Github no mercado de trabalho.
Construindo bons relacionamentos entre desenvolvedores e testadoresGabriel Oliveira
1) O documento discute como construir bons relacionamentos entre desenvolvedores e testadores, propondo seis pontos principais: trabalho em equipe, comunicação, adaptação à mudança, qualidade como responsabilidade de todos, cuidado ao relatar erros e não se apegar a erros.
2) É descrito o "desenvolvedor mediano" e o "tester mediano", que trabalham isolados e se culpam mutuamente, resultando em atrasos e bugs.
3) O "profissional super" é aquele que se comunica bem, entende o cliente,
Qualidade em projetos PHP - PHPSC Conf 2011Luís Cobucci
Na nossa vida é importante nos preocuparmos com nossa saúde, e DEVEMOS fazer o mesmo com a saúde dos nossos softwares.
Você verá aqui as principais ferramentas para medir qualidade e encontrar alguns tumores nos seus projetos!
Uma breve apresentação do método de desenvolvimento guiado ao teste (TDD). Mostrando a definição, diferenças, motivos para sua utilização e o por quê utiliza-lo.
O documento discute como lidar com equipes de desenvolvimento, enfatizando a importância da comunicação e do gerenciamento de projetos. Ele recomenda usar ferramentas como GitHub para versionamento de código, documentação e rastreamento de tarefas, e Slack para discussões do time, além de seguir um processo de desenvolvimento, por mais simples que seja.
Como eu aprendi que testar software é importante?Maurício Aniche
O documento discute a importância de testes de software, relatando a experiência do autor. Ele aprendeu sobre testes ao longo de sua carreira na faculdade e em várias empresas, onde testes automatizados ajudaram a evitar problemas. O autor também fornece dicas valiosas sobre estudos e carreira para desenvolvedores de software.
3 noções básicas para automação de testes efetivos - Taíse Dias da Silva minastestingconference
Este documento apresenta três passos para a automação efetiva de testes: 1) Definir o valor do negócio através de exemplos em linguagem natural e feedback do cliente; 2) Automatizar os testes usando Selenium WebDriver e padrões como Page Object; 3) Refatorar os testes para evitar duplicação de esforços e manter baixo custo de manutenção.
O documento descreve os conceitos e benefícios do Desenvolvimento Guiado por Testes (TDD), incluindo suas regras fundamentais, ciclo de desenvolvimento, tipos de testes, e consequências como código mais testável e integração contínua.
O documento discute as vantagens e desafios da prática de Test-Driven Development (TDD). A prática de TDD pode melhorar a qualidade do código e do projeto de classes, mas não garante esses resultados automaticamente. Os desenvolvedores precisam estar atentos aos feedbacks dos testes para refatorar o código continuamente e melhorar o projeto.
Cristiano Raffi Cunha, um desenvolvedor full stack de 21 anos, apresenta sobre a importância da cultura de testes. Ele discute os tipos de testes, como testes unitários, de integração e end-to-end, e por que testar é importante para reduzir bugs e custos de manutenção. Ele também aborda desafios como manter a qualidade do código e como incorporar testes em projetos existentes.
Minas Testing Conference 2015 - Visual Regression Testing em ambientes na nuvemStefan Teixeira
O documento discute testes de regressão visual em ambientes na nuvem. Ele introduz o autor e suas credenciais, define testes de regressão visual e suas motivações, apresenta ferramentas como Kobold, e discute como testar na nuvem usando serviços como Sauce Labs e BrowserStack para executar testes em múltiplos navegadores e sistemas operacionais sem a necessidade de infraestrutura local. O documento também inclui um hands-on mostrando como configurar e executar testes de regressão visual usando essas ferramentas.
O documento descreve conceitos e benefícios do TDD (Test Driven Development) e do framework JUnit. O TDD é um estilo de desenvolvimento orientado a testes que guia o projeto. JUnit facilita testes unitários em Java verificando resultados de métodos. Ele possui tags como @Test, @Before e @After para definir métodos de teste.
O documento discute os benefícios do TDD (Test-Driven Development), incluindo aumentar a confiabilidade do código através da escrita de testes antes do código, contribuir para o aprimoramento do design do código, e aumentar a expectativa de vida do programador. As ferramentas comumente usadas incluem JUnit para testes e Mockito para simular objetos.
O documento descreve conceitos e benefícios do TDD (Test Driven Development) e do framework JUnit. O TDD é um estilo de desenvolvimento orientado a testes que guia o projeto. JUnit facilita testes unitários em Java verificando resultados esperados. Ele possui tags como @Test, @Before e @After para definir métodos de teste.
In tests we trust: começando com TDD, mocks e maisAna Paula Gomes
O documento discute os benefícios do Test Driven Development (TDD) em 3 frases:
Escrever testes unitários primeiro ajuda a moldar o design da aplicação e aumentar a qualidade e confiabilidade do código. Mockar dependências externas durante os testes torna os casos de teste independentes e mais rápidos. Começar com TDD requer prática, mas leva a um código mais fácil de manter e expandir no futuro.
Como Escrever Módulos Para o Kernel - Fábio Olivé LeiteTchelinux
O documento discute como escrever módulos para o kernel Linux, explicando que embora o kernel ainda seja monolítico, partes não essenciais podem ser carregadas sob demanda. Ele também aborda os perigos de adicionar ou remover código de um kernel em execução e como a ligação dinâmica lida com a comunicação entre módulos e o kernel. Por fim, discute práticas como Makefile, includes e parâmetros para compilação e como carregar e descarregar módulos.
Testes Exploratórios não são sinônimo de bagunça! (TDC 2016 POA)Igor Abade
Para muita gente teste exploratório é sinônimo de algo sem processo nem organização – apenas um pretexto para sair navegando pela aplicação e tentar achar algum erro. Nada mais longe da verdade! Venha ver nesta palestra como um simples plugin no Chrome pode ajudar a organizar seu processo de testes exploratórios, ajudando na coleta e registro de evidências.
Proposta: Métricas e Heurísticas para Detecção de Problemas em Aplicações WebMaurício Aniche
Proposta de pesquisa apresentada no encontro do NAPSoL em São Carlos, 2014: Proposta: Métricas e Heurísticas para Detecção de Problemas em Aplicações Web
Produtividade com Spring Roo no Google App EngineDr. Spock
Apresentação realizada no dia 07/Nov/2010 no evento The Developers Conference (TDC2010) na trilha Stadium Domingo (10:00 às 10:50) promovido pela Globalcode e VOffice em Florianópolis/SC/Brasil.
- O documento apresenta a ferramenta CasperJS, um framework para testes baseado em JavaScript que permite automatizar testes funcionais de forma headless através do PhantomJS e SlimerJS.
- A justificativa para usar a CasperJS é que os testes automatizados de qualidade são essenciais para entregas de sucesso e evitar bugs que possam custar dinheiro e credibilidade.
- A ferramenta CasperJS tem uma sintaxe para escrita de testes similar a outros frameworks, tornando sua curva de aprendizagem menor, e
O documento discute a importância do Git e do Github para iniciantes na área de TI, apresentando os primeiros passos para utilizar essas ferramentas de controle de versão e colaboração. Explica o que é controle de versão e como ele pode ser usado para gerenciar trabalhos acadêmicos, arquivos pessoais e exercícios. Também destaca a importância do Github no mercado de trabalho.
Construindo bons relacionamentos entre desenvolvedores e testadoresGabriel Oliveira
1) O documento discute como construir bons relacionamentos entre desenvolvedores e testadores, propondo seis pontos principais: trabalho em equipe, comunicação, adaptação à mudança, qualidade como responsabilidade de todos, cuidado ao relatar erros e não se apegar a erros.
2) É descrito o "desenvolvedor mediano" e o "tester mediano", que trabalham isolados e se culpam mutuamente, resultando em atrasos e bugs.
3) O "profissional super" é aquele que se comunica bem, entende o cliente,
Qualidade em projetos PHP - PHPSC Conf 2011Luís Cobucci
Na nossa vida é importante nos preocuparmos com nossa saúde, e DEVEMOS fazer o mesmo com a saúde dos nossos softwares.
Você verá aqui as principais ferramentas para medir qualidade e encontrar alguns tumores nos seus projetos!
Uma breve apresentação do método de desenvolvimento guiado ao teste (TDD). Mostrando a definição, diferenças, motivos para sua utilização e o por quê utiliza-lo.
O documento discute como lidar com equipes de desenvolvimento, enfatizando a importância da comunicação e do gerenciamento de projetos. Ele recomenda usar ferramentas como GitHub para versionamento de código, documentação e rastreamento de tarefas, e Slack para discussões do time, além de seguir um processo de desenvolvimento, por mais simples que seja.
Protractor - Testando aplicações AngularJS end to endDaniel Amorim
O documento apresenta o framework Protractor, que é usado para testes end-to-end em aplicações AngularJS. Ele discute o que é Protractor, por que usá-lo, como instalá-lo e configurá-lo, e rodar um primeiro teste. Também menciona recursos da comunidade Protractor.
Verdades e mitos sobre testes que eu gostariaLivia Gabos
O documento discute verdades e mitos sobre testes de software. Ele aborda três mitos comuns: que testes não são importantes, que só acontecem no final do processo de desenvolvimento e que são responsabilidade apenas do time de teste. O documento defende a importância dos testes e a necessidade de envolvimento de toda a equipe desde o início.
O documento apresenta os conceitos e benefícios dos testes automatizados de software utilizando a técnica TDD (Test-Driven Development). Apresenta os tipos de testes como unidade, integração e aceitação e explica o ciclo básico do TDD: escrever primeiro o teste (vermelho), depois o código (verde) e refatorar (amarelo). O objetivo da abordagem TDD é escrever todo o código após a automação dos testes para garantir sua qualidade e prevenção de regressões.
O documento discute a integração de testes end-to-end com Protractor no processo de integração contínua. Ele explica o que é integração contínua e como os testes e2e com Protractor se encaixam nesse processo. Também lista ferramentas como Jenkins e SemaphoreCI que podem ser usadas para executar testes Protractor de forma automatizada como parte da integração contínua.
Este documento apresenta uma introdução ao Protractor, um framework para automação de testes de aplicações AngularJS. Ele discute o que é o Protractor e para que ele serve, requisitos básicos, configurações iniciais, criação de primeiros testes e recursos adicionais como novidades na versão 3.0.0, pacotes Node úteis e padrões como Page Objects.
Primeiros passos com protractor - Walmyr Limagutssc
Este documento apresenta uma introdução ao Protractor, um framework para automação de testes de aplicações AngularJS. Ele discute o que é o Protractor e para que ele serve, requisitos básicos, configurações iniciais, criação de primeiros testes e recursos adicionais como novidades na versão 3.0.0, pacotes Node úteis, testes visuais e padrões de projeto como Page Objects.
Este documento apresenta uma aula sobre a linguagem de programação Python ministrada pelo professor Marcelo Santos. O professor possui formação acadêmica em sistemas de informação e é especialista em desenvolvimento web e móvel. Na aula, ele introduz Python, mostra como instalá-la no computador e explica conceitos básicos como variáveis, tipos de dados, operadores e entrada de dados.
Introdução a Testes de Software - Unidade IJoão Lourenço
1) O documento apresenta um curso sobre testes automatizados de software, incluindo objetivos, metodologia, conteúdo e conceitos básicos de teste de software.
2) Serão abordados testes unitários, testes de integração, testes funcionais e testes de carga, além de técnicas como TestNG e Mockito.
3) O curso visa demonstrar tecnologias e boas práticas para a construção de testes automatizados, facilitando o desenvolvimento e melhoria dos processos de teste.
Testando sua aplicação asp.net mvc de forma automatizada de ponta a pontatdc-globalcode
Nessa palestra mostrarei como criar uma estrutura de testes automatizados para a sua aplicação ASP.NET MVC cobrindo os principais aspectos do seu sistema.
O documento discute testes automatizados de software usando a técnica de Test Driven Development (TDD). Apresenta os principais tipos de testes como unidade, integração e aceitação. Explica o ciclo TDD de escrever testes primeiro para codificar (vermelho-verde-amarelo) e como isso ajuda no design do sistema.
O documento discute o desenvolvimento de um aplicativo móvel para avaliar a felicidade de funcionários em suas empresas. Começa com a ideia original do aplicativo e como ele evoluiu através de vários sprints usando métodos ágeis como Scrum, com mudanças significativas no produto final. Também discute lições aprendidas sobre por que projetos falham e a importância de sair do escritório para validar ideias com clientes.
O documento apresenta formas de iniciar automação de testes, discutindo a necessidade de desprender desenvolvedores de testes repetíveis, as ferramentas disponíveis como Selenium e os tipos de cenários de teste. Também fornece dicas de onde aprender mais sobre o tópico, incluindo grupos, blogs, sites e cursos.
O documento discute os desafios e atividades relacionadas ao teste de software. Os principais desafios incluem: (1) a impossibilidade de testar todas as entradas devido ao número astronômico de casos de teste possíveis; (2) garantir que correções e novas funcionalidades não introduzam novos bugs através de testes de regressão; (3) envolver a equipe de desenvolvimento no processo de teste desde as primeiras fases do projeto. As atividades realizadas em 2014 incluem automação de testes e manutenção de casos de teste
PHPHEDERAL - Desenvolvimento Orientado a Testes com PHPMarcelo Rodrigues
Este documento apresenta uma introdução ao desenvolvimento orientado a testes (TDD) com PHP. Explica o que é TDD, quais são suas vantagens, os tipos de testes, ferramentas de teste e como iniciar o processo de TDD, incluindo a criação de testes unitários com PHPUnit.
O documento discute testes automatizados em Django usando UnitTest e Object Factory. Apresenta problemas com fixtures e propõe o Model Mommy como alternativa para popular bancos de dados de teste de forma dinâmica e extensível.
O documento apresenta os principais pontos sobre arquitetura de software testável. Discute o que é arquitetura testável, tipos de testes, TDD (desenvolvimento guiado por testes), a pirâmide de automação de testes e porque devemos adotar essas práticas.
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
A linguagem C# aproveita conceitos de muitas outras linguagens,
mas especialmente de C++ e Java. Sua sintaxe é relativamente fácil, o que
diminui o tempo de aprendizado. Todos os programas desenvolvidos devem
ser compilados, gerando um arquivo com a extensão DLL ou EXE. Isso torna a
execução dos programas mais rápida se comparados com as linguagens de
script (VBScript , JavaScript) que atualmente utilizamos na internet
2. Quem sou eu e o que faço?
★ Bacharelando em Sistemas de Informação
na Universidade de Caxias do Sul
★ Membro do Diretório Acadêmico
★ Desenvolvedor Web com Python e Django a
3+ anos
★ Colaborador na Pull4Up
★ Pythonista
7. Mas o que são testes?
★ O teste é um processo realizado pelo testador de
software, que permeia outros processos da
engenharia de software, e que envolve ações que
vão do levantamento de requisitos até a
execução do teste propriamente dito.
11. Como conheci o Splinter?
★ Projeto Emites
★ Precisava testar a interface de emissão de
notas
★ Muitas validações JS
★ Campos “escondidos”
★ Muitas requisições Ajax
★ entre N outros motivos...
12. Splinter
★ Splinter é uma ferramenta open source para
aplicações web utilizando testes Python. Ele
permite que você automatizar ações do
navegador, tais como visitar URLs e
interagindo com seus itens.
13. ★ Fácil de integrar com os teste do
python/django
★ Fácil de escrever
★ Fácil de manter - eu acho :)
★ Suporte a JS
★ ...
Porque o Splinter?