Unit Testing & Testability
|
|
- Imogene Haynes
- 5 years ago
- Views:
Transcription
1 CMPT 473 Software Quality Assurance Unit Testing & Testability Nick Sumner - Fall 2014
2 Levels of Testing Recall that we discussed different levels of testing for test planning: Unit Tests Integration Tests System Tests 2
3 Levels of Testing Recall that we discussed different levels of testing for test planning: Unit Tests Integration Tests System Tests The simplest of these is Unit Testing Testing the smallest possible fragments of a program 3
4 Unit Testing Try to ensure that the functionality of each component works in isolation 4
5 Unit Testing Try to ensure that the functionality of each component works in isolation Unit Test a car: Wheels work. Steering wheel works... 5
6 Unit Testing Try to ensure that the functionality of each component works in isolation Unit Test a car: Wheels work. Steering wheel works... Integration Test a car: Steering wheel turns the wheels... 6
7 Unit Testing Try to ensure that the functionality of each component works in isolation Unit Test a car: Wheels work. Steering wheel works... Integration Test a car: Steering wheel turns the wheels... System Test a car: Driving down the highway with the air conditioning on works... 7
8 Unit Testing Try to ensure that the functionality of each component works in isolation Unit Test a car: Wheels work. Steering wheel works... Integration Test a car: Steering wheel turns the wheels... System Test a car: Driving down the highway with the air conditioning on works... Not testing how well things are glued together. 8
9 Unit Testing Try to ensure that the functionality of each component works in isolation Unit Test a car: Wheels work. Steering wheel works... Integration Test a car: Steering wheel turns the wheels... System Test a car: Driving down the highway with the air conditioning on works... Not testing how well things are glued together. Why? How is this beneficial? 9
10 Unit Tests A dual view: They specify the expected behavior of individual components 10
11 Unit Tests A dual view: They specify the expected behavior of individual components An executable specification 11
12 Unit Tests A dual view: They specify the expected behavior of individual components An executable specification Can even be built first & used to guide development Usually called Test Driven Development 12
13 Unit Tests A dual view: They specify the expected behavior of individual components An executable specification Can even be built first & used to guide development Usually called Test Driven Development Have any of you experienced this in your jobs? 13
14 Unit Tests Some guiding principles: Focus on one component in isolation Be simple to set up & run Be easy to understand 14
15 Unit Tests Some guiding principles: Focus on one component in isolation Be simple to set up & run Be easy to understand Usually managed by some automating framework 15
16 Unit Tests Some guiding principles: Focus on one component in isolation Be simple to set up & run Be easy to understand Usually managed by some automating framework What frameworks have you used to write unit tests? 16
17 JUnit Widely used unit testing framework for Java And I know that you should have seen it before 17
18 JUnit Widely used unit testing framework for Java And I know that you should have seen it before We'll use it to drive our discussion, but its features exist in other frameworks, too. What features do your unit testing frameworks provide? 18
19 JUnit Basic Features 19
20 JUnit Basic Features Per class set up & tear 20
21 JUnit Basic Features Per class set up & tear Per test set up & tear 21
22 JUnit Basic Features Per class set up & tear Per test set up & tear Test identification & (expected=exception.class) (timeout=100) 22
23 JUnit Basic Features Per class set up & tear Per test set up & tear Test identification & (expected=exception.class) (timeout=100) Test 23
24 JUnit Basic Features Per class set up & tear Per test set up & tear Test identification & (expected=exception.class) (timeout=100) Test Expectations assertequals, asserttrue, assertfalse, assertnull,... 24
25 JUnit Let's work through a simple example (There shouldn't be anything new here, but it should be a refresher if you haven't seen it in awhile) 25
26 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? 26
27 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? Dependencies Connections between classes 27
28 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? Dependencies Connections between classes Singletons 28
29 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? Dependencies Connections between classes Singletons Nondeterminism 29
30 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? Dependencies Connections between classes Singletons Nondeterminism Static binding 30
31 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? Dependencies Connections between classes Singletons Nondeterminism Static binding Mixing construction & application logic... 31
32 Testability What makes testing hard? Not just difficult to get adequacy What makes it difficult to write tests? Dependencies Connections between classes Singletons Nondeterminism Static binding Mixing construction & application logic... But solutions exist! You can design code to be testable! 32
33 Testability (by example) Let's work together to improve some difficult to test code... 33
34 Testability Keys things to notice: Mocks & stubs allow us to isolate components under test 34
35 Testability Keys things to notice: Mocks & stubs allow us to isolate components under test Dependency Injection allows us to use mocks and stubs as necessary 35
36 Testability Keys things to notice: Mocks & stubs allow us to isolate components under test Dependency Injection allows us to use mocks and stubs as necessary But doing this can lead to a lot more work and boilerplate code when written by hand 36
37 Testability Keys things to notice: Mocks & stubs allow us to isolate components under test Dependency Injection allows us to use mocks and stubs as necessary But doing this can lead to a lot more work and boilerplate code when written by hand Given dependency injection, what happens to the way we create objects? 37
38 Testability Keys things to notice: Mocks & stubs allow us to isolate components under test Dependency Injection allows us to use mocks and stubs as necessary But doing this can lead to a lot more work and boilerplate code when written by hand Given dependency injection, what happens to the way we create objects? How might we mitigate boilerplate issues? 38
39 Mocking Framework Example Frameworks exist that can automate the boilerplate behind: 39
40 Mocking Framework Example Frameworks exist that can automate the boilerplate behind: Mocking e.g. Mockito, Jmock, etc. [DEMO] 40
41 Mocking Framework Example Frameworks exist that can automate the boilerplate behind: Mocking e.g. Mockito, Jmock, etc. Dependency Injection e.g. Google Guice, Pico Container, etc. 41
CSCE 747 Unit Testing Laboratory Name(s):
CSCE 747 Unit Testing Laboratory Name(s): You have been hired to test our new calendar app! Congrats!(?) This program allows users to book meetings, adding those meetings to calendars maintained for rooms
More informationPhilosophy of Unit Testing
Unit Testing in.net Philosophy of Unit Testing What? Where? Why? How? What it is not? Test individual components (units) in isolation isolate and validate verify to confirm preexisting specification. Inputs
More informationBinghamton University. CS-140 Fall Unit Testing
Unit Testing 1 Test Early, Test Often 2 Informal Unit Testing public static void main(string[] args) { Rectangle rect = new Rectangle ( new Point(20,30), 20,40 ); System.out.println("Created " + rect);
More informationBinghamton University. CS-140 Fall Unit Testing
Unit Testing 1 Test Early, Test Often 2 Informal Unit Testing package lab05; import java.lang.illegalargumentexception; public class ProfTest { public static void main(string[] args) { System.out.println("Professor
More informationAccessibility. Adding features to support users with impaired vision, mobility, or hearing
Accessibility Adding features to support users with impaired vision, mobility, or hearing TalkBack TalkBack is an Android screen reader made by Google. It speaks out the contents of a screen based on what
More informationTutorial 3: Unit tests and JUnit
Tutorial 3: Unit tests and JUnit Runtime logic errors, such as contract violations, are among the more frequent in a poorly debugged program. Logic error should be fixed. However, to fix an error we need
More informationObject Oriented Software Design - I
Object Oriented Software Design - I Unit Testing Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa November 28, 2011 G. Lipari (Scuola Superiore Sant Anna) Unit Testing November
More informationTest Execution and Automation. CSCE Lecture 15-03/20/2018
Test Execution and Automation CSCE 747 - Lecture 15-03/20/2018 Executing Tests We ve covered many techniques to derive test cases. How do you run them on the program? You could run the code and check results
More informationUnit testing basics & more...
Unit testing basics & more... by Papapetrou P.Patroklos Twitter hashtag : Thessaloniki Java Meetup - December 2014 Agenda Unit testing introduction Differences with other types of tests Key concepts Rules
More informationJUnit tes)ng. Elisa Turrini
JUnit tes)ng Elisa Turrini Automated Tes)ng Code that isn t tested doesn t work Code that isn t regression tested suffers from code rot (breaks eventually) If it is not automated it is not done! Boring
More informationTest-Driven Development JUnit
Test-Driven Development JUnit Click to edit Master EECS text 2311 styles - Software Development Project Second level Third level Fourth level Fifth level Wednesday, January 24, 2018 1 Unit Testing Testing
More informationREPAST MODEL TESTING GUIDE
REPAST MODEL TESTING GUIDE JONATHAN OZIK, NICK COLLIER - REPAST DEVELOPMENT TEAM 0. Before we Get Started Before we can do anything with Repast Simphony, we need to make sure that we have a proper installation
More informationJUnit Framework. Terminology: assertions, annotations, fixtures. Dr. Siobhán Drohan Mairead Meagher. Produced by:
JUnit Framework Terminology: assertions, annotations, fixtures Produced by: Dr. Siobhán Drohan Mairead Meagher Department of Computing and Mathematics http://www.wit.ie/ Topic List General Terminology
More informationIntroduction to Software Engineering: Tools and Environments. Session 5. Oded Lachish
Introduction to Software Engineering: Tools and Environments Session 5 Oded Lachish Room: Mal 405 Visiting Hours: Wednesday 17:00 to 20:00 Email: oded@dcs.bbk.ac.uk Module URL: http://www.dcs.bbk.ac.uk/~oded/tools2012-2013/web/tools2012-2013.html
More informationTest-Driven Development JUnit
Test-Driven Development JUnit Click to edit Master EECS text 2311 styles - Software Development Project Second level Third level Fourth level Fifth level Wednesday, January 18, 2017 1 Simulator submission
More informationTesting on Android. Mobile Application Development. Jakob Mass MTAT Fall MTAT
Testing on Android Mobile Application Development MTAT.03.262 2017 Fall Jakob Mass jakob.mass@ut.ee Introduction. Perfect codewriting...or? Conventional (unit) Java testing with JUnit How is mobile/android
More informationJUnit + JMock Tomáš Soukup
JUnit + JMock 29.11.2011 Tomáš Soukup JUnit - intro Java framework for creating and running unit tests Test case method 1 public(protected) method 1+ test methods Test suite class set of test cases (methods)
More informationTesting. Technion Institute of Technology Author: Assaf Israel. Author: Assaf Israel - Technion
Testing Technion Institute of Technology 236700 1 Author: Assaf Israel Why test? Programming is incremental by nature We want to verify we haven t broken anything Tests not only examine the code s functionality
More informationJunit Overview. By Ana I. Duncan
Junit Overview By Ana I. Duncan 1 What Is Junit Why Junit, Why test? Junit Lifecycle Junit Examples from CM Other Testing frameworks Resources Before After Agenda 2 JUnit is a member of the xunit testing
More informationJUnit in EDA Introduction. 2 JUnit 4.3
Lunds tekniska högskola Datavetenskap, Nov 25, 2010 Görel Hedin EDA260 Programvaruutveckling i grupp projekt Labb 3 (Test First): Bakgrundsmaterial JUnit in EDA260 1 Introduction The JUnit framework is
More informationTopics covered. Introduction to JUnit JUnit: Hands-on session Introduction to Mockito Mockito: Hands-on session. JUnit & Mockito 2
JUnit & Mockito 1 Topics covered Introduction to JUnit JUnit: Hands-on session Introduction to Mockito Mockito: Hands-on session JUnit & Mockito 2 Introduction to JUnit JUnit & Mockito 3 What is JUnit?
More informationProgrammieren II. Unit Testing & Test-Driven Development. Alexander Fraser.
Programmieren II Unit Testing & Test-Driven Development Alexander Fraser fraser@cl.uni-heidelberg.de (Based on material from Lars Vogel and T. Bögel) July 2, 2014 1 / 62 Outline 1 Recap 2 Testing - Introduction
More informationCS201 - Assignment 3, Part 1 Due: Friday February 28, at the beginning of class
CS201 - Assignment 3, Part 1 Due: Friday February 28, at the beginning of class One of the keys to writing good code is testing your code. This assignment is going to introduce you and get you setup to
More informationCMPT 473 Software Quality Assurance. Security. Nick Sumner - Fall 2014
CMPT 473 Software Quality Assurance Security Nick Sumner - Fall 2014 Basic Security What are attributes of a secure program? CIA 2 Basic Security What are attributes of a secure program? CIA (C)onfidentiality
More informationUnit Testing. SWEN-610 Foundations of Software Engineering. Department of Software Engineering Rochester Institute of Technology
Unit Testing SWEN-610 Foundations of Software Engineering Department of Software Engineering Rochester Institute of Technology There are many levels of software testing. The developer of the software has
More informationThe Art of Unit Testing
The Art of Unit Testing with Examplee in.net Roy Oeberove 11 MANNING Greenwich (74 w. long.) Contents foreword t xv preface xvii acknowledgments xix about this book xx about the cover illustration XXIII
More informationInput Space Partitioning
CMPT 473 Software Quality Assurance Input Space Partitioning Nick Sumner - Fall 2014 With material from Patrick Lam, Jeff Offutt Recall Testing involves running software and comparing observed behavior
More informationGood Luck! CSC207, Fall 2012: Quiz 3 Duration 25 minutes Aids allowed: none. Student Number: Lecture Section: L0101. Instructor: Horton
CSC207, Fall 2012: Quiz 3 Duration 25 minutes Aids allowed: none Student Number: Last Name: Lecture Section: L0101 First Name: Instructor: Horton Please fill out the identification section above as well
More informationEmbracing. with. Noopur Gupta. Eclipse JDT co-lead. IBM
Embracing Noopur Gupta Eclipse JDT co-lead IBM India with noopur_gupta@in.ibm.com @noopur2507 1 JUnit Framework JUnit 4.0 Released in 2006 JUnit 5.0 Released in September 2017 The top 20 Java libraries
More informationUnit Testing. SWEN-261 Introduction to Software Engineering. Department of Software Engineering Rochester Institute of Technology
Unit Testing SWEN-261 Introduction to Software Engineering Department of Software Engineering Rochester Institute of Technology There are many levels of software testing. The developer of the software
More informationUnit Testing and JUnit
Unit Testing and JUnit Moinul Hossain CS 791Z 03/02/2015 Outline What is Software Testing? What and Why Unit Testing? JUnit JUnit features and Examples Test Driven Development (TDD) What is Software Testing?
More informationProgram Analysis Tools
CMPT 473 Software Quality Assurance Program Analysis Tools Nick Sumner Fixing bugs is costly Why? 2 Fixing bugs is costly The longer broken code exists, the more code depends upon it. 3 Fixing bugs is
More informationFinatra: Fast, Testable, Scala Services. Steve Cosenza Finatra & Data API Tech
Finatra: Fast, Testable, Scala Services Steve Cosenza Finatra & Data API Tech Lead @scosenza + = FINAGLE SINATRA FINATRA Finagle is an extensible remote procedure call system for the JVM, used to construct
More informationEnterprise Java Development using JPA, Hibernate and Spring. Srini Penchikala Detroit JUG Developer Day Conference November 14, 2009
Enterprise Java Development using JPA, Hibernate and Spring Srini Penchikala Detroit JUG Developer Day Conference November 14, 2009 About the Speaker Enterprise Architect Writer, Speaker, Editor (InfoQ)
More informationJVA-117A. Spring-MVC Web Applications
JVA-117A. Spring-MVC Web Applications Version 4.2 This course enables the experienced Java developer to use the Spring application framework to manage objects in a lightweight, inversion-of-control container,
More informationAdvanced Software Engineering
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Advanced Software Engineering Implementation and Maintenance Prof. Agostino Poggi Implementation
More informationJust Mock It! Leveraging Mock Objects
Just Mock It! Leveraging Mock Objects 1 Who am I? Luis Majano - Computer Engineer Born in San Salvador, El Salvador --> President of Ortus Solutions Manager of the IECFUG (www.iecfug.com) Creator of ColdBox,
More informationCS410J: Advanced Java Programming
CS410J: Advanced Java Programming The Dependency Injection design pattern decouples dependent objects so that they may be configured and tested independently. Google Guice manages dependencies among objects
More informationPieter van den Hombergh Stefan Sobek. April 18, 2018
Pieter van den Hombergh Stefan Sobek Fontys Hogeschool voor Techniek en Logistiek April 18, 2018 /FHTenL April 18, 2018 1/13 To mock or not to mock In many cases, a class (system under test or SUT) does
More informationInput Space Partitioning
CMPT 473 Software Quality Assurance Input Space Partitioning Nick Sumner Recall Testing involves running software and comparing observed behavior against expected behavior Select an input, look at the
More informationCSCI 2600: Principles of Software. Spring 2017 Lecture 01 Bill Thompson
CSCI 2600: Principles of Software Spring 2017 Lecture 01 Bill Thompson thompw4@rpi.edu https://www.cs.rpi.edu/~thompw4/csci-2600/spring2017/ Thanks Much of the material in this course comes from Prof.
More informationAgenda. JUnit JaCoCo Project. CSE 4321, Jeff Lei, UTA
Agenda JUnit JaCoCo Project 1 JUnit Introduction A JUnit Example Major APIs Practical Tips 2 Unit Testing Test individual units of source code in isolation Procedures, functions, methods, and classes Engineers
More informationCroquet. William R. Speirs, Ph.D. Founder & CEO of Metrink
Croquet William R. Speirs, Ph.D. (wspeirs@metrink.com) Founder & CEO of Metrink About Me BS in CS from Rensselaer; PhD from Purdue Founder and CEO of Metrink (www.metrink.com) Simple yet powerful query
More informationMock Objects and Distributed Testing
Mock Objects and Distributed Testing Making a Mockery of your Software Brian Gilstrap Once, said the Mock Turtle at last, with a deep sigh, I was a real Turtle. (Alice In Wonderland, Lewis Carroll) The
More informationUnit testing. JUnit. JUnit and Eclipse. A JUnit test class 3/6/17. A method is flagged as a JUnit test case.
Unit testing JUnit ENGI 5895 unit testing: Looking for errors in a subsystem in isolation. Generally a "subsystem" means a particular class or object. The Java library JUnit helps us to easily perform
More informationUnit Testing : Software Testing
Unit Testing 219343: Software Testing Some materials are from Alberto Savoia's slides on unit testing, George Necula's software engineering course, and Hunt and Thomas, Pragmatic Unit Testing, 2003. 11/24/07
More informationDefining Classes and Methods
Defining Classes and Methods Chapter 5 Information Hiding, Encapsulation: Outline Information Hiding Pre- and Postcondition Comments The public and private Modifiers Methods Calling Methods Encapsulation
More informationWant Better Software? TEST it! (and thenwrite it) Tame defects before they appear You Rise/Bugs Fall
Want Better Software? TEST it! (and thenwrite it) Tame defects before they appear You Rise/Bugs Fall Introduction TDD had its origins as an integral part of Extreme Programming TDD, BDD, DDD and the coming
More informationTrusted Components. Bertrand Meyer, Manuel Oriol. Lecture 7: Testing Object-Oriented Software. Ilinca Ciupa, Andreas Leitner, Bertrand Meyer
Trusted Components Bertrand Meyer, Manuel Oriol Lecture 7: Testing Object-Oriented Software Ilinca Ciupa, Andreas Leitner, Bertrand Meyer A (rather unorthodox) introduction (1) (Geoffrey James The Zen
More informationEffective Unit Testing
Effective Unit Testing A guide forjava developers LASSE KOSKELA 11 MANNING Shelter Island contents xv preface acknowledgments xvii about this book xix about the cover illustration xxiv Part 1 Foundations
More informationEECS 4313 Software Engineering Testing
EECS 4313 Software Engineering Testing Topic 03: Test automation / JUnit - Building automatically repeatable test suites Zhen Ming (Jack) Jiang Acknowledgement Some slides are from Prof. Alex Orso Relevant
More informationUnit testing. unit testing: Looking for errors in a subsystem in isolation. The basic idea: JUnit provides "assert" commands to help us write tests.
JUnit ENGI 5895 Adapted from slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/ 1 Unit testing unit testing: Looking
More informationSoftware Development Tools. COMP220/COMP285 Sebastian Coope Eclipse and JUnit: Creating and running a JUnit test case
Software Development Tools COMP220/COMP285 Sebastian Coope Eclipse and JUnit: Creating and running a JUnit test case These slides are mainly based on Java Development with Eclipse D.Gallardo et al., Manning
More informationEx 1. public float temperature(float powsupply, float clock, char cooler)
Black box & Junit Ex 1 public float temperature(float powsupply, float clock, char cooler) A Java method estimates a CPU temperature according to: power supply 1.5...1.8 (steps of 0.1 V) clock, between
More informationTest automation / JUnit. Building automatically repeatable test suites
Test automation / JUnit Building automatically repeatable test suites Test automation n Test automation is software that automates any aspect of testing n Generating test inputs and expected results n
More informationTest automation Test automation / JUnit
Test automation Test automation / JUnit Building automatically repeatable test suites Test automation is software that automates any aspect of testing Generating test inputs and expected results Running
More informationSoftware-Architecture Unit Testing (JUnit)
Software-Architecture Unit Testing (JUnit) Prof. Dr. Axel Böttcher 10. Oktober 2011 Objectives Understand the concept of unit testing Know how to write unit tests Know when to write unit tests Why Unit-Testing?
More informationAndroid Best Practices
Android Best Practices Agenda Introduction The clean architecture Testing Support library Libraries we can depend on What's next Introduction Introduction Android Studio Gradle Material Design Lollipop
More informationGuice. Java DI Framework
Guice Java DI Framework Agenda Intro to dependency injection Cross-cutting concerns and aspectoriented programming More Guice What is DI? Dependency injection is a design pattern that's like a "super factory".
More informationSOFTWARE QUALITY ASSURANCE TOOLS & TECHNOLOGY PROFESSIONAL SERVICES ACADEMY. Feature Brief. Wrapping
SOFTWARE QUALITY ASSURANCE TOOLS & TECHNOLOGY PROFESSIONAL SERVICES ACADEMY P a g e 1 Feature Brief Wrapping Cantata provides a full and unique suite of intelligent testing capabilities accelerating unit
More informationUnit Testing. CS 240 Advanced Programming Concepts
Unit Testing CS 240 Advanced Programming Concepts F-22 Raptor Fighter 2 F-22 Raptor Fighter Manufactured by Lockheed Martin & Boeing How many parts does the F-22 have? 3 F-22 Raptor Fighter What would
More informationDealing with Legacy Code. Sebastian Bergmann October 28 th 2014
Dealing with Legacy Code Sebastian Bergmann October 28 th 2014 Sebastian Bergmann Driven by his passion to help developers build better software. sharing experience Legacy Code "Legacy code is code that
More informationChris Donnan & Solomon Duskis
The Peer Frameworks Series -.Net and Java Spring Framework Developer Session Chris Donnan & Solomon Duskis All Rights Reserved 0 Overview 600-630 Light Snack 630 700 Introduction to Inversion of Control,
More informationDon t give up on mocking
Don t give up on mocking - Why do people give up? - Mocking: the big step from classic way of testing - Let s take a step back and don t give up! by Szczepan Faber (a certified mock tamer) Interaction
More informationJVA-117E. Developing RESTful Services with Spring
JVA-117E. Developing RESTful Services with Spring Version 4.1 This course enables the experienced Java developer to use the Spring MVC framework to create RESTful web services. We begin by developing fluency
More informationSoftware Engineering
Software Engineering Lecture 13: Testing and Debugging Testing Peter Thiemann University of Freiburg, Germany SS 2014 Recap Recap Testing detect the presence of bugs by observing failures Recap Testing
More informationAgile Software Development. Lecture 7: Software Testing
Agile Software Development Lecture 7: Software Testing Mahmoud El-Gayyar elgayyar@ci.suez.edu.eg Slides are a modified version of the slides by Prof. Kenneth M. Anderson Outline Testing Terminology Types
More informationCS211 Computers and Programming Matthew Harris and Alexa Sharp July 9, Boggle
Boggle If you are not familiar with the game Boggle, the game is played with 16 dice that have letters on all faces. The dice are randomly deposited into a four-by-four grid so that the players see the
More informationMOCKING TO FACILITATE UNIT TESTING. Abstract
MOCKING TO FACILITATE UNIT TESTING Abstract Unit Testing is easy if the object you're testing has no dependencies. In reality, however, objects have dependencies, often making it di!cult, if not impossible,
More informationTest suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at
JUnit Test suites Obviously you have to test your code to get it working in the first place You can do ad hoc testing (testing whatever occurs to you at the moment), or You can build a test suite (a thorough
More informationTechnical Debt in Eclipse Development. Eclipse Con France 2018
Technical Debt in Eclipse Development Eclipse Con France 2018 13 June 2018 Table of content I - Technical debt in your RCP application 5, June 2018 3 Technical debt in your RCP application I- I Who?
More informationSTQA Mini Project No. 1
STQA Mini Project No. 1 R (2) C (4) V (2) T (2) Total (10) Dated Sign 1.1 Title Mini-Project 1: Create a small application by selecting relevant system environment/ platform and programming languages.
More informationUtilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process
Utilizing Fast Testing to Transform Java Development into an Agile, Quick Release, Low Risk Process Introduction System tests, often called slow tests, play a crucial role in nearly every Java development
More informationHow we reached 0 technical debt in our Eclipse project
How we reached 0 technical debt in our Eclipse project Lorenzo Bettini Dip. DISIA, University of Firenze, Italy Vincenzo Caselli, Francesco Guidieri RCP-Vision, Firenze, Italy EclipseCon Europe, 2016 Our
More informationJunit. Presentation & Tools (Eclipse, Maven, Mockito, Spring)
Junit Presentation & Tools (Eclipse, Maven, Mockito, Spring) arnaud.nauwynck@gmail.com This document: http://arnaud-nauwynck.github.io/lessons/coursiut-junit.pdf What is Junit? Wikipedia JUnit Junit birth
More informationRobertaLab: Configuration, Architecture, Frameworks, Design
Roberta Seite 1 RobertaLab: Configuration, Architecture, Frameworks, Design reinhard.budde at iais.fraunhofer.de version 0.3 002014 12:57 Overview The system consists out of three distributed components,
More informationJunit 5 and Sling/AEM Mocks
APACHE SLING & FRIENDS TECH MEETUP 10-12 SEPTEMBER 2018 Junit 5 and Sling/AEM Mocks Stefan Seifert, pro!vision GmbH About the Speaker AEM Developer Apache Sling PMC CTO of pro!vision GmbH Stefan Seifert
More informationMotivating Example: Two Types of Errors (2) Test-Driven Development (TDD) with JUnit. Motivating Example: Two Types of Errors (1)
Motivating Example: Two Types of Errors (2) Test-Driven Development (TDD) with JUnit EECS2030 B: Advanced Object Oriented Programming Fall 2018 CHEN-WEI WANG Approach 1 Specify: Indicate in the method
More informationTest Case Generation Based on Sequence Diagrams
Test Case Generation Based on Sequence Diagrams Yao-Cheng Lei Nai-Wei Lin Department of Computer Science and Information Engineering National Chung Cheng University Chiayi, Taiwan 621, R.O.C. {lyc94,naiwei}@cs.ccu.edu.tw
More informationInheritance and Testing Spring 2018 Exam Prep 4: February 11, 2019
CS 61B Inheritance and Testing Spring 2018 Exam Prep 4: February 11, 2019 1 Playing with Puppers Suppose we have the Dog and Corgi classes which are a defined below with a few methods but no implementation
More informationSoftware LEIC/LETI. Lecture 5
Software Engineering @ LEIC/LETI Lecture 5 Last Lecture Verification and Validation Reviews and Inspections Software Testing Coverage Statement, branch, and path coverage Equivalence partitioning Boundary
More informationTest-Driven Development (TDD) with JUnit
Test-Driven Development (TDD) with JUnit EECS2030 B: Advanced Object Oriented Programming Fall 2018 CHEN-WEI WANG Motivating Example: Two Types of Errors (1) Consider two kinds of exceptions for a counter:
More informationNo Source Code. EEC 521: Software Engineering. Specification-Based Testing. Advantages
No Source Code : Software Testing Black-Box Testing Test-Driven Development No access to source code So test cases don t worry about structure Emphasis is only on ensuring that the contract is met Specification-Based
More information"Charting the Course... Comprehensive Angular. Course Summary
Description Course Summary Angular is a powerful client-side JavaScript framework from Google that supports simple, maintainable, responsive, and modular applications. It uses modern web platform capabilities
More informationAdd some spice to your application! (using EMF Parsley in your UI)
Add some spice to your application! (using EMF Parsley in your UI) Lorenzo Bettini Francesco Guidieri Vincenzo Caselli EclipseCon Europe 2013 About us Lorenzo Bettini Dip. Informatica, Univ. Torino, Italy
More informationUnit Testing with JUnit in DrJava *
OpenStax-CNX module: m11707 1 Unit Testing with JUnit in DrJava * Stephen Wong Dung Nguyen This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 1.0 Object oriented
More informationSection 4: Graphs and Testing. Slides by Erin Peach and Nick Carney
Section 4: Graphs and Testing Slides by Erin Peach and Nick Carney with material from Vinod Rathnam, Alex Mariakakis, Krysta Yousoufian, Mike Ernst, Kellen Donohue AGENDA Graphs JUnit Testing Test Script
More informationFramework for Enhancing the Performance of Unit Testing in Java Based Projects
Framework for Enhancing the Performance of Unit Testing in Java Based Projects Thesis submitted in partial fulfillment of the requirements for the award of degree of Master of Engineering in Computer Science
More informationMore About Objects and Methods
More About Objects and Methods Chapter 6 Objectives Define and use constructors Write and use static variables and methods Use methods from class Math Use predefined wrapper classes Use stubs, drivers
More informationSection 4: Graphs and Testing
Section 4: Graphs and Testing Slides by Kevin Pusich and Cody Kesting with material from Erin Peach and Nick Carney, Vinod Rathnam, Alex Mariakakis, Krysta Yousoufian, Mike Ernst, Kellen Donohue Agenda
More informationApplying Unit Tests & Test-Driven Development
Applying Unit Tests & Test-Driven Development Don.McGreal@ImprovingEnterprises.com @donmcgreal linkedin.com/in/donmcgreal The Plan... Unit Testing Test Driven Development Behavior Driven Development Getting
More informationBlack Box Testing. EEC 521: Software Engineering. Specification-Based Testing. No Source Code. Software Testing
Black Box Testing EEC 521: Software Engineering Software Testing Black-Box Testing Test-Driven Development Also known as specification-based testing Tester has access only to running code and the specification
More informationProduced by. Mobile Application Development. Higher Diploma in Science in Computer Science. John Fitzgerald
Mobile Application Development Higher Diploma in Science in Computer Science Produced by John Fitzgerald (jfitzgerald@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology
More informationSection 4: Graphs and Testing
Section 4: Graphs and Testing Slides by Erin Peach and Nick Carney with material from Vinod Rathnam, Alex Mariakakis, Krysta Yousoufian, Mike Ernst, Kellen Donohue AGENDA Graphs JUnit Testing Test Script
More informationLaravel: From Apprentice To Artisan
Laravel: From Apprentice To Artisan Advanced Architecture With Laravel 4 Taylor Otwell This book is for sale at http://leanpub.com/laravel This version was published on 2013-09-04 This is a Leanpub book.
More informationChecking Current Code Coverage
Junit Tests Checking Current Code Coverage We use onap Sonar to track code coverage (sonar.onap.org) To see the appc coverage, click on the appc project on the front page (make sure you choose the most
More informationUnit tests. Paulo Cheque. Summer License: Creative Commons: Attribution-Share Alike 3.0 Unported
Unit tests Paulo Cheque Summer 2009 License: Creative Commons: Attribution-Share Alike 3.0 Unported http://creativecommons.org/licenses/by-sa/3.0/ Types of tests Unit: Class/Module or Method/Function Tests
More informationCSE 331. Unit Testing with JUnit
CSE 331 Unit Testing with JUnit slides created by Marty Stepp based on materials by M. Ernst, S. Reges, D. Notkin, R. Mercer, Wikipedia http://www.cs.washington.edu/331/ 1 Bugs and testing software reliability:
More informationDependency Injection with Guice
Author: Assaf Israel - Technion 2013 Dependency Injection with Guice Technion Institute of Technology 236700 1 Complex Dependency Injection Deep dependencies (with no default) A depends on B, which depends
More informationCISC 181 Lab 2 (100 pts) Due: March 4 at midnight (This is a two-week lab)
CISC 181 Lab 2 (100 pts) Due: March 4 at midnight (This is a two-week lab) This lab should be done individually. Labs are to be turned in via Sakai by midnight on Tuesday, March 4 (the midnight between
More information