terça-feira, 14 de maio de 2013


SoapUI. O canivete suíço do teste.

SoapUI é uma solução de teste gratuito e open source multi-plataforma funcional. Com uma interface gráfica e recursos de classe empresarial fácil de usar, SoapUI permite que você facilmente  crie e execute testes automatizado funcional, regressão, conformidade e testes de carga. Em um único ambiente de teste, SoapUI oferece cobertura de teste completa e suporta todos os protocolos e tecnologias mais utilizadas. Simplesmente não existem limites para o que você pode fazer com seus testes.


easy-start

Fácil desde o início

Mesmo se você nunca tenha utilizado o SoapUI antes, você vai achar que criar até mesmo os cenários de teste mais avançadas é muito simples. Sua jornada de testes em SoapUI começa com um projeto. E a criação de um é tão fácil como um clique direito. Se você quiser, você pode adicionar diretamente um WSDL, criar solicitações de exemplo para todas as operações do serviço, e até mesmo criar um mock do WSDL importado - tudo ao mesmo tempo. Você pode até adicionar um serviço REST - apenas assinale a caixa de seleção e SoapUI cuida do resto para você. Depois de ter criado um projeto, criar instantaneamente e executar qualquer número de Testes Funcionais / Carga, MockServices e muito mais. Graças ao Navigator - a estrutura em árvore à esquerda da janela principal - o seu progresso e organização de teste estão sempre em vista. E a partir da janela Project, você pode gerenciar e controlar tudo relacionado ao seu projeto.
automação

All-in-one de testes automatizados

SoapUI é uma solução de teste completo e automatizado. Em um único ambiente de teste, fornece tecnologias líderes de mercado e suporte normas, a partir de SOAP e REST serviços baseados em web, para JMS empresariais camadas de mensagens, bancos de dados, aplicações ricas de Internet, e muito mais. E em SoapUI, você faz tudo isso a partir de sua interface de usuário intuitiva e poderosa. Para um maior grau de automação, SoapUI também oferece um conjunto de ferramentas de linha de comando que permitem que você executar os testes e MockServices Funcionais / carga a partir de praticamente qualquer tarefa scheduler, ou como parte integrante de seu processo de construção. Para aqueles que querem ir a milha extra em automação, SoapUI sempre lhe dá a opção de scripting. Essa é a automação no seu melhor!
testes em qualquer um

Teste para todos

SoapUI é projetado para trazer uma experiência simplificada e completa de testes para usuários técnicos e não técnicos. A interface fácil de usar gráfica torna mais simples para trabalhar com SOAP e serviços da Web baseados em REST. Por exemplo, para criar um teste de carga, clique apenas para a direita em um Teste Funcional e executá-lo como um teste de carga. Ou usar arrastar e soltar para criar qualquer cenário de teste - simples ou complexos. E para o usuário mais experiente, SoapUI Pro fornece assistentes transferência de propriedade que pode transferir automaticamente as propriedades de conteúdo selecionado, tornando a criação de TestCases complexas ou fluxos de mensagens fáceis.Para máximo controle e flexibilidade, SoapUI Pro também oferece out-of-the-box suporte para scripting avançado que lhe permite fazer praticamente qualquer coisa com seus testes. Então, se você é um testador, desenvolvedor, analista de negócios, ou gerente, SoapUI tem algo para todos.
simulação

Simulação serviço simplificado

MockServices em SoapUI lhe dá a habilidade única para imitar os serviços da Web e criar / executar testes funcionais e de carga contra eles antes mesmo de serem implementadas. Melhor ainda, o que lhe permite eliminar a despesa de construir réplicas em escala de seus sistemas de produção, bem como fornecer aos seus clientes o acesso aos seus serviços sem ter que esperar por eles para ser completa ou disponível. Em SoapUI, você pode criar simulações padrões compatíveis com praticamente nenhum esforço da sua parte - basta selecionar um WSDL a partir do seu local desejado e SoapUI gera automaticamente o MockService e seus métodos para você. Em seguida, preenchê-lo com respostas pré-definidas para solicitações, personalizar as respostas de qualquer jeito que você gosta, e definir diferentes respostas para uma determinada operação. Use os recursos de script avançados para simular qualquer tipo de comportamento desejado - respostas fixas, erros aleatórios, os resultados dinâmicos, e muito mais.
avançada de testes

Funcionalidade avançada

SoapUI fornece todas as ferramentas que você precisa para testar e aperfeiçoar o seu teste. A guia Visão Geral dá-lhe uma visão completa do seu projeto e todo o seu conteúdo. Com um clique, você pode adicionar qualquer número de declarações a um TestStep para validar as mensagens recebidas. Use a poderosa Monitor de HTTP para registrar, analisar e até mesmo modificar o tráfego cliente-servidor como isso acontece. E SoapUI Pro traz ainda mais recursos profissionais e avançados que mantê-lo à frente de outras ferramentas de teste. Facilmente criar e executar testes baseados em dados. O DataSource TestStep lê os dados de teste a partir de fontes externas - Excel, XML, JDBC, arquivos e muito mais - em propriedades SoapUI padrão. Projetos compostas tornar mais fácil para trabalhar em projetos em equipes. E se as estruturas de dados mudam com o tempo, SoapUI Pro atravessa todos os seus testes e atualizações-los automaticamente.
relatando

Relatórios abrangentes

SoapUI Pro dá-lhe três ferramentas extremamente poderosas e flexíveis: para impressão de relatórios, exportação de dados, e relatórios HTML. Com um clique, você pode gerar relatórios para seus testes de dentro da interface do usuário no projeto, TestSuite, TestCase, ou nível LoadTest. Tão fácil, imprimir ou exportá-los em qualquer formato padrão, incluindo PDF, HTML, Word e Excel, e personalizá-los de qualquer jeito que você gosta. A guia Relatórios na janela do projeto dá-lhe acesso imediato a todos os seus relatórios, sub-relatórios, modelos e até mesmo os seus parâmetros. Data Export permite exportar os mesmos dados subjacentes utilizados para relatórios de impressão para arquivos XML ou CSV para qualquer tipo de pós-processamento. E você ainda pode obter uma visão geral de seus resultados de teste em formato HTML. Nós mencionamos que você pode fazer tudo isso de dentro da ferramenta, bem como a linha de comando?
quadro

Seu quadro, do seu jeito

SoapUI não é apenas uma grande aplicação de teste, mas uma estrutura de teste grande extensível. Graças ao seu design modular e API de extensão poderoso, SoapUI permite que qualquer pessoa para desenvolver facilmente seus recursos favoritos, como plug-ins. Ou você pode simplesmente pegar um dos plugins de terceiros disponíveis - Agiletestware, SOA DataPro, TestMaker e pegamento. Eles são todos concebidos para torná-lo mais produtivo e ajudá-lo a fazer ainda mais com SoapUI.SoapUI também se integra com IDEs e outras ferramentas de sua escolha para tornar-se uma parte indispensável do seu processo de desenvolvimento. Existem plugins disponíveis para IntelliJ IDEA, Maven, Eclipse, NetBeans, e JBoss.
edições

Vem em duas edições deslumbrantes

A melhor coisa sobre SoapUI é que é um aplicativo de código livre e aberto, ou seja, qualquer pessoa pode ter acesso ao código-fonte completo. Também significa que você pode modificar ou personalizá-lo como quiser. SmartBear faz também uma versão Pro do SoapUI. Feito sob medida para as necessidades das empresas, SoapUI Pro inclui tudo o que está em SoapUI, e acrescenta uma série de melhorias de produtividade e economia de tempo. E isso não é tudo. Ele também vem com suporte premiado da equipe SmartBear - disponível por meio de um fórum SoapUI Pro-exclusiva e e-mail - e as atualizações de software livre. Porque SoapUI é baseado em Java, funciona na maioria dos sistemas operacionais, incluindo Windows, Linux e Mac. E você pode encontrar tudo o que você precisa saber sobre SoapUI em soapUI.org . É tudo apenas um clique de distância!

terça-feira, 7 de maio de 2013

Métodos para previnir SQL Injection


Um dia desses, estava prestando suporte a um sistema web crítico de uma grande companhia. Para minha surpresa, descobri naquela ocasião, que a aplicação possuía uma série de vulnerabilidades bem conhecidas, sendo uma delas, brechas imensas para o famoso SQL Injection
SQL Injection é um ataque no qual código malicioso é passado para um servidor SQL, que o executa. O ataque pode resultar em acesso não autorizado a dados confidenciais, ou destruição de dados críticos.
Antes de tentar os métodos a seguir, perceba que isso só deve ser uma preocupação para desenvolvedores PHP e afins. Se você estiver usando um CMS ou sistemas de lojas virtuais (por exemplo, WordPress, Joomla, Drupal, OsCommerce), então tudo o que precisa fazer é atualizá-los para a versão mais recente estável disponível.

Métodos para previnir SQL Injection
Escapando
Uma forma de evitar as injeções é evitar caracteres perigosos (ou seja, barra invertida, apóstrofo e ponto e vírgula). No PHP, é típico utilizar a técnica de “escaping” na entrada usando a funçãomysql_real_escape_string antes de enviar a consulta SQL.

Exemplo:
$Uname = mysql_real_escape_string($Uname);
$Pword = mysql_real_escape_string($Pword);
$query = “SELECT * FROM Users where UserName=’$Uname’ and Password=’$Pword’”;
mysql_query($query);
Declarações parametrizadas

Uma consulta parametrizada usa espaços reservados para a entrada, e os valores dos parâmetros são fornecidos em tempo de execução.
$params = array($Uname, $Pword);
$sql = ‘INSERT INTO Users (UserName, Password) VALUES (?, ?)’;
$query = sqlsrv_query($connection, $sql, $params);
Avançado: No PHP versão 5 e superior, existem várias opções para a utilização de declarações com parâmetros, a camada de banco de dados DOP é uma delas. Existem também métodos específicos de fornecedores: por exemplo, o MySQL 4.1 + usado com a extensão mysqli.