Presented by: Edfan Tjandra Alireza Behrouzi Shad

Slides:



Advertisements
Similar presentations
Qwizdoms Rapid Learning Environment (RLE) helps accelerate and improve learning through the use of interactive software, instant feedback, and Click Play.
Advertisements

Software change management
Configuration management
Software Testing. Quality is Hard to Pin Down Concise, clear definition is elusive Not easily quantifiable Many things to many people You'll know it when.
Test Yaodong Bi.
DETAILED DESIGN, IMPLEMENTATIONA AND TESTING Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
CS527: Advanced Topics in Software Engineering (Software Testing and Analysis) Darko Marinov September 18, 2008.
2004 Cross-Platform Automated Regression Test Framework Ramkumar Ramalingam, Rispna Jain IBM Software Labs, India.
WISTPC-09 : Session A Tariq M. King PhD Candidate Florida International University Workshop on Integrating Software Testing into Programming.
Development of a Web Based B&B Reservation System Elizabeth Gates 22July04.
DAIMI(c) Henrik Bærbak Christensen1 JUnit A tool for test case management.
Quality is about testing early and testing often Joe Apuzzo, Ngozi Nwana, Sweety Varghese Student/Faculty Research Day CSIS Pace University May 6th, 2005.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
Introduction : ‘Skoll: Distributed Continuous Quality Assurance’ Morimichi Nishigaki.
Course Instructor: Aisha Azeem
Software Testing Prasad G.
Integrating Educational Technology into Teaching Integrating Instructional Software into Teaching & Learning.
Configuration Management
© Company Confidentialwww.itcinfotech.com Business Case for Test Automation S.Janardhanan Chief Technology Officer ITC Infotech India Limited Business.
© 2006, Cognizant Technology Solutions. All Rights Reserved. The information contained herein is subject to change without notice. Automation – How to.
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
Model Bank Testing Accelerators “Ready-to-use” test scenarios to reduce effort, time and money.
An Introduction to MBT  what, why and when 张 坚
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Class Specification Implementation Graph By: Njume Njinimbam Chi-Chang Sun.
RUP Implementation and Testing
Testovid - an environment for testing almost any aspect of student assignments I. Pribela, S. Tošić, M. Ivanović, Z. Budimac Risan, September 2007.
Testing Basics of Testing Presented by: Vijay.C.G – Glister Tech.
Dakota State University.
CSE403 Software Engineering Autumn 2001 More Testing Gary Kimura Lecture #10 October 22, 2001.
Well-behaved objects Main concepts to be covered Testing Debugging Test automation Writing for maintainability Objects First with Java - A Practical.
Unit Testing with JUnit and Clover Based on material from: Daniel Amyot JUnit Web site.
Configuration Management CSCI 5801: Software Engineering.
(1) Introduction to Continuous Integration Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of.
(1) Introduction to Continuous Integration Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of.
Software Quality Assurance and Testing Fazal Rehman Shamil.
1 COS 260 DAY 15 Tony Gauvin. 2 Agenda Questions? 6 th Mini quiz Today –Chapter 6 Assignment 4 posted –Due Nov 9 Capstone progress reports are due –Brief.
A Framework for Automated and Composable Testing of Component-based Services Miguel A. Jiménez, Ángela Villota, Norha M. Villegas, Gabriel Tamura, Laurence.
Moon Fleet Management Six Sigma Supervisor: Nguyễn Trường Long Members: - Lê Hoàng - Nguyễn Đăng Phượng - Nguyễn Thanh Tùng - Phạm Phương Duy - Vũ Quang.
SWE 434 SOFTWARE TESTING AND VALIDATION LAB2 – INTRODUCTION TO JUNIT 1 SWE 434 Lab.
J2EE Platform Overview (Application Architecture)
Agenda Code Coverage Where to use Benefits Top Tools.
What is Software Test Automation?
Software engineering Section 2.
Software Verification and Validation
Software Security Testing
Transitional Readiness Review Team 08
Why should we test? How should we test?
Testing in CS1 Lennie Cooper Kevin Lawrence LeAndrew Davis
Introduction to Software Testing
Fundamental Test Process
Software Test Automation and Tools
Objectives In this lesson you will learn about: Need for servlets
Chapter 1 Introduction(1.1)
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Code search & recommendation engines
CSE403 Software Engineering Autumn 2000 More Testing
Automated test.
Java & Testing.
CSE 1020:Software Development
Node.js Test Automation using Oracle Developer Cloud- Simplified
TYPES OF TESTING.
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Testing and Inspection Present and Future
By Hyunsook Do, Sebastian Elbaum, Gregg Rothermel
UNIT TESTING TOOLS Workshop on Integrating Software
Adapting Agile in Pharmaceutical Industries
Automated test.
Integration Testing.
Presentation transcript:

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

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

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

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.

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.

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

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

How Useful is Bug Hunt Instructions Artifacts Feedback Test Assistance Results

Bug Hunt Demo http://esquared.unl.edu/BugHunt/

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

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

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

White Box Testing

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

Testing Automation and Efficiency; JUnit

Students Performance Report

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

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 emailing a package containing the program source code, the JUnit test cases, and a JUnit test driver class

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

Thank You