Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

1. For the following code, consider the statement deletion mutation operator (SDL), which deletes a statement from a program. A mutant produced by this operator

1. For the following code, consider the statement deletion mutation operator (SDL), which deletes a statement from a program. A mutant produced by this operator is detected if there is a test that has different outputs on the original program and the mutated program. Find two instances of this operator:

An SDL mutant that causes the rep-invariant to fail. Demonstrate this with a call to repOk() from a (failing) JUnit test.

An SDL mutant that causes a method contract to be violated. Demonstrate this with a call to the relevant method from a (failing) JUnit test.

import java.util.*; // GrowList is a mutable list that only gets longer. public class GrowList  { private Map values; public GrowList() { values = new HashMap();} // add to the end of the list public void add(E o) { values.put(size(), o); } // number of values in list public int size() { return values.size(); } // get ith value in list public E get(int i) { if (! inRange(i)) throw new IndexOutOfBoundsException("GrowList.get"); return values.get(i); } // update ith value in list; return previous value or null if none public E set(int i, E o) { if (! inRange(i)) throw new IndexOutOfBoundsException("GrowList.set"); return values.put(i, o); } // private helper method private boolean inRange(int i) { return (i >= 0) && (i < size()); } public String toString() { if (size() == 0) return "[]"; String result = "["; for (int i = 0; i < size()-1; i++) { result += values.get(i) + ","; } return result + values.get(size() - 1) + "]"; } public static void main(String[] args) { GrowList list = new GrowList(); System.out.println("list is:" + list); list.add("cat"); System.out.println("list is:" + list); list.add("dog"); System.out.println("list is:" + list); list.set(1,"bat"); System.out.println("list is:" + list); } }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Professional Microsoft SQL Server 2014 Administration

Authors: Adam Jorgensen, Bradley Ball

1st Edition

111885926X, 9781118859261

More Books

Students also viewed these Databases questions

Question

What are the elements of a crime?

Answered: 1 week ago

Question

Which are non projected Teaching aids in advance learning system?

Answered: 1 week ago