7,248 Hits in 6.7 sec

Non-semantics-preserving transformations for higher-coverage test generation using symbolic execution [article]

Hayes Elliott Converse
We examined the use of non-semantics-preserving transformations to optimize programs for symbolic execution and thus produce higher-quality test suites more efficiently than in traditional settings.  ...  These examples demonstrate that non-semantics-preserving transformations can preserve the quality of the test suites generated through symbolic execution.  ... 
doi:10.15781/t2ms3k19j fatcat:hhigao7csrfz5cuc6tixvq7z2i

Optimizing compilation with preservation of structural code coverage metrics to support software testing

Raimund Kirner, Walter Haas
2012 Software testing, verification & reliability  
Code-coverage-based testing is a widely-used testing strategy with the aim of providing a meaningful decision criterion for the adequacy of a test suite.  ...  Code-coverage-based testing is also mandated for the development of safety-critical applications, for example, the DO178b document requires the application of the modified condition/decision coverage (  ...  They use testability transformation to produce a transformed program, which is then used by a test-data generator to improve its ability of generating test data for the original program [49] .  ... 
doi:10.1002/stvr.1485 fatcat:huh6dfnbvze4xb3layd6n5ppmq

Improving Structural Testing of Object-Oriented Programs via Integrating Evolutionary Testing and Symbolic Execution

Kobi Inkumsah, Tao Xie
2008 2008 23rd IEEE/ACM International Conference on Automated Software Engineering  
The experimental results show that the tests generated using our framework can achieve higher branch coverage than the ones generated by evolutionary testing, symbolic execution, or random testing within  ...  symbolic execution (used to generate desirable method arguments).  ...  Symbolic execution using jCUTE requires a symbolic test driver, which is generated within our framework for the program under test through the use of argument transformation described in the next section  ... 
doi:10.1109/ase.2008.40 dblp:conf/kbse/InkumsahX08 fatcat:c3ow7duhz5fkbkrxjcxc5yzif4

Learning to Accelerate Symbolic Execution via Code Transformation

Junjie Chen, Wenxiang Hu, Lingming Zhang, Dan Hao, Sarfraz Khurshid, Lu Zhang, Michael Wagner
2018 European Conference on Object-Oriented Programming  
Symbolic execution is an effective but expensive technique for automated test generation.  ...  Orthogonal to refined symbolic execution, in this paper we propose to accelerate symbolic execution through semantic-preserving code transformation on the target programs.  ...  That is, semantic-preserving code transformation rules for symbolic execution are needed.  ... 
doi:10.4230/lipics.ecoop.2018.6 dblp:conf/ecoop/ChenHZHK018 fatcat:4f7uciggoneulmfsgi3kve3zly

Towards Preserving Model Coverage and Structural Code Coverage

Raimund Kirner
2009 EURASIP Journal on Embedded Systems  
In this article we address the challenge of ensuring that the structural code coverage achieved at a higher program representation level is preserved during the code generations and code transformations  ...  For a testing framework with automatic generation of test data this will enable high retargetability of the framework.  ...  Acknowledgments We would like to thank Susanne Kandl and the anonymous reviewers for valuable comments on earlier versions of this article.  ... 
doi:10.1155/2009/127945 fatcat:ywvz7o3cbvdp3fesq4i6e73nly

Analysing the program analyser

Cristian Cadar, Alastair F. Donaldson
2016 Proceedings of the 38th International Conference on Software Engineering Companion - ICSE '16  
Inspired by recent advances in compiler testing, we set out initial steps towards this vision, building upon techniques such as cross-checking, program transformation and program generation.  ...  In this position paper we present our vision that, by 2025, the use of more rigorous analyses to check the reliability of program analysers will be commonplace.  ...  ACKNOWLEDGEMENTS We would like to thank the anonymous reviewers and Jeroen Ketema, Tomasz Kuchta, Daniel Liew, and Hristina Palikareva for their comments on this paper, and EPSRC for supporting this research  ... 
doi:10.1145/2889160.2889206 dblp:conf/icse/CadarD25 fatcat:6hjyekn4onf6ra6fisjuvhfdha

Automated HW/SW Co-Verification of SystemC Designs Using Timed Automata

Paula Herber
2012 it - Information Technology  
Wir stellen einen Algorithmus vor, der aus einem abstrakten Modell alle möglichen (zeitbehafteten) Ausgaben berechnet und aus diesen automatisch SystemC Test Benches erzeugt.  ...  Standard solutions are the use of test suites with full coverage and the repeated execution of test cases in case of non-deterministic behavior.  ...  However, neither the semantics-preserving transformation from SystemC to Uppaal timed automata, nor the automatic generation of conformance tests for SystemC designs are trivial.  ... 
doi:10.1524/itit.2012.0692 fatcat:r5atkjzrpvdhzpm4tunx2oiovy

A Generic Framework for Symbolic Execution [chapter]

Andrei Arusoaie, Dorel Lucanu, Vlad Rusu
2013 Lecture Notes in Computer Science  
We demonstrate the genericity of our tool by instantiating it on several languages, and show how it can be used for the symbolic execution and model checking of several programs.  ...  We propose a language-independent symbolic execution framework for languages endowed with a formal operational semantics based on term rewriting.  ...  We would like to thank the reviewers for their helpful comments. The work presented here was supported in part by Contract 161/15.06.2010, SMIS-CSNR 602-12516 (DAK).  ... 
doi:10.1007/978-3-319-02654-1_16 fatcat:vkf6kyq7ybcavglybxbygq6huu

Studying the influence of standard compiler optimizations on symbolic execution

Shiyu Dong, Oswaldo Olivo, Lingming Zhang, Sarfraz Khurshid
2015 2015 IEEE 26th International Symposium on Software Reliability Engineering (ISSRE)  
The key finding of our work is that standard compiler optimizations need to be used with care when performing symbolic execution for creating tests that provide high code coverage.  ...  This paper studies how a class of semantics-preserving program transformations, namely compiler optimizations, which are designed to enhance performance of standard program execution (using concrete inputs  ...  They also introduced the idea of employing a transformation that may not be semantics preserving.  ... 
doi:10.1109/issre.2015.7381814 dblp:conf/issre/DongOZK15 fatcat:vopgbbxbrfe3vkfpggbie6nu2y

Scalable validation of binary lifters

Sandeep Dasgupta, Sushant Dinesh, Deepan Venkatesh, Vikram S. Adve, Christopher W. Fletcher
2020 Proceedings of the 41st ACM SIGPLAN Conference on Programming Language Design and Implementation  
The semantic equivalence check between the reference and the lifter output is then reduced to a graph-isomorphism check through the use of semantic preserving transformations.  ...  The semantics is fully executable and has been tested against the GCC C-torture test suite. Moreover, each instruction is individually tested against more than 7,000 instruction-level test cases.  ...  Second, since our method can symbolically execute instructions, it can be used to generate input tests that have high coverage.  ... 
doi:10.1145/3385412.3385964 dblp:conf/pldi/DasguptaDVAF20 fatcat:3khjl5gbmnetjay23fk3sc2ktu

Practical Software Diversification Using In-Place Code Randomization [chapter]

Vasilis Pappas, Michalis Polychronakis, Angelos D. Keromytis
2012 Advances in Information Security  
The wide adoption of non-executable page protections has given rise to attacks that employ return-oriented programming (ROP) to achieve arbitrary code execution without the injection of any code.  ...  disassembly coverage.  ...  Acknowledgements We are grateful to the authors of Q for making it available to us, and especially to Edward Schwartz for his assistance.  ... 
doi:10.1007/978-1-4614-5416-8_9 fatcat:fyi3gqvjqzfk5ejs72mkhrlubq

Making refactoring safer through impact analysis

Melina Mongiovi, Rohit Gheyi, Gustavo Soares, Leopoldo Teixeira, Paulo Borba
2014 Science of Computer Programming  
of relevant tests generated in 45 transformations.  ...  In this article, we propose a tool (SafeRefactorImpact) that analyzes the transformation and generates tests only for the methods impacted by a transformation identified by our change impact analyzer (  ...  We use T-test for change coverage due to data normality.  ... 
doi:10.1016/j.scico.2013.11.001 fatcat:ipykrk6olfg43kqlkv2je3t7mq

Intertwining ROP Gadgets and Opaque Predicates for Robust Obfuscation [article]

Fukutomo Nakanishi, Giulio De Pasquale, Daniele Ferla, Lorenzo Cavallaro
2020 arXiv   pre-print
To this end, we propose ROPFuscator, a fine-grained obfuscation framework for C/C++ programs using ROP.  ...  More importantly, we introduce a realistic and unified threat model to thoroughly evaluate ROPFuscator and provide principled reasoning on ROP-based obfuscation techniques that answer to code coverage,  ...  We tested the use of integer factorization and the 3SAT problem for generating opaque predicates.  ... 
arXiv:2012.09163v1 fatcat:uvpg73ewxbh2xoooefkbuu4osm

Hiding in the Particles: When Return-Oriented Programming Meets Program Obfuscation [article]

Pietro Borrello, Emilio Coppa, Daniele Cono D'Elia
2021 arXiv   pre-print
The results suggest a significant amount of computational resources would be required to carry a deobfuscation attack for secret finding and code coverage goals.  ...  Largely known for attack scenarios, code reuse techniques at a closer look reveal properties that are appealing also for program obfuscation.  ...  TDS is a general, dynamic, and semantics-based technique: it applies a selection of semantics-preserving simplifications to a recorded trace and produces a simplified CFG.  ... 
arXiv:2012.06658v2 fatcat:3pa76iqkarh7xg34cjck62vkqi

High-confidence software evolution

Qing Gao, Jun Li, Yingfei Xiong, Dan Hao, Xusheng Xiao, Kunal Taneja, Lu Zhang, Tao Xie
2016 Science China Information Sciences  
To support client evolution for high-confidence software, we propose a path-exploration-based approach to generate tests efficiently by pruning paths irrelevant to changes between versions, several coverage-based  ...  approaches to optimize test execution, and approaches to locate faults and fix memory leaks automatically.  ...  [4, 61] identify and formalize change-interaction errors in evolving software, and propose a regression-test generation approach that uses symbolic execution to generate tests for exposing change-interaction  ... 
doi:10.1007/s11432-016-5572-2 fatcat:vachltlnmzhx7krpofmrzzsfei
« Previous Showing results 1 — 15 out of 7,248 results