Spelling suggestions: "subject:"test case"" "subject:"test base""
31 |
Merging Functional Requirements with Test CasesKolla, Madhuri, Banka, Mounika January 2015 (has links)
A lot of research is done in requirements engineering and testing but often the extensive literature is missing on defining good methods for linking functional requirements with test cases. Most of the delays occurring in the software development projects are because of incomplete or inaccurate functional requirements. The two main goals of our project are to achieve a successful software project by First, to design a template, which will merge functional requirements with test cases and second is to find the benefits of the aligning requirements to test cases. Changing, updating and tracing the requirements during the development of the project is not an easy task. The main reason for project failure is due to possibility of not fulfilling specified project requirements, so one way to solve this problem is to merge functional requirements with test cases. Thus removes the need of creating a separate requirements document, which will improve the traceability process between requirements and testing, thus leads to high quality and efficient development. The template helps us to drive a successful project by identifying the issues at an earlier stage of the development cycle.
|
32 |
Usage of Generative AI Based Plugin in Unit Testing : Evaluating the Trustworthiness of Generated Test Cases by Codiumate, an IDE Plugin Powered by GPT-3.5 & 4Nazari, Ali Reza, Nannicha Thunell, Bow January 2024 (has links)
Background: Unit testing is essential in software development, ensuring the functionality of individual components like functions and classes. However, manual creation of unit test cases is time-consuming and tedious, impacting testing efficiency and reliability. Problem: Automated unit test generation tools such as EvoSuite and Randoop have addressed some challenges, but they’re limited by language specificity and predefined algorithms. Generative AI tools like ChatGPT and GitHub Copilot powered by OpenAI’sGPT-3.5/4 offer alternatives, but face limitations like user input reliance and operational inconveniences. Solution: CodiumAI’s Codiumate IDE plugin aims to mitigate these limitations, making code quality assurance easier for developers. This study evaluates Codiumate’s trustworthiness in generating unit tests for the Python functions. Method: We randomly selected thirty functions from OpenAI’s HumanEval dataset, and wrote selection criteria for relevant test cases based on each function’s doc string to evaluate Codiumate’s trustworthiness using metrics such as Relevance Score, false positive rate, and result consistency rate. Result: Among all the suggested test cases by Codiumate, 208 unit tests, which consists of 48% of suggested test cases that were relevant. 70% of assertions from these test cases strictly meet selection criteria, while the other 30% while relevant were selected due to our basis and experience in software testing. The average false positive rate is15%. Function groups that have higher Relevance Scores are non-mathematical nature, and simple dependencies. High false positives arise in functions with string and float parameters. All generated unit tests are syntax-error-free, with 20% fail and 80% passed in all five test execution. Conclusion: Codiumate demonstrates potential in automating unit test generation, offering a convenient means to support developers. However, it is not yet fully reliable for critical applications without developer oversight. Continued refinement and exploration of its capabilities are essential for Codiumate to become an indispensable asset in unit test generation, enhancing its trustworthiness and effectiveness in the software development process.
|
33 |
Model-Based Test Case Generation for Real-Time SystemsHessel, Anders January 2007 (has links)
Testing is the dominant verification technique used in the software industry today. The use of automatic test case execution increases, but the creation of test cases remains manual and thus error prone and expensive. To automate generation and selection of test cases, model-based testing techniques have been suggested. In this thesis two central problems in model-based testing are addressed: the problem of how to formally specify coverage criteria, and the problem of how to generate a test suite from a formal timed system model, such that the test suite satisfies a given coverage criterion. We use model checking techniques to explore the state-space of a model until a set of traces is found that together satisfy the coverage criterion. A key observation is that a coverage criterion can be viewed as consisting of a set of items, which we call coverage items. Each coverage item can be treated as a separate reachability problem. Based on our view of coverage items we define a language, in the form of parameterized observer automata, to formally describe coverage criteria. We show that the language is expressive enough to describe a variety of common coverage criteria described in the literature. Two algorithms for test case generation with observer automata are presented. The first algorithm returns a trace that satisfies all coverage items with a minimum cost. We use this algorithm to generate a test suite with minimal execution time. The second algorithm explores only states that may increase the already found set of coverage items. This algorithm works well together with observer automata. The developed techniques have been implemented in the tool CoVer. The tool has been used in a case study together with Ericsson where a WAP gateway has been tested. The case study shows that the techniques have industrial strength.
|
34 |
GENERATE TEST SELECTION STATISTICS WITH AUTOMATED MUTATION TESTINGMADHUKAR, ENUGURTHI January 2018 (has links)
Context: The goal of this research is to form a correlation between code packages and test cases which is done by using automated weak mutation. The correlations formed is used as the statistical test data for selecting relevant tests from the test suite which decreases the size of the test suite and speed up the process. Objectives: In this study, we have done an investigation of existing methods for reducing the computational cost of automatic mutation testing. After the investigation, we build an open source automatic mutation tool that mutates the source code to run on the test cases of the mutated code that maps the failed test to the part of the code that was changed. The failed test cases give the correlation between the test and the source code which is collected as data for future use of the test selection. Methods: Literature review and Experimentation is chosen for this research. It was a controlled experiment done at the Swedish ICT company to mutate the camera codes and test them using the regression test suite. The camera codes provided are from the continuous integration of historical data. We have chosen experimentation as our research because as this method of research is more focused on analyzing the data and implementing a tool using historical data. A literature review is done to know what kind of mutation testing reduces the computational cost of the testing process. The implementation of this process is done by using experimentation Results: The comparative results obtained after mutating the source code with regular mutants and weak mutants we have found that regular mutants and weak mutants are compared with their correlation accuracy and we found that on regular mutation operators we got 62.1% correlation accuracy and coming to weak mutation operators we got 85% of the correlation accuracy. Conclusions: This research on experimentation to form the correlations in generating test selection statistics using automated mutation testing in the continuous integration environment for improving test cases selection in regression testing
|
35 |
Uma técnica de priorização de casos de teste para múltiplas mudanças agregadas.CAVALCANTE, Berg Élisson Sampaio. 21 May 2018 (has links)
Submitted by Maria Medeiros (maria.dilva1@ufcg.edu.br) on 2018-05-21T11:28:18Z
No. of bitstreams: 1
BERG ÉLISSON SAMAPAIO CAVALCANTE - DISSERTAÇÃO (PPGCC) 2016.pdf: 1665807 bytes, checksum: 29f9430f322f8d4644a7bfeee7aaf497 (MD5) / Made available in DSpace on 2018-05-21T11:28:18Z (GMT). No. of bitstreams: 1
BERG ÉLISSON SAMAPAIO CAVALCANTE - DISSERTAÇÃO (PPGCC) 2016.pdf: 1665807 bytes, checksum: 29f9430f322f8d4644a7bfeee7aaf497 (MD5)
Previous issue date: 2016 / Capes / É evidente hoje o grande investimento em qualidade de software. Assim, para submeter um produto com qualidade aceitável, é necessário determinar a sua testabilidade, uma propriedade que indica a facilidade e precisão na avaliação dos resultados de um teste. Teste de Regressão é um processo custoso, que demanda esforço considerável para detectar defeitos introduzidos em um código testado anteriormente. A fim de aumentar a custo-efetividade deste processo, são aplicadas técnicas de priorização de casos de teste (CTs), que tem por objetivo reordenar o conjunto de testes seguindo algum critério de ordenação. Em particular, a técnica Changed Blocks realiza priorização baseada em mudanças. Segundo estudos realizados neste trabalho, essa técnica apresenta algumas limitações, como: i. os resultados não obtém cobertura máxima de defeitos no topo da lista ordenada; ii. CTs com mesmo número de mudanças cobertas são ordenados aleatoriamente, sem seguir uma regra de importância específica; iii. CTs que revelam mudanças inéditas, mas que apresentam baixa cobertura de mudanças são desfavorecidos. Este trabalho propõe a implementação de duas técnicas baseadas na Changed Blocks, para que mudanças múltiplas agregadas em uma mesma versão do sistema em teste sejam melhor consideradas, não resultando em perdas aos benefícios oferecidos pela técnica original. Várias métricas foram utilizadas na análise, são elas: APFD; F-measure; F-spreading; Group-measure; Group-spreading; e Tempo de Execução. Através de análise experimental, avaliou-se a eficácia das técnicas propostas utilizando uma variedade de versões mutantes de quatro projetos open sources. Os resultados indicam que não houve perda estatística significante na aplicação da melhoria e, na antecipação de CTs em cenários de múltiplas mudanças, em média, foi superior. / The investiment on software quality has grown. To ensure acceptable quality in a product, one needs to determine its testability, a property that indicates the feasibility and accuracy in test results evaluation. Regression testing is an expensive technique to detect faults introduced in a previously tested code. In order to increase its cost-effectiveness, test case prioritization techniques may be used. One of the proeminent techniques is based on changes, called Changed Blocks. According to previous studies, this technique presents limitations, such as: i. Test Cases (TCs) with significant impact on the final result end up in undesired positions in the queue; ii. TCs with same number of covered changes are randomly ordered, without following a specific rule; iii. TCs revealing undetected changes, with low coverage are disadvantaged. This work proposes techniques to improve Changed Blocks by grouping multiple changes in a version of the system under test, with no losses in technical benefits. Several metrics were used as follow: i. APFD ; ii. F-measure ; iii. F-spreading; iv. Group-measure; v. Group-spreading;and vi. Execution Time. We carried out an experimental study to evaluate the efficacy of the proposed techniques using a variety of mutant versions of four open sources Java projects. The results indicate the proposed techniques performed better in the contexts they intend to improve, while presenting no statistically significant loss in contexts common to the original Change Blocks technique.
|
36 |
Comparative Selection of Requirements Validation Techniques Based on Industrial Survey / Jämförande Val av kravvalidering baserad på Industrial SurveySulehri, Latif January 2010 (has links)
In software engineering the requirements validation has very core importance. The requirements validation very helpful to judge that software requirements specification (SRS) is complete and free of bugs. The requirements validation is a assurance that the software requirements document is free of unwanted requirements and completely consistent. In order to remove inconsistency, detect defects and make the software requirements document fully functional the requirements validation is key factor. All possible requirements validation techniques available in academia such requirements reviews , requirements prototyping, requirements testing and viewpoint-oriented requirements validation are explained properly in this thesis report. In a very readable and understandable way the thesis presents all pros and cons of these requirements validation techniques practiced in different software companies in Sweden and available in academia. This report explains all possible advantages and issues related with these RVTs. In order to judge the best performance of these RVTs and to make their comparison I used a proper channel. I have designed a very effective survey questionnaire with the help of my colleges and literature review. To make creative comparison I conduct interviews and send survey questionnaire to different people working in requirements engineering departments in different software industries in Sweden. Finally the satisfaction levels of different software industries with these requirements validation techniques presents in this thesis report. These variables such as defect detection, time and cost are used to measure the satisfaction levels. / I Software Engineering kraven validering har en mycket central betydelse. Den kravvalidering very helpful att bedöma att Kravspecifikation (SRS) är klar och felfria. Kraven validering är en garanti för att programvaran kravdokument är fri från oönskade krav och helt konsekvent. För att undanröja inkonsekvens, upptäcka brister och göra programvaran kravdokument fullt funktionella kraven validering är viktig faktor. Alla möjliga kravvalidering tekniker inom den akademiska sådana krav recensioner, krav prototyper, provning och synpunkt-orienterade kravvalidering förklaras ordentligt i denna avhandling rapport. I ett mycket lättläst och begripligt sätt avhandling presenterar alla fördelar och nackdelar med dessa krav validera metoder praktiseras i olika mjukvaruföretag i Sverige och finns i den akademiska världen. Denna rapport förklarar alla möjliga fördelar och frågor kring dessa RVTs. För att bedöma de bästa resultaten i dessa RVTs och göra en jämförelse av dem använde jag en riktig kanal. Jag har skapat en mycket effektiv frågeformulär med hjälp av min högskolor och litteraturgenomgång. Skapa kreativa jämförelse jag intervjua och skicka frågeformuläret till olika personer som arbetar inom tekniska kraven för dessa avdelningar i olika programvaruföretag i Sverige. Slutligen tillfredsställande nivåer av olika programvaruföretag med dessa krav validering teknik presenteras i denna avhandling rapport. Dessa variabler såsom Upptäcka, tid och kostnader används för att mäta tillfredsställande nivåer. / Author: Latif Hussain Sulehri E-mail: latifsulehry@hotmail.com Phone: +46 704 917 140
|
37 |
Elaboration d'une approche de vérification et de validation de logiciel embarqué automobile, basée sur la génération automatique de cas de test / Elaboration of an approach of check and validation of automobile embarked software, based on the automatic generation of case of testKangoye, Sékou 27 June 2016 (has links)
Un système embarqué est un système électronique et informatique autonome dédié à une tâche précise. Dans le secteur de l’automobile, le nombre de systèmes embarqués dans les voitures a considérablement augmenté au cours de ces dernières années et va certainement continuer à augmenter. Ces systèmes sont dédiés entre autres, à la sécurité, au confort de conduite,et à l’assistance à la conduite. Cette croissance des systèmes est associée avec une croissance en taille des logiciels qui les contrôlent. En conséquence, leur gestion(système et logiciel) devient de plus en plus complexe et problématique. Par ailleurs, la concurrence dans le secteur automobile est très féroce et les temps de mise sur le marché sont de plus en plus courts. Ainsi, pour garantir le bon fonctionnement des systèmes en général et du logiciel en particulier, étant donné leur complexité,et aussi les délais courts de mise sur le marché des produits automobiles, de nouvelles méthodes de développement doivent être considérées. Ainsi, de nombreuses méthodes de développement, incluant de nouveaux standards (de développement) et approches automatiques ont émergé au cours de ces dernières années. Dans le cas particulier de la vérification et validation de logiciel, une des activités critiques qui a connu une avancée significative est la génération de cas de test, avec l’avènement d’approches automatiques.Malgré cela, ces approches peinent souvent à s’imposer en milieu industriel. Une des raisons est que celles ci sont souvent peu adaptées ou peu utilisées dans un contexte industriel.Dans ce contexte, cette thèse vise à proposer une approche de vérification et de validation de logiciels embarqués, basée sur la génération automatique de cas de test. Pour cela, nous avons mis en place une approche permettant de représenter sous forme de modèles abstraits les spécifications d’un logiciel, puis de générer à partir de ces modèles un ensemble de cas de test en considérant en particulier le critère de couverture MC/DC. / An embedded system is a system that performs a specific task and has a computer embedded inside. In the automotive sector, the amount of embedded systems in the vehicle has risen dramatically in recent years and is set to increase. They deal essentially with safety, comfort, and driving assistance. Furthermore, the increase in number and complexity of the systems is associated with a growth in software. As a consequence, their management (system and software) have become more and more complex and problematic. Also, the competition and time-to-market in the automotive industry are very tough. Thus, to guarantee the efficiency and reliability of the embedded systems in the vehicle in general and the software in particular, in view of the complexity as well as the competition and time-to-market law, new development methods should be considered. Therefore, new development methods including new standards, and automatic approaches have emerged over the last years. In the particular case of embedded software verification and validation, one of the most critical activities that has experienced a significant progress is test case generation with the advent of automatic approaches. Despite this, these approaches are not widely used or are not well adapted in industrial context. In that context, our goal in this PhD. thesis is to propose a new verification and validation approach, based on automatic test case generation of embedded embedded. Thus, we have set up an approach that automatically generates test cases, with respect to the MC/DC criterion, from abstract models of the software specifications expressed in the form of state-transition models.
|
38 |
Testabilité des services Web / Web services testabilityRabhi, Issam 09 January 2012 (has links)
Cette thèse s’est attaquée sous diverses formes au test automatique des services Web : une première partie est consacrée au test fonctionnel à travers le test de robustesse. La seconde partie étend les travaux précédents pour le test de propriétés non fonctionnelles, telles que les propriétés de testabilité et de sécurité. Nous avons abordé ces problématiques à la fois d’un point de vue théorique et pratique. Nous avons pour cela proposé une nouvelle méthode de test automatique de robustesse des services Web non composés, à savoir les services Web persistants (stateful) et ceux non persistants. Cette méthode consiste à évaluer la robustesse d’un service Web par rapport aux opérations déclarées dans sa description WSDL, en examinant les réponses reçues lorsque ces opérations sont invoquées avec des aléas et en prenant en compte l’environnement SOAP. Les services Web persistants sont modélisés grâce aux systèmes symboliques. Notre méthode de test de robustesse dédiée aux services Web persistants consiste à compléter la spécification du service Web afin de décrire l’ensemble des comportements corrects et incorrects. Puis, en utilisant cette spécification complétée, les services Web sont testés en y intégrant des aléas. Un verdict est ensuite rendu. Nous avons aussi réalisé une étude sur la testabilité des services Web composés avec le langage BPEL. Nous avons décrit précisément les problèmes liés à l’observabilité qui réduisent la faisabilité du test de services Web. Par conséquent, nous avons évalué des facteurs de la testabilité et proposé des solutions afin d’améliorer cette dernière. Pour cela, nous avons proposé une approche permettant, en premier lieu, de transformer la spécification ABPEL en STS. Cette transformation consiste à convertir successivement et de façon récursive chaque activité structurée en un graphe de sous-activités. Ensuite, nous avons proposé des algorithmes d’améliorations permettant de réduire ces problèmes de testabilité. Finalement, nous avons présenté une méthode de test de sécurité des services Web persistants. Cette dernière consiste à évaluer quelques propriétés de sécurité, tel que l’authentification, l’autorisation et la disponibilité, grâce à un ensemble de règles. Ces règles ont été crée, avec le langage formel Nomad. Cette méthodologie de test consiste d’abord à transformer ces règles en objectifs de test en se basant sur la description WSDL, ensuite à compléter, en parallèle, la spécification du service Web persistant et enfin à effectuer le produit synchronisé afin de générer les cas de test. / This PhD thesis focuses on diverse forms of automated Web services testing : on the one hand, is dedicated to functional testing through robustness testing. On the other hand, is extends previous works on the non-functional properties testing, such as the testability and security properties. We have been exploring these issues both from a theoretical and practical perspective. We proposed a robustness testing method which generates and executes test cases automatically from WSDL descriptions. We analyze the Web service over hazards to find those which may be used for testing. We show that few hazards can be really handled and then we improve the robustness issue detection by separating the SOAP processor behavior from the Web service one. Stateful Web services are modeled with Symbolic Systems. A second method dedicated to stateful Web services consists in completing the Web service specification to describe correct and incorrect behaviors. By using this completed specification, the Web services are tested with relevant hazards and a verdict is returned. We study the BPEL testability on a well-known testability criterion called observability. To evaluate, we have chosen to transform ABPEL specifications into STS to apply existing methods. Then, from STS testability issues, we deduce some patterns of ABPEL testability degradation. These latter help to finally propose testability enhancement methods of ABPEL specifications. Finally, we proposed a security testing method for stateful Web Services. We define some specific security rules with the Nomad language. Afterwards, we construct test cases from a symbolic specification and test purposes derived from the previous rules. Moreover, to validate our proposal, we have applied our testing approach on real size case studies.
|
39 |
Případové studie pro statistickou analýzu dat / Case studies for statistical data analysisChroboček, Michal January 2009 (has links)
This thesis deals with questions which are related to the creation of case studies for statistical data analysis using applied computer technology. The main aim is focused on showing the solution of statistical case studies in the field of electrical engineering. Solved case studies include task, exemplary solution and conclusion. Clarity of explained theory and the results understanding and interpretation is accentuated. This thesis can be used for practical education of applied statistical methods, it’s also supplemented with commented outputs from Minitab. Trial version of Minitab has been used for solution of case studies.
|
40 |
Automated Tests of Computer-based Interlocking Systems : Developing a test case generatorBakhiet, Mohammed January 2014 (has links)
Automated tests have become the most sought after method of testing in today’s market. Automating systems is generally found to be cheaper, faster and more reliable than manually operating them. For this reason many companies decide to make the switch over to this inexpensive yet efficient way of testing, only to realize that their costs have in fact gone up. The reasons for this could be poor planning, automating too much too soon or even automating unnecessary parts of the system. This study takes a closer look at the effects of automating tests used on interlocking systems. A tool has been developed as a part of the automated tests at Bombardier. The main function of the tool is to speed up the testing process by automatically generating test cases rather than having a worker write them down. The aim of this paper is to present this recently developed tool and show how its use significantly reduces testing time, costs and workload compared to the manual tests used today.
|
Page generated in 0.0577 seconds