Presentation is loading. Please wait.

Presentation is loading. Please wait.

Presented by: Edfan Tjandra Alireza Behrouzi Shad

Similar presentations


Presentation on theme: "Presented by: Edfan Tjandra Alireza Behrouzi Shad"— Presentation transcript:

1 Presented by: Edfan Tjandra Alireza Behrouzi Shad
Bug Hunt: Making Early Software Testing Lessons Engaging and Affordable Presented by: Edfan Tjandra Alireza Behrouzi Shad

2 Early Integration Benefits
Instill good programming practices. More realistic software development experience. Prevent bad habits.

3 Early Integration Challenges
Lack of properly trained instructors. Lack of resources. Students' diversity. Over-packed curriculum.

4 Solution & Suggestions
Using IDE with integrated testing tools. Edward: submit test cases with their code. Goldwasser: submit test set that then used to test the programs submitted. Martero et al.: extra credits for test suites and find faults.

5 What is Bug Hunt? Web Application built with J2EE technologies.
It uses Model-View-Controller architecture. Model: presents information specific to the user. View: forms suitable interaction. Controller: responds to user actions and invoking changes in the model.

6 Benefits of MVC Web applications responds faster to user input.
Make experience more engaging.

7 Benefits of Bug Hunt Offer challenges in each lesson and provides immediate feedback. Self-paced. Configurable. Automatic student assessment.

8 How Useful is Bug Hunt Instructions Artifacts Feedback Test Assistance
Results

9 Bug Hunt Demo

10 Lesson 1: Concepts and Terminology
Input: 3 4 5 4 4 6 4 6 4

11 Lesson 2: Black-box Testing
Input: 6 4 4 4 3 5 5 3 4 5 3 10 5 10 3 10 5 3 3 a b

12 White Box Testing The inner workings of a program
Tests the functionality of a program No access to the requirements specification The code is the primary source of information to find faults The goal is to discover faults by creating a test suite that executes as many lines of code as is possible

13 White Box Testing

14 Testing Automation and Efficiency; JUnit
JUnit is a unit testing framework to implement and automate unit tests for Java programs The challenge is to find as many program faults as possible by using the fewest number of test cases

15 Testing Automation and Efficiency; JUnit

16 Students Performance Report

17 Challenges and Mechanisms
Lesson 1 Find the specific fault Clued requirements and source code Lesson 2 Exercise all classes of program outputs Bar graph of fault distribution according to exercised output Lesson 3 Cover all executable statements in the code Annotated and colored code structure representing coverage Lesson 4 Select enough tests to maintain fault detection effectiveness Test case selection device and Junit test suite

18 Feedback Mechanisms Test Log Widget Faults Summaries Follow-up
Not well-specified test, the test is returned by the server and marked as invalid in the Test Execution Log Widget As tests are executing, the distinctive lesson feedback widget is updated Faults Newly exposed faults are distinguished from the ones already found Summaries Individual student results are presented in the form of a “Lesson Summary” Follow-up Encouraging further practice and experimentation by ing a package containing the program source code, the JUnit test cases, and a JUnit test driver class

19 Student Survey 77% strongly agreed that Bug Hunt added significant value to the material presented on software testing 56% strongly agreed that Bug Hunt could totally replace the lectures on testing 66% strongly agreed that Bug Hunt taught them useful concepts for their future assignments 32% found the white box testing lesson to be the most interesting and valuable 27% thought that Junit was the most interesting

20 Thank You


Download ppt "Presented by: Edfan Tjandra Alireza Behrouzi Shad"

Similar presentations


Ads by Google