51 |
Avaliação de conjuntos de testes funcionais no contexto de programas orientados a objetos e programas orientados a aspectosLevin, Thiago Gaspar 08 January 2015 (has links)
Made available in DSpace on 2016-06-02T19:06:21Z (GMT). No. of bitstreams: 1
6590.pdf: 1739821 bytes, checksum: 376967fb01c5f5d38d60ce523ffa6021 (MD5)
Previous issue date: 2015-01-08 / Universidade Federal de Sao Carlos / Context: Software testing play an important role to reveal faults and increase the quality of developed products. Structural-based testing has shown to be important in the evaluation of both the quality of the software and the quality of the test set itself. Objective: This work reports on the results of an experimental study that aimed to evaluate the quality of test sets which were originally built for a given programming paradigm, when such test sets are adapted and applied to a different paradigm. Besides this, this we also measure the effort to migrate test sets from one paradigm to another. In this work, we considered the object-oriented (OO) and aspect-oriented (AO) paradigms. Method: We evaluated the quality of test sets by analysing the code coverage yielded by test sets within both paradigms; to evaluate the effort required to adapt test sets across paradigms, we performed comparisons of code-related metrics applied to test code. In total, we analysed 12 small-sized applications and one medium-sized application. Results: The achieved coverage for distinct groups of applications did not show expressive differences across the paradigms, particularly for small-sized applications. Only for the medium-sized system tests yielded higher code coverage in the OO implementation. In respect with the test set adaptation effort, migrating OO tests to the AO paradigm required more code additions, whilst migrating AO tests to the OO implementations required more code changes and removals. Conclusion: With the achieved results, we cannot state that there is a difference in the quality of the test sets, in terms of structural coverage, when both paradigms are taken into account. Only for a single application the coverage difference was evident. In regard to the process of migrating tests from one paradigms to another, OO tests have shown to be more concise (in terms of lines of code) and more reusable than OA tests. / Contexto: O teste de software é uma atividade importante para revelar defeitos e aumentar a qualidade nos produtos desenvolvidos. Testes estruturais tem se mostrados bastante importantes para a avaliação da qualidade do software ou mesmo do conjunto de testes utilizado para testá-lo. Objetivo: Este trabalho apresenta um estudo experimental para avaliar a qualidade de conjuntos de testes criados para um paradigma em específico, quando adaptado e aplicado em outro paradigma, avaliando também o esforço para adaptar conjuntos de testes quando ocorre a migração de um paradigma para outro. Os paradigmas considerados são o paradigma orientado a objetos (OO) e o paradigma orientado a aspectos (OA). Metodo: Para a avaliação da qualidade dos conjuntos de testes adaptados foi analisada a cobertura de código atingida em ambos os paradigmas; para a avaliação do esforço na adaptação dos conjuntos de testes, métricas de código foram comparadas em relação a implementações dos testes em cada paradigma considerado. No total, 12 aplicações de pequeno porte e uma aplicação de médio porte foram avaliadas. Resultados: A cobertura de código atingida para diferentes grupos de aplicações não resultou em diferenças expressivas entre os paradigmas, em particular para as aplicações de pequeno porte. Somente no sistema de médio porte o codigo da implementação OO foi mais coberto do que na implementação OA. Em relação ao esforço na adaptação dos conjuntos de testes, os testes OO migrados para as implementações OA necessitaram de mais incrementos de código, enquanto os conjuntos de testes OA migrados para o paradigma OO necessitaram de mais decrementos e modificações. Conclusão: Com os resultados alcançados não e possível afirmar que um conjunto de testes adaptado de um determinado paradigma possui maior qualidade em relação a outro paradigma, com exceção de uma aplicação, em que o conjunto de testes OO se apresentou com qualidade superior ao conjunto de testes OA. Em relação a migração de conjuntos de testes entre paradigmas, os testes OO apresentaram-se mais enxutos (em termos de linhas de código) e mais reutilizaveis do que os testes OA.
|
52 |
Geração automática de casos de testes para máquinas de estados finitos / Automatic test case generation for finite state machinesPedrosa, Lehilton Lelis Chaves, 1985- 09 January 2010 (has links)
Orientador: Arnaldo Vieira Moura / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-16T21:26:35Z (GMT). No. of bitstreams: 1
Pedrosa_LehiltonLelisChaves_M.pdf: 884292 bytes, checksum: e39efddad6809b28790b661469a5cfd2 (MD5)
Previous issue date: 2010 / Resumo: Métodos formais são amplamente utilizados para modelar especificações e gerar casos de testes, imprescindíveis para validação de sistemas críticos. As Máquinas de Estados Finitos (MEFs) compõem um dos formalismos adotados, com várias aplicações em testes de sistemas aéreos e espaciais, além de sistemas médicos, entre vários outros. O objetivo de um método de geração automática de casos de testes é obter um conjunto de casos de testes, com o qual é possível verificar se uma dada implementação contém falhas. Um problema importante em métodos de geração de casos de teste com cobertura completa de falhas é o tamanho dos conjuntos de testes, que normalmente é exponencial no número de estados da MEF que está sendo testada. Para minimizar esse problema, diversas abordagens são adotadas, envolvendo melhorias nos métodos existentes, restrições do modelo de falhas e o uso de novas estratégias de teste. Esta dissertação estuda métodos automáticos para geração de casos de testes com cobertura completa de falhas e propõe dois novos métodos, que permitem reduzir o tamanho dos conjuntos de testes gerados. Primeiro, combinamos ideias do método Wp e do método G, visando usufruir as vantagens de ambos e obtendo um novo método, denominado Gp. Em seguida, descrevemos um novo modelo de falhas para sistemas compostos de vários subsistemas, possivelmente com um número alto de estados. Formalizamos tais sistemas, introduzindo o conceito de MEFs combinadas, e apresentamos um novo método de testes, denominado método C. Além disso, propomos uma abordagem de testes incremental, baseada no método C, que torna possível o teste de MEFs com um número arbitrário de estados. Estabelecemos comparações com abordagens tradicionais e mostramos que o uso da estratégia incremental pode gerar conjuntos de testes exponencialmente mais eficientes / Mestrado / Teoria da Computação / Mestre em Ciência da Computação
|
53 |
Estudo de algoritmo evolutivo com codificação real na geração de dados de teste estrutural e implementação de protótipo de ferramenta de apoio / Study of real-coded evolutionary algorithm to test data generation and implementation of prototype toolBuzzo, André Vinicius 18 August 2018 (has links)
Orientador: Eliane Martins / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-18T01:12:41Z (GMT). No. of bitstreams: 1
Buzzo_AndreVinicius_M.pdf: 3473272 bytes, checksum: e3da091fcaa16f3245465636a77cfad0 (MD5)
Previous issue date: 2011 / Resumo: A geração automática de dados de teste pode ser abordada como um problema de otimização e algoritmos evolutivos se tornaram um foco de muita pesquisa nesta área. Recentemente um novo tipo de algoritmo evolutivo chamado GEO (GEO - Generalized Extremal Optimization) tem sido explorado em uma grande classe de problemas de otimização. Neste trabalho é apresentado o uso do algoritmo evolutivo GEO com codificação real - GEOreal - na geração de dados de teste. O desempenho deste algoritmo é comparado com diversos outros algoritmos e para melhor avaliar os resultados, duas funções objetivo - que mapeiam o problema de geração de dados em um problema de otimização - foram utilizadas. O algoritmo GEOreal combinado com a função objetivo Bueno e Jino obtiveram os melhores resultados nos problemas abordados. Um protótipo foi desenvolvido implementando todos os conceitos envolvidos neste trabalho e o seu desempenho foi comparado com outras ferramentas já disponíveis no mercado. Os resultados mostraram que este protótipo superou as ferramentas comparadas ao minimizar o tempo dispendido no esforço de gerar os dados de teste / Abstract: Automatic test data generation can be approached as an optimization problem and evolutionary algorithms have become a focus of much research in this area. Recently a new type of evolutionary algorithm called GEO (GEO - Generalized Extremal Optimization) has been explored in a large class of optimization problems. This paper presents the use of evolutionary algorithm with real coding GEO - GEOreal - in test data generation. The performance of this algorithm is compared with several other algorithms and to better compare the results two objective functions - that map the problem of generating data in an optimization problem - were used. The algorithm GEOreal combined with the function Bueno and Jino had the best results in the problems addressed. A prototype was developed implementing all the concepts involved in this work and its performance was compared with other tools already available. The results showed that this prototype was better than the compared tools when minimizing the time spent in the effort to test data generation / Mestrado / Ciência da Computação / Mestre em Ciência da Computação
|
54 |
Geração de conjuntos de teste para sistemas reativos, de tempo-real, e com transformações de contexto / Generating test suites for reactive and real-time systems, with context transformationsBonifácio, Adilson Luiz 15 August 2018 (has links)
Orientador: Arnaldo Vieira Moura / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-15T05:28:23Z (GMT). No. of bitstreams: 1
Bonifacio_AdilsonLuiz_D.pdf: 1228504 bytes, checksum: 62db4b0286cfd1c735336e429629b3de (MD5)
Previous issue date: 2009 / Resumo: O objetivo deste trabalho é prover métodos eficientes de geração de casos de teste para sistemas reativos críticos. Sistemas dessa natureza compreendem sistemas de tempo real e com transformações de contexto. Uma das técnicas mais usadas na geração de conjuntos de teste tem sido a abordagem baseada em modelos formais. Neste caso, os formalismos fornecem uma base sólida para que a atividade de teste seja efetuada de forma precisa e segura. Este trabalho propõe a construção de modelos formais, métodos e técnicas, bem como estratégias de teste, para dar suporte ao processo de geração automática de conjuntos de teste, aplicáveis a sistemas complexos. Porém, o processo de geração de testes baseado em modelos se torna, muitas vezes, impraticável em aplicações reais, devido ao problema da explosão combinatória de estados. Daí a necessidade de se encontrar modelos adequados que capturem o comportamento desejado dos sistemas a serem testados, bem como a importância de se construir métodos que contornem o problema da explosão do espaço de estado, de maneira razoável, permitindo que a geração de testes seja um processo aplicável a sistemas complexos. Entre os modelos abordados neste trabalho estão: (i) as tradicionais Máquinas de Estados Finito (FSM); (ii) uma extensão das FSMusando variáveis de contexto, as Máquinas de Estados Finito Estendida (EFSM); (iii) a extensão temporizada de EFSM (TEFSM), que possui, não apenas variáveis de contexto, mas também variáveis relógio; (iv) os modelos temporizados com entradas e saídas independentes, conhecidos como Timed I/O Automata (TIOA); e (v) uma extensão proposta para TIOA, denominado Timed I/O Context Automata (TIOCA), para compreender a evolução contínua de tempo e também as transformações de contexto. Com relação a geração de testes baseada em tais modelos, foi proposto, primeiramente, uma técnica de derivação de sequências de confirmação para TEFSM, usando model-checking. Em seguida, foi proposta uma generalização para um método de geração de conjuntos completos de teste usando FSM. Também foi desenvolvido um novo método de discretização do modelo TIOA, provendo a base necessária para a geração de casos de teste usando os conceitos de proposta de teste e produto síncrono. Por fim, foi desenvolvida uma extensão do método de discretização para TIOA também proposto neste trabalho, aplicado ao modelo TIOCA, permitindo a geração de testes em sistemas com evolução contínua de tempo e fluxo de dados, usando
os conceitos de proposta de teste e produto de TIOCA / Abstract: This work aims to provide efficient test case generation methods for reactive and critical systems. In general, reactive and critical systems are real-time systems with context transformations. One of the most promising techniques for generating test suites is model-based testing. The formalisms supply the basis to perform a precise and dependable testing activity. In this scenery, our work proposes a construction of formal models, methods and techniques, as well as testing strategies, to support the process of automatically generating test suites for complex systems. However, the test generation process using formal models is usually infeasible in real applications, due to the state space explosion. Therefore, we need to find out suitable models to capture the system behaviors, and also to construct methods that can overcome the explosion problem, in a reasonable way, allowing the generation of test suites for complex systems. In this work we treat the following formal models: the conventional FSM; an extension of FSM using context variables (EFSM); the proposed extension of EFSM (TEFSM) to capture context variables and also clock variables; timed models, with disassociated input and output actions, called TIOA; and the proposed extension for TIOA, so-called TIOCA, to capture continuous time evolution and context transformations. In a first step of this work we proposed a technique to derive confirming sequences for TEFSM, using model-checking. Next, a classical method to generate complete test suites was generalized for FSM.We also proposed a new discretizationmethod for TIOA models, allowing the test case generation using test purpose and the synchronous product. Lastly, we extended the discretization method for TIOA to obtain more compact grid automata for TIOCA models, allowing the test case generation for systems with continuous time evolution and data flow transformations, using the notion of test purpose and the product of TIOCA / Doutorado / Teoria da Computação e Teste de Sistemas / Doutor em Ciência da Computação
|
55 |
Método de modelagem e geração de testes para o ambiente de ensino à distância TelEduc / Modelling and test generation method for the e-learning web environment TelEducLetizio, Caroline Castello, 1987- 24 August 2018 (has links)
Orientador: Eliane Martins / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-24T16:35:59Z (GMT). No. of bitstreams: 1
Letizio_CarolineCastello_M.pdf: 1670478 bytes, checksum: c2f330cd004addd705aef75384effcd2 (MD5)
Previous issue date: 2013 / Resumo: Teste baseado em modelo é uma técnica na qual um sistema é modelado e geram-se testes a partir do modelo. Esta técnica apresenta como uma das maiores dificuldades a modelagem do sistema. Alguns dos empecilhos encontrados ao modelar são o que considerar do sistema e como representar essas considerações no modelo, incluindo em aplicações Web. Sendo assim, este trabalho propõe um método para auxiliar na modelagem de aplicações Web. Esta escolha é motivada pelo fato que esse tipo de sistema tem sido cada vez mais utilizado nos últimos anos e, com a sua evolução, sua complexidade tem aumentado consideravelmente, devido à dinamicidade e interatividade que esse tipo de aplicação oferece. A abordagem proposta é baseada em trabalhos correlatos, para se saber o que modelar da aplicação Web e como criar o modelo, descrevendo-se o passo-a-passo para se gerar os testes a partir dos modelos desenvolvidos e aplicá-los no sistema. A abordagem deste trabalho sugere tanto formas manuais como automáticas para os testes baseados em modelos. O método foi proposto para testar uma aplicação real: o ambiente de ensino à distância TelEduc. Os resultados, obtidos a partir da aplicação da proposta deste trabalho por um analista de teste e pela própria equipe do TelEduc, são analisados, a fim de validar a proposta e auxiliar no processo de desenvolvimento e aplicação dos testes de equipes de qualidade de software, principalmente, daquelas que não possuem nenhuma forma de organização de testes / Abstract: Model based testing is a technique in which the system is modeled and, from this model, tests can be generated. The major difficulty about this technique is to generate the model, since it is problematic to define what should be considered from the system and insert these characteristics into the model. This technique is also used in Web applications which presents the same challenges. Therefore, the present work proposes a method to assist in the modeling of Web applications. This sort of system has been increasingly used in recent years, where the system¿s complexity has considerably grown due to the dynamic and interactivity that this kind of application offers. The proposed method is based on related works in order to know what to model from the applications and how to create this model. The method contains the steps to generate tests cases from the created model, and how to execute them in the system. This work also suggests manual and automatic ways to execute the method. The proposal has been applied to test a real application: the e-learning Web environment TelEduc. The results obtained from the method¿s application by a test analyst and by the TelEduc team, are here analyzed to validate the method and to assist in the process development and tests execution by quality teams, especially those teams where there are no means of tests organization. / Mestrado / Ciência da Computação / Mestra em Ciência da Computação
|
56 |
Um framework de testes unitários para procedimentos de carga em ambientes de business intelligenceSantos, Igor Peterson Oliveira 30 August 2016 (has links)
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES / Business Intelligence (BI) relies on Data Warehouse (DW), a historical data repository designed to support the decision making process. Despite the potential benefits of a DW, data quality issues prevent users from realizing the benefits of a BI environment and Data Analytics. Problems related to data quality can arise in any stage of the ETL (Extract, Transform and Load) process, especially in the loading phase. This thesis presents an approach to automate the selection and execution of previously identified test cases for loading procedures in BI environments and Data Analytics based on DW. To verify and validate the approach, a unit test framework was developed. The overall goal is achieve data quality improvement. The specific aim is reduce test effort and, consequently, promote test activities in DW process. The experimental evaluation was performed by two controlled experiments in the industry. The first one was carried out to investigate the adequacy of the proposed method for DW procedures development. The Second one was carried out to investigate the adequacy of the proposed method against a generic framework for DW procedures development. Both results showed that our approach clearly reduces test effort and coding errors during the testing phase in decision support environments. / A qualidade de um produto de software está diretamente relacionada com os testes empregados durante o seu desenvolvimento. Embora os processos de testes para softwares aplicativos e sistemas transacionais já apresentem um alto grau de maturidade, estes devem ser investigados para os processos de testes em um ambiente de Business Intelligence (BI) e Data Analytics. As diferenças deste ambiente em relação aos demais tipos de sistemas fazem com que os processos e ferramentas de testes existentes precisem ser ajustados a uma nova realidade. Neste contexto, grande parte das aplicações de Business Intelligence (BI) efetivas depende de um Data Warehouse (DW), um repositório histórico de dados projetado para dar suporte a processos de tomada de decisão. São as cargas de dados para o DW que merecem atenção especial relativa aos testes, por englobar procedimentos críticos em relação à qualidade. Este trabalho propõe uma abordagem de testes, baseada em um framework de testes unitários, para procedimentos de carga em um ambiente de BI e Data Analytics. O framework proposto, com base em metadados sobre as rotinas de carga, realiza a execução automática de casos de testes, por meio da geração de estados iniciais e a análise dos estados finais, bem como seleciona os casos de testes a serem aplicados. O objetivo é melhorar a qualidade dos procedimentos de carga de dados e reduzir o tempo empregado no processo de testes. A avaliação experimental foi realizada através de dois experimentos controlados executados na indústria. O primeiro avaliou a utilização de casos de testes para as rotinas de carga, comparando a efetividade do framework com uma abordagem manual. O segundo experimento efetuou uma comparação com um framework genérico e similar do mercado. Os resultados indicaram que o framework pode contribuir para o aumento da produtividade e redução dos erros de codificação durante a fase de testes em ambientes de suporte à decisão.
|
57 |
Influência da revisão de atividades executadas para melhoria da acurácia na estimativa de software utilizando planning poker / Influence of the reviewing of executed activities to improve accuracy using planning pokerTissot, André Augusto 21 August 2015 (has links)
Introdução – A área de pesquisa de estimativa de esforço de software busca melhorar a acurácia das estimativas de projetos e atividades de software. Objetivo – Este trabalho descreve o desenvolvimento e uso de uma ferramenta web de coleta de dados gerados durante a execução da técnica de estimativa Planning Poker e a análise dos dados coletados para investigação do impacto da revisão de dados históricos de esforço. Método – Foram realizadas estimativas com e sem revisão, em experimentos com alunos de computação da Universidade Tecnológica Federal do Paraná, coletando os dados relacionados à tomada de decisão em uma ferramenta web. Após isso, foi analisado o impacto causado pelas revisões na acurácia da estimativa de esforço de software utilizando Planning Poker. Resultados Obtidos – Foi analisado o comportamento de 14 grupos de estimativas. Dentre esses times, 8 deles tiveram uma melhora na acurácia maior que 50% das estimativas analisadas. Em 3 deles, a soma das estimativas que tiveram melhora com as estimativas que permaneceram estáveis ultrapassou os 50%. Em apenas 3 deles, as estimativas tiveram redução de acurácia maior que 50%. Conclusões – A Revisão de Atividades Executadas, utilizando Planning Poker, melhorou a estimativa de esforço na maioria dos casos analisados, podendo ser um importante método para aprimorar o processo de desenvolvimento de software. / Abstract – Background – The software effort estimation research area aims to improve the accuracy of this estimation in software projects and activities. Aims – This study describes the development and usage of a web application tocollect data generated from the Planning Poker estimation process and the analysis of the collected data to investigate the impact of revising previous estimates when conducting similar estimates in a Planning Poker context. Method – Software activities were estimated by Universidade Tecnológica Federal do Paraná (UTFPR) computer students, using Planning Poker, with and without revising previous similar activities, storing data regarding the decision-making process. And the collected data was used to investigate the impact that revising similar executed activities have in the software effort estimates' accuracy.Obtained Results – The UTFPR computer students were divided into 14 groups. Eight of them showed accuracy increase in more than half of their estimates. Three of them had almost the same accuracy in more than half of their estimates. And only three of them had loss of accuracy in more than half of their estimates. Conclusion – Reviewing the similar executed software activities, when using Planning Poker, led to more accurate software estimates in most cases, and, because of that, can improve the software development process.
|
58 |
Influência da revisão de atividades executadas para melhoria da acurácia na estimativa de software utilizando planning poker / Influence of the reviewing of executed activities to improve accuracy using planning pokerTissot, André Augusto 21 August 2015 (has links)
Introdução – A área de pesquisa de estimativa de esforço de software busca melhorar a acurácia das estimativas de projetos e atividades de software. Objetivo – Este trabalho descreve o desenvolvimento e uso de uma ferramenta web de coleta de dados gerados durante a execução da técnica de estimativa Planning Poker e a análise dos dados coletados para investigação do impacto da revisão de dados históricos de esforço. Método – Foram realizadas estimativas com e sem revisão, em experimentos com alunos de computação da Universidade Tecnológica Federal do Paraná, coletando os dados relacionados à tomada de decisão em uma ferramenta web. Após isso, foi analisado o impacto causado pelas revisões na acurácia da estimativa de esforço de software utilizando Planning Poker. Resultados Obtidos – Foi analisado o comportamento de 14 grupos de estimativas. Dentre esses times, 8 deles tiveram uma melhora na acurácia maior que 50% das estimativas analisadas. Em 3 deles, a soma das estimativas que tiveram melhora com as estimativas que permaneceram estáveis ultrapassou os 50%. Em apenas 3 deles, as estimativas tiveram redução de acurácia maior que 50%. Conclusões – A Revisão de Atividades Executadas, utilizando Planning Poker, melhorou a estimativa de esforço na maioria dos casos analisados, podendo ser um importante método para aprimorar o processo de desenvolvimento de software. / Abstract – Background – The software effort estimation research area aims to improve the accuracy of this estimation in software projects and activities. Aims – This study describes the development and usage of a web application tocollect data generated from the Planning Poker estimation process and the analysis of the collected data to investigate the impact of revising previous estimates when conducting similar estimates in a Planning Poker context. Method – Software activities were estimated by Universidade Tecnológica Federal do Paraná (UTFPR) computer students, using Planning Poker, with and without revising previous similar activities, storing data regarding the decision-making process. And the collected data was used to investigate the impact that revising similar executed activities have in the software effort estimates' accuracy.Obtained Results – The UTFPR computer students were divided into 14 groups. Eight of them showed accuracy increase in more than half of their estimates. Three of them had almost the same accuracy in more than half of their estimates. And only three of them had loss of accuracy in more than half of their estimates. Conclusion – Reviewing the similar executed software activities, when using Planning Poker, led to more accurate software estimates in most cases, and, because of that, can improve the software development process.
|
59 |
Um framework de testes unitários para procedimentos de carga em ambientes de business intelligenceSantos, Igor Peterson Oliveira 30 August 2016 (has links)
Coordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPES / Business Intelligence (BI) relies on Data Warehouse (DW), a historical data repository designed to support the decision making process. Despite the potential benefits of a DW, data quality issues prevent users from realizing the benefits of a BI environment and Data Analytics. Problems related to data quality can arise in any stage of the ETL (Extract, Transform and Load) process, especially in the loading phase. This thesis presents an approach to automate the selection and execution of previously identified test cases for loading procedures in BI environments and Data Analytics based on DW. To verify and validate the approach, a unit test framework was developed. The overall goal is achieve data quality improvement. The specific aim is reduce test effort and, consequently, promote test activities in DW process. The experimental evaluation was performed by two controlled experiments in the industry. The first one was carried out to investigate the adequacy of the proposed method for DW procedures development. The Second one was carried out to investigate the adequacy of the proposed method against a generic framework for DW procedures development. Both results showed that our approach clearly reduces test effort and coding errors during the testing phase in decision support environments. / A qualidade de um produto de software está diretamente relacionada com os testes empregados durante o seu desenvolvimento. Embora os processos de testes para softwares aplicativos e sistemas transacionais já apresentem um alto grau de maturidade, estes devem ser investigados para os processos de testes em um ambiente de Business Intelligence (BI) e Data Analytics. As diferenças deste ambiente em relação aos demais tipos de sistemas fazem com que os processos e ferramentas de testes existentes precisem ser ajustados a uma nova realidade. Neste contexto, grande parte das aplicações de Business Intelligence (BI) efetivas depende de um Data Warehouse (DW), um repositório histórico de dados projetado para dar suporte a processos de tomada de decisão. São as cargas de dados para o DW que merecem atenção especial relativa aos testes, por englobar procedimentos críticos em relação à qualidade. Este trabalho propõe uma abordagem de testes, baseada em um framework de testes unitários, para procedimentos de carga em um ambiente de BI e Data Analytics. O framework proposto, com base em metadados sobre as rotinas de carga, realiza a execução automática de casos de testes, por meio da geração de estados iniciais e a análise dos estados finais, bem como seleciona os casos de testes a serem aplicados. O objetivo é melhorar a qualidade dos procedimentos de carga de dados e reduzir o tempo empregado no processo de testes. A avaliação experimental foi realizada através de dois experimentos controlados executados na indústria. O primeiro avaliou a utilização de casos de testes para as rotinas de carga, comparando a efetividade do framework com uma abordagem manual. O segundo experimento efetuou uma comparação com um framework genérico e similar do mercado. Os resultados indicaram que o framework pode contribuir para o aumento da produtividade e redução dos erros de codificação durante a fase de testes em ambientes de suporte à decisão.
|
60 |
Security testing methodology for robustness analysis of Web services by fault injection = Metodologia de testes de segurança para análise de robustez de Web services por injeção de falhas / Metodologia de testes de segurança para análise de robustez de Web services por injeção de falhasPalma Salas, Marcelo Invert, 1982- 12 July 2012 (has links)
Orientador: Eliane Martins / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-22T12:17:55Z (GMT). No. of bitstreams: 1
PalmaSalas_MarceloInvert_M.pdf: 1721846 bytes, checksum: a5c6a8727658455a92eade9c6c09e948 (MD5)
Previous issue date: 2012 / Resumo: Devido a sua natureza distribuída e aberta, os Web Services geram novos desafios de segurança da informação. Esta tecnologia Web, desenvolvida pela W3C e OASIS, é susceptível a ataques de injeção e negação de serviços. Desta forma, o atacante pode coletar e manipular informação para procurar vulnerabilidades nos serviços. Nesse estudo analisamos o uso do injetor de falhas (IF) WSInject, para emular ataques com testes de segurança nos Web Services. A motivação para o uso de um injetor de falhas, ao invés do uso de vulnerabilities scanners, que são comumente usados na prática para testar a segurança, foi permitir melhor cobertura dos ataques. Em um estudo preliminar, usando um vulnerability scanner não comercial, foi possível determinar: (i) os serviços, bem como seus parâmetros e suas operações que seriam mais interessantes de utilizar durante a injeção de falhas, por terem sido os que apresentaram maior número de vulnerabilidades; (ii) um conjunto de regras para analisar os resultados dos testes de segurança. Esses resultados preliminares serviram de guia para os testes usando o injetor de falhas. As falhas foram injetadas em Web Services reais, sendo que alguns implementaram mecanismos de segurança de acordo com o padrão Web Services Security (WS-Security), como credenciais de segurança (Security Tokens) / Abstract: Due to its distributed and open nature, the Web Services give rise to new information security challenges. This technology, standardized by W3C and OASIS, is susceptible to both injection and denial of services (DoS) attacks. In this way, the attacker can collect and manipulate information in search of Web Services vulnerabilities. In this study we analyses the use of the WSInject fault injector, in order to emulate attacks with security tests on Web Services. The proposed approach makes use of WSInject Fault Injector to emulate attacks with Security Testing on Web Services. The motivation for using a fault injector, instead of vulnerabilities scanners, which are commonly used in practice for security testing, was to enable better coverage of attacks. In a preliminary study, using a non-commercial vulnerability scanner, it was possible to determine: (i) the Web Services to be tested as well as its parameters and operations more interesting to use during fault injection, by presenting the highest number of vulnerabilities; and (ii) a set of rules to analyze the results of security testing. These preliminary results served as a guide for the tests using the fault injector. The faults have been injected into real Web Services, and some of them have security mechanisms implemented, in compliance with the Web Services Security (WS-Security) with Security Tokens / Mestrado / Ciência da Computação / Mestre em Ciência da Computação
|
Page generated in 0.0495 seconds