You are on page 1of 10

Software Quality Engineering

Department of Software Engineering


Bahria University, Islamabad

Name: Huzaifa Arshad, M. Abdullah Malik

Enrolment No: 01-131182-015, 01-131182-018

Instructor: Dr. Tamim

Class: BSE-6A

Date Submitted: 2 – 4 – 2021


ASSIGNMENT 1
QUESTION # 01 PLEASE MAKE CONTROL-FLOW GRAPH, FIND PATH CONDITIONS AND
INDEPENDENT PATHS.

CONTROL FLOW GRAPH:

1. int GPA=0;
2. int i=0;
3. i<marks.size()
4. printf(“GPA is
%d.\n”,GPA)
5. if(i>=50&&i<=60)
6. GPA+=2;
7. else if(i>60&&i<=70)
8. GPA+=2.5
9. else if (i>70&&i<=80)
10. GPA+=3;
11. else if (i>80&&i<=90)
12. GPA+=3.5;
13. else if (i>90&&i<=100)
14. GPA+=4;

PATHS:

1. 1,2,3,4
2. 1,2,3,5,6,15,3,4
3. 1,2,3,5,7,8,15,3,4
4. 1,2,3,5,7,9,10,15,3,4
5. 1,2,3,5,7,9,11,12,15,3,4
6. 1,2,3,5,7,9,11,13,14,15,3,4
7. 1,2,3,5,7,9,11,13,15,3,4

PATH CONDITIONS:

1. 1,2,3(F),4
2. 1,2,3(T),5(T),6,15,3(F),4
3. 1,2,3(T),5(F),7(T),8,15, 3(F),4
4. 1,2,3(T),5(F),7(F),9(T),10,15, 3(F),4
5. 1,2,3(T),5(F),7(F),9(F),11(T),12,15, 3(F),4
6. 1,2,3(T),5(F),7(F),9(F),11(F),13(T),14,15, 3(F),4
7. 1,2,3(T),5(F),7(F),9(F),11(F),13(F),15, 3(F),4
INPUTS:

1. 1,2,3(F),4{}
2. 1,2,3(T),5(T),6,15,3(F),4{55}
3. 1,2,3(T),5(F),7(T),8,15, 3(F),4{64}
4. 1,2,3(T),5(F),7(F),9(T),10,15, 3(F),4{76}
5. 1,2,3(T),5(F),7(F),9(F),11(T),12,15, 3(F),4{87}
6. 1,2,3(T),5(F),7(F),9(F),11(F),13(T),14,15, 3(F),4{99}
7. 1,2,3(T),5(F),7(F),9(F),11(F),13(F),15, 3(F),4{110}

EXPECTED OUTPUTS

EQUATION FORMAT:
[pathsinputexpected_outputs]

1. [1,2,3(F),4{}0]
2. [1,2,3(T),5(T),6,15,3(F),4{55}2]
3. [1,2,3(T),5(F),7(T),8,15, 3(F),4{64}2.5]
4. [1,2,3(T),5(F),7(F),9(T),10,15, 3(F),4{76}3]
5. [1,2,3(T),5(F),7(F),9(F),11(T),12,15, 3(F),4{87}3.5]
6. [1,2,3(T),5(F),7(F),9(F),11(F),13(T),14,15, 3(F),4{98}4]
7. [1,2,3(T),5(F),7(F),9(F),11(F),13(F),15, 3(F),4{110}0]

INDEPENDENT PATHS:
Formula: (Edges-Nodes)+2

Result: (20-15)+2=7

Total Independent paths: 7

QUESTION # 02 WRITE TEST CASES TO PROVIDE ALL-NODES COVERAGE AND PROVIDE


COVERAGE REPORT.

NODES COVERAGE REPORT:


QUESTION # 03 PLEASE TEST THIS CODE USING
 VISUAL STUDIO
public class calcGPA
{
public double ReturnGPA(int[] marks)
{
double GPA = 0;
for (int i = 0; i < marks.Length; i++)
{
if (i >= 50 && i <= 60)
GPA += 2;
else if (i > 60 && i <= 70)
GPA += 2.5;
else if (i > 70 && i <= 80)
GPA += 3;
else if (i > 80 && i <= 90)
GPA += 3.5;
else if (i > 90 && i <= 100)
GPA += 4;
}
Console.WriteLine(" GPA is %d. \n", GPA);
return GPA;
}
}

 JAVA

USING VISUAL STUDIO:

namespace SQETest
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void TestMethod1()
        {
            //Arrange
            double expected = 0;
            int[] marks = {};
            calcGPA gpa = new calcGPA();
            //Act
            double acutual=gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
        }

        [TestMethod]
        public void TestMethod2()
        {
            //Arrange
            double expected = 2;
            int[] marks = { 55 };
            calcGPA gpa = new calcGPA();
            //Act
            double acutual = gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
}

        [TestMethod]
        public void TestMethod3()
        {
            //Arrange
            double expected = 2.5;
            int[] marks = { 64 };
            calcGPA gpa = new calcGPA();
            //Act
            double acutual = gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
        }
        [TestMethod]
        public void TestMethod4()
        {
            //Arrange
            double expected = 3;
            int[] marks = { 76 };
            calcGPA gpa = new calcGPA();
            //Act
            double acutual = gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
        }

        [TestMethod]
        public void TestMethod5()
        {
            //Arrange
            double expected = 3.5;
            int[] marks = { 87 };
            calcGPA gpa = new calcGPA();
            //Act
            double acutual = gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
        }

        [TestMethod]
        public void TestMethod6()
        {
            //Arrange
            double expected = 4;
            int[] marks = { 98 };
            calcGPA gpa = new calcGPA();
            //Act
            double acutual = gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
        }

        [TestMethod]
        public void TestMethod7()
        {
            //Arrange
            double expected = 0;
            int[] marks = { 44 };
            calcGPA gpa = new calcGPA();
            //Act
            double acutual = gpa.ReturnGPA(marks);
            // Assert
            Assert.AreEqual(expected, acutual, "Method Not work Fine");
        }
    }
}
USING JAVA:

TEST METHOD 1:
TEST METHOD 2:

TEST METHOD 3:
TEST METHOD 4:

TEST METHOD 5:
TEST METHOD 6:

TEST METHOD 7:

THE END

You might also like