16 research outputs found

    A Systematic Review of the Application and Empirical Investigation of Search-Based Test Case Generation

    Get PDF
    Otsingupõhine tarkvara testimine kasutab metaheuristilisi algoritme, et automatiseerida testide genereerimist. Selle töö eesmärgiks on osaliselt taasluua 2010. aastal kirjutatud Ali et al. artikkel, et uurida, kuidas on aastatel 2008-2015 kasutatud metaheuristilisi algoritme testide loomiseks. See töö analüüsib, kuidas on antud artiklid koostatud ning kuidas neis on algoritmide maksumust ja efektiivsust hinnatud. Kogutud tulemusi võrreldakse Ali et al. tulemustega.Search based software testing uses metaheuristic algorithms to automate the generation of test cases. This thesis partially replicates a literature study published in 2010 by Ali et al. to determine how studies published in 2008-2015 use metaheuristic algorithms to automate the generation of test cases. The thesis analyses how these studies were conducted and how the cost-effectiveness is assessed in these papers. The trends detected in the new publications are compared to those presented in Ali et al

    A Survey on Software Testing Techniques using Genetic Algorithm

    Full text link
    The overall aim of the software industry is to ensure delivery of high quality software to the end user. To ensure high quality software, it is required to test software. Testing ensures that software meets user specifications and requirements. However, the field of software testing has a number of underlying issues like effective generation of test cases, prioritisation of test cases etc which need to be tackled. These issues demand on effort, time and cost of the testing. Different techniques and methodologies have been proposed for taking care of these issues. Use of evolutionary algorithms for automatic test generation has been an area of interest for many researchers. Genetic Algorithm (GA) is one such form of evolutionary algorithms. In this research paper, we present a survey of GA approach for addressing the various issues encountered during software testing.Comment: 13 Page

    eCrash: a framework for performing evolutionary testing on third-party Java components

    Get PDF
    The focus of this paper is on presenting a tool for generating test data by employing evolutionary search techniques, with basis on the information provided by the structural analysis and interpretation of the Java bytecode of third-party Java components, and on the dynamic execution of the instrumented test object. The main objective of this approach is that of evolving a set of test cases that yields full structural code coverage of the test object. Such a test set can be used for effectively performing the testing activity, providing confidence in the quality and robustness of the test object. The rationale of working at the bytecode level is that even when the source code is unavailable structural testing requirements can still be derived, and used to assess the quality of a test set and to guide the evolutionary search towards reaching specific test goals

    Pruebas unitarias para evaluar automáticamente la programación de clases en python

    Full text link
    [EN] The Automatic Assessment (AA) of tasks presents several advantages, such as: its application to a large number of students (due to the very short time that it requires compared to manual evaluations), automatic and immediate feedback to the students and lack of subjectivity . In this paper we explain how to design unit tests to evaluate how the Object Oriented Programming (OOP) classes of the assignment have been programmed. In this paper, we focus on the Python programming language (rather than using Java as other works of literature). In addition, we present a real case of practical laboratory assignment. We also present their solution and the corresponding unit tests. Finally, we prove the effectiveness of the unit tests by verifying that the results obtained are the same as the evaluation carried out by visual inspection of the students’ code. In addition, we also received positive feedback from students on the work presented in this article.[ES] La Evaluación Automática (EA) de tareas presenta varias ventajas, tales como: su aplicación a un gran número de estudiantes (debido al tiempo tan reducido que requiere en comparación con las evaluaciones manuales), valoración automática e inmediata para los estudiantes y falta de subjetividad.En este trabajo explicamos como diseñar pruebas unitarias para evaluar como han sido programadas las clases de tareas de Programación Orientada a Objetos (POO). En este trabajo, nos enfocamos en el lenguaje de programación Python (en vez de utilizar Java tal y como lo hacen los otros trabajos de la literatura). Además, presentamos un caso real de un trabajo práctico de laboratorio. También presentamos su solución y las correspondientes pruebas unitarias.Finalmente, corroboramos la efectividad de los tests unitarios comprobando que los resultados obtenidos son los mismos que la evaluación realizada por inspección visual del código de los estudiantes. Además, también recibimos valoraciones positivas de los alumnos del trabajo presentado en este artículo.Climent Aunes, L.; Arbelaez Rodriguez, A. (2023). Pruebas unitarias para evaluar automáticamente la programación de clases en python. Editorial Universitat Politècnica de València. 398-408. https://doi.org/10.4995/INRED2023.2023.1659639840

    mCrash: a framework for the evaluation of mobile devices' trustworthiness properties

    Get PDF
    Dissertação apresentada à Faculdade de Ciências e Tecnologia da Universidade de Coimbra para obtenção do grau de Mestre em "Informatics and Systems", orientada por Mário Alberto Zenha-Rela. Apenas está disponível um resumo da dissertação.Mobile devices, such as Smartphones, are being used virtually by every modern individual. Such devices are expected to work continuously and awlessly for years, despite having been designed without criticality requirements. However, the requirements of mobility, digital identi cation and authentication lead to an increasing dependence of societies on the correct behaviour of these \proxies for the individual". The Windows Mobile 5.0 release has delivered a new set of internal state monitoring services, centralized into the State and Noti cations Broker. This API was designed to be used by context-aware applications, providing a comprehensive monitoring of the internal state and resources of mobile devices. We propose using this service to increase the dependability of mobile applications by showing, through a series of fault-injection campaigns, that this novel API is very e ective for error propagation pro ling and monitoring

    Testing Container Classes: Random or Systematic?

    Full text link
    Container classes such as lists, sets, or maps are elementary data struc-tures common to many programming languages. Since they are a part of stan-dard libraries, they are important to test, which led to research on advanced testing techniques targeting such containers and research on comparing testing techniques using such containers. However, these techniques have not been thor-oughly compared to simpler techniques such as random testing. We present the results of a larger case study in which we compare random testing with shape ab-straction, a systematic technique that showed the best results in a previous study. Our experiments show that random testing is about as effective as shape abstrac-tion for testing these containers, which raises the question whether containers are well suited as a benchmark for comparing advanced testing techniques
    corecore