Testing grep.c (200 pts) For grep.c, generate 10,000 test cases through the (reverse) DFS search strategy. You are requested to modify grep.c to create.

Slides:



Advertisements
Similar presentations
5.2 Systems of Linear Equations in Three Variables
Advertisements

Marking Schema question1: 40 marks question2: 40 marks question3: 20 marks total: 100 marks.
LECTURE 1 CMSC 201. Overview Goal: Problem solving and algorithm development. Learn to program in Python. Algorithm - a set of unambiguous and ordered.
{ Dominion - Test Plan Version 1 – 22 nd Apr Aravind Palanisami.
Given data file.
CS Lecture 04 Outline Change your shell Sed and awk Tricks with Bash scripts Assignment 1 discussion 1CS 311 Operating SystemsLecture 04.
 Knowledge and use of tools and resources in a system: standard libraries, system calls, debuggers, the shell environment, system programs and scripting.
How To Build Busybox with Gcov by Yunho Kim Provable Software Lab, KAIST.
GNU gcov (1/4) [from Wikipedia] gcov is a source code coverage analysis and statement- by-statement profiling tool. gcov generates exact counts of the.
Chapter 1 Introduction Dr. Frank Lee. 1.1 Why Study Compiler? To write more efficient code in a high-level language To provide solid foundation in parsing.
CSCI-383 Object-Oriented Programming & Design Lecture 13.
Additional UNIX Commands. 222 Lecture Overview  Multiple commands and job control  More useful UNIX utilities.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 18 Midterm Review.
HW4: Due Nov 24th 23:59 1.Describe test cases to reach full path coverage of the triangle program by completing the path condition table below. Also, draw.
Searching Topics Sequential Search Binary Search.
CPSC 871 John D. McGregor Module 8 Session 3 Assignment.
GCSE Computing#BristolMet Session Objectives #23 MUST understand what is meant by the programming term iteration SHOULD describe methods of looping used.
Lesson 6-Using Utilities to Accomplish Complex Tasks.
Familiarizing with UNIX Commands. UNIX Commands Unix systems are heavily command based. This often makes us feel uncomfortable. Moreover the system is.
HW7: Due Dec 5th 23:59 1.Describe test cases to reach full path coverage of the triangle program by completing the path condition table below. Also, draw.
Dept. of Animal Breeding and Genetics Programming basics & introduction to PERL Mats Pettersson.
3.6 Solving Systems of Linear Equations in Three Variables ©2001 by R. Villar All Rights Reserved.
BRANDING YOURSELF FINAL DRAFT.
BASIS Quick Start Guide
Prof: Dr. Shu-Ching Chen TA: Hsin-Yu Ha Fall 2015
Regression Testing with its types
CSC 421: Algorithm Design & Analysis
CSC 421: Algorithm Design & Analysis
CSC 421: Algorithm Design & Analysis
Object-Oriented Programming & Design Lecture 14 Martin van Bommel
PROGRAMMING THE BASH SHELL PART IV by İlker Korkmaz and Kaya Oğuz
Data Coverage and Code Coverage
Moonzoo Kim CS Dept. KAIST
Lab 8 Data-Flow Testing.
INTRODUCTION TO UNIX: The Shell Command Interface
Moonzoo Kim CS Dept. KAIST
Software Development Cycle
What is Bash Shell Scripting?
Prof: Dr. Shu-Ching Chen TA: Yimin Yang
VISUAL BASIC.
Chapter 11 Introduction to Programming in C
Prof: Dr. Shu-Ching Chen TA: Hsin-Yu Ha
Guide To UNIX Using Linux Third Edition
Algorithm An algorithm is a finite set of steps required to solve a problem. An algorithm must have following properties: Input: An algorithm must have.
GNU gcov (1/4) [from Wikipedia]
Working with Server-side Scripts
Unit-1 Introduction to Java
4 Main Steps of Concolic Testing
Sensory perception with Arduino
4 Main Steps of Concolic Testing
Good Testing Practices
More advanced BASH usage
Design and Technology Product Design Monday 22nd June 2015
“Shell Scripting” with SML
A programming language
A QUICK START TO OPL IBM ILOG OPL V6.3 > Starting Kit >
GNU gcov gcov is a test coverage program running with gcc.
CSC 421: Algorithm Design & Analysis
PCS CONTENT ON CMS.
HW2: A prime path generator (Due Oct 6th 23:59)
GNU gcov (1/4) [from Wikipedia]
Fundaments of Game Design
Software Development Cycle
HW4: Concolic testing Busybox expr (due Nov 30 23:59)
HW4: Due Nov 22nd 23:59 Describe test cases to reach full path coverage of the triangle program by completing the path condition table below. Also,
Music Creation Create, Record, Produce.
HW7: Due Dec 5th 23:59 Describe test cases to reach full path coverage of the triangle program by completing the path condition table below. Also, draw.
HW#7 Describe test cases to reach full path coverage of the triangle program by completing the path condition table below. Also, draw the complete execution.
SPL – PS1 Introduction to C++.
Constants, Variables and Data Types
Presentation transcript:

Testing grep.c (200 pts) For grep.c, generate 10,000 test cases through the (reverse) DFS search strategy. You are requested to modify grep.c to create test cases through CREST and feed those generated test cases to grep. You should report the following items carefully: Describe which variables are declared symbolically and how How long is a target pattern, a target file, options, etc Describe how you modified the target code to improve branch coverage Create 10,000 test cases in files (i.e.,tc1, tc2,… tc10000) per each of the 4 different search strategies Measure the final branch coverage (i.e., condition coverage in the original target program) reported by CREST You should report the branch coverage per search strategy You can do this by analyzing branch and coverage output file Apply the 40,000 test cases (tc1,…tc10000 x 4) to grep and measure the branch coverage reported by gcov For this task, you should not use CREST. You may build a shell script to execute grep 40,000 times with 40,000 test cases. (options) The persons who achieve the best, 2nd best, and the 3rd best coverage among the classmates will get extra 100 points.