JUnit. New Opportunities for Testing on the
|
|
- Jonas Clarke
- 6 years ago
- Views:
Transcription
1 JUnit New Opportunities for Testing on the JVM
2 Sam Brannen Spring and Java Consultant Trainer, Coach, Hardcore developer at heart Java Developer for about 20 years Spring Framework Core Committer since 2007 JUnit 5 Core Committer since October 2015
3 Experts in Spring and Enterprise Java Areas of expertise Spring * JUnit 5 Java EE Software Architecture Code Reviews Where you find us Zurich,
4 Agenda Impetus for Change JUnit 5 Spring 5 Q & A
5 Show of hands
6 Why a new version of JUnit?
7 Impetus for Change JUnit 4.0 was released a decade ago a lot has changed since then testing needs have matured expectations have grown Modularity à big ball of mud (i.e., only THE junit.jar) Test discovery and execution à tightly coupled Extensibility à lot of room for improvement Let s not forget Java 8 and Java 9
8 JUnit 4 Runner API Very powerful In fact, it can do anything But you can t combine Runners Parameterized + SpringRunner à no way
9 JUnit 4 Rules are meant to be broken JUnit 4.7: MethodRule JUnit 4.9: TestRule Great for simple use cases Can even be combined But a single rule can t be used for method-level and class-level callbacks Plus zero support for instance-level callbacks Case in point: SpringClassRule / SpringMethodRule
10 JUnit Lambda Crowdfunding Campaign Initiated by Johannes Link and Marc Philipp Later joined by Matthias Merdes, Stefan Bechtold, & Sam Brannen Ran from July to October 2015 Raised 53,937 Euros from 474 individuals and companies 4 companies donated 6 weeks of developer time
11 Thanks!
12 The Kick-off Team
13 JUnit 5
14 Roadmap Prototype à December 2 nd, ALPHA à February 1 st, Milestones à July 2016 July Release Candidates à July 2017 August GA à September 10 th, à Today! (October 3 rd, 2017)
15 JUnit 5 in a Nutshell Modular Extensible Modern Forward and backward compatible JUnit Platform supports JUnit 3.8, JUnit 4, and JUnit 5 New testing frameworks can be run with JUnit 4 infrastructure
16 JUnit 5 Java Versions Java 8 baseline but can be used to test application code compiled against previous JDK versions Java 9 #WorksFineOnJDK9 every artifact has a stable AUTOMATIC-MODULE-NAME module-path scanning support coming in 5.1
17 JUnit 5 = Platform + Jupiter + Vintage JUnit Platform Foundation for launching testing frameworks on the JVM Launcher and TestEngine APIs Revolutionary ConsoleLauncher, Gradle plugin, Maven Surefire provider JUnit Jupiter New programming model and extension model for JUnit 5 Evolutionary JUnit Vintage TestEngine for running JUnit 3 and JUnit 4 based tests Necessary
18 Launcher API Used by IDEs and build tools to launch the framework Central API for discovering and executing tests via one or more engines LauncherDiscoveryRequest selectors and filters Feedback provided via the TestExecutionListener API ConsoleLauncher for command-line support
19 TestEngine API Test engine discovers and executes tests for a particular programming model Automatic registration via Java s ServiceLoader mechanism JupiterTestEngine VintageTestEngine Implement your own
20 Third-party TestEngines Specsy Spek Cucumber Drools Scenario jqwik source:
21 VINTAGE JUPITER THIRD PARTY PLATFORM
22 THIRD PARTY JUPITER VINTAGE PLATFORM
23 IDEs and Build Tools IntelliJ: IDEA Eclipse: NetBeans: Eclipse Oxygen 4.7.1a (to be released next week) Gradle: interim solution from JUnit Team to be taken over by Gradle team (end of 2017) Android JUnit 5: third-party Android support Maven: interim solution from JUnit Team being taken over by Maven Surefire team See user guide and sample apps for examples
24 JUnit Jupiter Extension Model Extension marker interface org.junit.jupiter.api.extension package containing all extension APIs implement as many as you used to register one or more extensions interface, class, or method level o or as a meta-annotation
25 Extension APIs BeforeAllCallback BeforeEachCallback BeforeTestExecutionCallback AfterTestExecutionCallback AfterEachCallback AfterAllCallback Lifecycle Callbacks TestExecutionExceptionHandler ExecutionCondition TestInstancePostProcessor ParameterResolver TestTemplateInvocationContextProvider Dependency Injection
26 JUnit Jupiter Programming Model org.junit.jupiter.api (org.junit.jupiter.params) Annotations and meta-annotations Assertions and Assumptions Custom display names Visibility Tagging Conditional test execution Dependency injection for constructors and methods Lambda expressions and method references Interface default methods Nested test classes Repeated tests, parameterized tests, dynamic tests
27 for TestEngine @Nested / @Disabled
28 JUnit 4 Rule Migration o located in experimental junit-jupiter-migrationsupport module o registers 3 extensions for JUnit Jupiter ExternalResourceSupport o TemporaryFolder, etc. VerifierSupport o ErrorCollector, etc. ExpectedExceptionSupport o ExpectedException o minor bug in 5.0.0; fixed in 5.0.1
29 Assertions org.junit.jupiter.api.assertions Limited set of core assertions assertequals(), assertnotnull(), etc. assertthrows() λ asserttimeout() and asserttimeoutpreemptively() λ assertall() λ Supplier<String> à λ for lazy failure message evaluation message is now the last parameter For more power, use AssertJ, Hamcrest, etc.
30 Assumptions org.junit.jupiter.api.assumptions Limited set of core assumptions For aborting tests mid-flight Otherwise, favor a custom ExecutionCondition for skipping assumetrue() / assumefalse() BooleanSupplier, Supplier<String> λ assumingthat(?, () -> {} ); λ
31 LIVE CODING DEMO from JUnit 4 to JUnit Jupiter
32 Tagging on a test interface, class, void myfasttest() { }
33 Custom Tags as @Tag("fast") Fast void myfasttest() {}
34 Composed Tags as a meta-annotation with other annotations (JUnit, FastTest { void myfasttest() { }
35 Test Names Names default to test class or test method names characters limited based on Java syntax Custom display names Can contain spaces, special chars, and even emoji
36 Dependency Injection Extension Model meets Programming Model ParameterResolver extension API resolves parameters for constructors or method o not and lifecycle methods can register multiple simultaneously only one wins Use cases server URL, DataSource, Spring ApplicationContext, etc.
37 TestInfo TestInfo: inject etc. access display name, tags, class, method TestInfoParameterResolver eating our own dog food ;-) See also: RepetitionInfo TestReporter MockitoExtension SpringExtension
38 LIVE CODING DEMO tags, display names, and dependency injection
39 Conditional Test Execution Extension Model meets Programming Model DisabledCondition Game Changer eating our own dog food ;-) Deactivate via Launcher, system property, or junit-platform.properties file junit.conditions.deactivate = org.junit.*
40 Interface Default Methods Introduces the concept of a test interface Enables multiple inheritance in tests a.k.a., testing @Test See StringTests and TestInterfaceDemo examples in user guide
41 DEMO default methods
42 Nested Test Classes Enables logical, hierarchical grouping of test classes with shared initialization and state from outer classes on non-static nested classes i.e., inner classes You can even combine nested classes and test interfaces See TestingAStack example in user guide and Bowling Game Kata by Tim Riemer
43 DEMO nested test classes
44 Repeated Tests Annotate a method instead o and specify the number of repetitions Optionally have the RepetitionInfo injected as a method parameter Optionally override the display name
45 @RepeatedTest in void repeatedtest(repetitioninfo repetitioninfo) { assertequals(5, repetitioninfo.gettotalrepetitions()); value = 5, name = "Wiederholung {currentrepetition} von {totalrepetitions} ) void repeatedtestingerman() { //... }
46 Parameterized Tests (junit-jupiter-params) Annotate a method instead o and specify the source of the arguments o optionally override the display name Sources String, int, long, double & custom ArgumentsProvider
47 Argument Conversion Implicit conversion o Primitive types and their wrappers o Enums o java.time types (JSR-310) Explicit conversion and custom ArgumentConverter built-in support for JSR-310
48 @ParameterizedTest = { "mom", "dad", "radar", "racecar", "able was I ere I saw elba" }) void palindromes(string candidate) { asserttrue(ispalindrome(candidate)); }
49 LIVE CODING DEMO repeated and parameterized tests
50 Dynamic Tests Conventional tests are static (i.e., known at compile A DynamicTest is registered at runtime λ as lambda expression in a stream, collection, etc. by a method annotated Can also register a DynamicContainer for dynamic nesting Somewhat analogous to parameterized tests just more dynamic
51 Dynamic Tests in Stream<DynamicTest> dynamictestsfromintstream() { // Generates tests for the first 10 even integers. return IntStream.iterate(0, n -> n + 2).limit(10).mapToObj(n -> dynamictest("test" + n, () -> asserttrue(n % 2 == 0))); }
52 DEMO dynamic tests
53 What s Missing? Scenario tests Ordering Parallel execution Execution in user-defined thread Declarative test suites for the JUnit Platform Java 9 module-path scanning
54 Spring 5 + JUnit 5
55 Spring Support for JUnit Jupiter Fully integrated in Spring Framework 5.0! released last week Supports all Core Spring TestContext Framework features Constructor and method @Value Conditional test execution via SpEL expressions ApplicationContext configuration annotations Also works with Spring Framework 4.3
56 Configuring JUnit Jupiter with @ContextConfiguration @EnabledIf SpEL expression evaluation for conditional execution
57 DEMO Spring 5 and JUnit
58 Spring Boot JUnit 5 Custom SpringEventsWebTest { }
59 Spring Boot JUnit 5 MockMvc + method-level DI + class EventsControllerTests page should display more than 10 events") void listevents(@autowired MockMvc mockmvc) throws Exception { mockmvc.perform(get("/")).andexpect(view().name("event/list")).andexpect(model().attribute("events", hassize(greaterthan(10)))); }
60 In closing
61 JUnit 5 Resources Project Homepage à User Guide à Javadoc à GitHub à Gitter à Stack Overflow à
62 Spring Resources Spring Framework à Spring Guides à Spring JIRA à Spring on GitHub à Stack Overflow à spring, spring-test, spring-mvc, spring-boot,
63 Additional JUnit 5 JavaOne 2017 JUnit 5 BOF Tuesday, Oct 03, 6:45 p.m. - 7:30 p.m. Moscone West - Room 2016 JUnit5: Features, Architecture, and Extensibility Wednesday, Oct 04, 2:45 p.m. - 3:30 p.m. Moscone West - Room 2009
64 Demos Used in this Presentation
65 JUnit Q & A Sam Brannen
Embracing. 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 informationGörge Albrecht State of the Union
@g_o_rge JUnit - State of the Union Görge Albrecht 206 JUnit State of the Union Görge Albrecht Software Developer since 989 Freelance Code Mentor "taking care of code" Need help writing simpler code? Contact
More informationJUnit 5 - Was bringt die neue Version?
1 JUnit 5 - Was bringt die neue Version? Matthias Merdes JUnit 5 Team Marc Philipp JUnit 5 Team 2 Matthias Merdes github.com/mmerdes 3 Committer im JUnit 5-Team Lead Developer Architektur & Services bei
More informationJUNIT 5 & TESTCONTAINERS. Testing with Java and Docker
JUNIT 5 & TESTCONTAINERS Testing with Java and Docker TIM RIEMER Solution Architect @ Vorwerk Digital tim.riemer@vorwerk.de Co-Lead Kotlin UG Dusseldorf @zordan_f github.com/timriemer JUNIT 5 JUNIT 5 JUnit
More informationJUNIT 5 EXTENSIONS 1. 1
JUNIT EXTENSIONS 1. 1 MARC PHILIPP Software Engineer @ LogMeIn in Karlsruhe, Germany JUnit Maintainer since 2012 Twitter: @marcphilipp Web: marcphilipp.de 1. 2 JUNIT IS RELEASED! Release date: September
More informationJUnit 5 User Guide. Stefan Bechtold, Sam Brannen, Johannes Link, Matthias Merdes, Marc Philipp, Christian Stein. Version 5.1.0
JUnit 5 User Guide Stefan Bechtold, Sam Brannen, Johannes Link, Matthias Merdes, Marc Philipp, Christian Stein Version 5.1.0 Table of Contents 1. Overview................................................................................
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 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 informationIntroduction to Spring 5, Spring MVC and Spring REST
Introduction to Spring 5, Spring MVC and Spring REST Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend
More informationJAVA. 1. Introduction to JAVA
JAVA 1. Introduction to JAVA History of Java Difference between Java and other programming languages. Features of Java Working of Java Language Fundamentals o Tokens o Identifiers o Literals o Keywords
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 informationApplication Development in JAVA. Data Types, Variable, Comments & Operators. Part I: Core Java (J2SE) Getting Started
Application Development in JAVA Duration Lecture: Specialization x Hours Core Java (J2SE) & Advance Java (J2EE) Detailed Module Part I: Core Java (J2SE) Getting Started What is Java all about? Features
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 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 informationSYLLABUS JAVA COURSE DETAILS. DURATION: 60 Hours. With Live Hands-on Sessions J P I N F O T E C H
JAVA COURSE DETAILS DURATION: 60 Hours With Live Hands-on Sessions J P I N F O T E C H P U D U C H E R R Y O F F I C E : # 4 5, K a m a r a j S a l a i, T h a t t a n c h a v a d y, P u d u c h e r r y
More informationSpring Framework 5.0 on JDK 8 & 9
Spring Framework 5.0 on JDK 8 & 9 Juergen Hoeller Spring Framework Lead Pivotal 1 Spring Framework 5.0 (Overview) 5.0 GA as of September 28 th, 2017 one week after JDK 9 GA! Embracing JDK 9 as well as
More informationIntroduction to Spring Framework: Hibernate, Spring MVC & REST
Introduction to Spring Framework: Hibernate, Spring MVC & REST Training domain: Software Engineering Number of modules: 1 Duration of the training: 36 hours Sofia, 2017 Copyright 2003-2017 IPT Intellectual
More informationIntroduction to Spring Framework: Hibernate, Web MVC & REST
Introduction to Spring Framework: Hibernate, Web MVC & REST Course domain: Software Engineering Number of modules: 1 Duration of the course: 50 hours Sofia, 2017 Copyright 2003-2017 IPT Intellectual Products
More informationJava J Course Outline
JAVA EE - J2SE - CORE JAVA After all having a lot number of programming languages. Why JAVA; yet another language!!! AND NOW WHY ONLY JAVA??? CHAPTER 1: INTRODUCTION What is Java? History Versioning The
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 informationGetting Started with Gradle
Getting Started with Gradle Speaker Sterling Greene ( sterling@gradle.com) Principal Engineer, Gradle Inc Clone the example project Agenda Gradle Project History Gradle Best Practices Gradle Basics Java
More informationA- Core Java Audience Prerequisites Approach Objectives 1. Introduction
OGIES 6/7 A- Core Java The Core Java segment deals with the basics of Java. It is designed keeping in mind the basics of Java Programming Language that will help new students to understand the Java language,
More informationSpringSource Tool Suites M3
SpringSource Tool Suites 3.0.0.M3 - New and Noteworthy - Martin Lippert 3.0.0.M3 July 9, 2012 Updated for 3.0.0.M3 ENHANCEMENTS 3.0.0.M3 General Updates Distribution based on Eclipse Juno (4.2.0) STS now
More informationDesarrollo de Aplicaciones Web Empresariales con Spring 4
Desarrollo de Aplicaciones Web Empresariales con Spring 4 Referencia JJD 296 Duración (horas) 30 Última actualización 8 marzo 2018 Modalidades Presencial, OpenClass, a medida Introducción Over the years,
More informationEclipse and Java 8. Daniel Megert Platform and JDT Lead Eclipse PMC Member IBM Rational Zurich Research Lab
Eclipse and Java 8 Daniel Megert Platform and JDT Lead Eclipse PMC Member IBM Rational Zurich Research Lab Eclipse and Java 8 New Java language features Eclipse features for Java 8 (demo) Behind the scenes
More informationPage 1
Java 1. Core java a. Core Java Programming Introduction of Java Introduction to Java; features of Java Comparison with C and C++ Download and install JDK/JRE (Environment variables set up) The JDK Directory
More informationCORE JAVA. Saying Hello to Java: A primer on Java Programming language
CORE JAVA Saying Hello to Java: A primer on Java Programming language Intro to Java & its features Why Java very famous? Types of applications that can be developed using Java Writing my first Java program
More informationExtreme Java Productivity with Spring Roo and Spring 3.0
Extreme Java Productivity with Spring Roo and Spring 3.0 Rod Johnson Copyright 2007 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Agenda Motivation
More informationJAVA. Duration: 2 Months
JAVA Introduction to JAVA History of Java Working of Java Features of Java Download and install JDK JDK tools- javac, java, appletviewer Set path and how to run Java Program in Command Prompt JVM Byte
More informationGAVIN KING RED HAT CEYLON SWARM
GAVIN KING RED HAT CEYLON SWARM CEYLON PROJECT A relatively new programming language which features: a powerful and extremely elegant static type system built-in modularity support for multiple virtual
More informationComponent based Development. Table of Contents. Notes. Notes. Notes. Web Application Development. Zsolt Tóth
Component based Development Web Application Development Zsolt Tóth University of Miskolc 2017 Zsolt Tóth (University of Miskolc) Component based Development 2017 1 / 30 Table of Contents 1 2 3 4 Zsolt
More informationFast Track to Spring 3 and Spring MVC / Web Flow
Duration: 5 days Fast Track to Spring 3 and Spring MVC / Web Flow Description Spring is a lightweight Java framework for building enterprise applications. Its Core module allows you to manage the lifecycle
More informationBreaking Apart the Monolith with Modularity and Microservices CON3127
Breaking Apart the Monolith with Modularity and Microservices CON3127 Neil Griffin Software Architect, Liferay Inc. Specification Lead, JSR 378 Portlet 3.0 Bridge for JavaServer Faces 2.2 Michael Han Vice
More informationIntroduction to Programming Using Java (98-388)
Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;
More informationProgramming Kotlin. Familiarize yourself with all of Kotlin s features with this in-depth guide. Stephen Samuel Stefan Bocutiu BIRMINGHAM - MUMBAI
Programming Kotlin Familiarize yourself with all of Kotlin s features with this in-depth guide Stephen Samuel Stefan Bocutiu BIRMINGHAM - MUMBAI Programming Kotlin Copyright 2017 Packt Publishing First
More informationDocumentation (and midterm review)
Documentation (and midterm review) Comp-303 : Programming Techniques Lecture 13 Alexandre Denault Computer Science McGill University Winter 2004 February 16, 2004 Lecture 13 Comp 303 : Programming Techniques
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options:
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 informationSelenium Testing Course Content
Selenium Testing Course Content Introduction What is automation testing? What is the use of automation testing? What we need to Automate? What is Selenium? Advantages of Selenium What is the difference
More informationSpringSource Tool Suites 3.0.0
SpringSource Tool Suites 3.0.0 - New and Noteworthy - Martin Lippert 3.0.0 August 13, 2012 Updated for 3.0.0.RELEASE ENHANCEMENTS 3.0.0 General Updates Spring Tool Suite & Groovy/Grails Tool Suite Starting
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 informationApplicationComposer. The TomEE Swiss Knife
ApplicationComposer The TomEE Swiss Knife ApplicationComposer API is mainly contained in org.apache.openejb.testing package (historically, today we would have called the package org.apache.tomee.applicationcomposer).
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 informationHello Gradle. TestNG, Eclipse, IntelliJ IDEA. Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2.
Hello Gradle TestNG, Eclipse, IntelliJ IDEA Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2 Dávid Bedők 2017.09.18. v0.2 Dávid Bedők (UNI-OBUDA) Hello JavaEE 2017.09.18.
More informationIndex. Decomposability, 13 Deep reflection, 136 Dependency hell, 19 --describe-module, 39
Index A --add-exports option, 28, 134 136, 142, 192 Apache Maven compatibility, 214 Compiler plugin, 212, 214 goals, 209 JDeps plugin goals, 210 options, 211 JEP 223 New Version-String scheme, 209 Automatic
More informationJAVA Training Overview (For Demo Classes Call Us )
JAVA Training Overview (For Demo Classes Call Us +91 9990173465) IT SPARK - is one of the well-known and best institutes that provide Java training courses. Working professionals from MNC's associated
More informationCS 6456 OBJCET ORIENTED PROGRAMMING IV SEMESTER/EEE
CS 6456 OBJCET ORIENTED PROGRAMMING IV SEMESTER/EEE PART A UNIT I 1. Differentiate object oriented programming from procedure oriented programming. 2. Define abstraction and encapsulation. 3. Differentiate
More informationJava 8 Programming for OO Experienced Developers
www.peaklearningllc.com Java 8 Programming for OO Experienced Developers (5 Days) This course is geared for developers who have prior working knowledge of object-oriented programming languages such as
More informationCOURSE DETAILS: CORE AND ADVANCE JAVA Core Java
COURSE DETAILS: CORE AND ADVANCE JAVA Core Java 1. Object Oriented Concept Object Oriented Programming & its Concepts Classes and Objects Aggregation and Composition Static and Dynamic Binding Abstract
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days Price: 1,995 + VAT Course Description: This course provides a comprehensive introduction to JPA (the Java Persistence API),
More informationSpring Interview Questions
Spring Interview Questions By Srinivas Short description: Spring Interview Questions for the Developers. @2016 Attune World Wide All right reserved. www.attuneww.com Contents Contents 1. Preface 1.1. About
More informationJSR 377 Desktop Application Framework September Andres Almiray
JSR 377 Desktop Application Framework September 29 2017 Andres Almiray Agenda Goals Information to be gathered Implementation notes Issues Questions, discussion, next steps 2 Goals 3 Goals Define APIs
More informationI Got My Mojo Workin'
I Got My Mojo Workin' Gary Murphy Hilbert Computing, Inc. http://www.hilbertinc.com/ glm@hilbertinc.com Gary Murphy I Got My Mojo Workin' Slide 1 Agenda Quick overview on using Maven 2 Key features and
More informationSPRING MOCK TEST SPRING MOCK TEST I
http://www.tutorialspoint.com SPRING MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Spring Framework. You can download these sample mock tests at
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 information104. Intermediate Java Programming
104. Intermediate Java Programming Version 6.0 This course teaches programming in the Java language -- i.e. the Java Standard Edition platform. It is intended for students with previous Java experience
More informationComplete Java Contents
Complete Java Contents Duration: 60 Hours (2.5 Months) Core Java (Duration: 25 Hours (1 Month)) Java Introduction Java Versions Java Features Downloading and Installing Java Setup Java Environment Developing
More informationTesting Lucene and Solr with various JVMs: Bugs, Bugs, Bugs
Testing Lucene and Solr with various JVMs: Bugs, Bugs, Bugs Uwe Schindler Apache Lucene Committer & PMC Member uschindler@apache.org http://www.thetaphi.de, http://blog.thetaphi.de @ThetaPh1 SD DataSolutions
More informationWeb Application Development Using Spring, Hibernate and JPA
Web Application Development Using Spring, Hibernate and JPA Duration: 5 Days Price: CDN$3275 *Prices are subject to GST/HST Course Description: This course provides a comprehensive introduction to JPA
More informationPeers Techno log ies Pv t. L td. Core Java & Core Java &Adv Adv Java Java
Page 1 Peers Techno log ies Pv t. L td. Course Brochure Core Java & Core Java &Adv Adv Java Java Overview Core Java training course is intended for students without an extensive programming background.
More informationClass Dependency Analyzer CDA Developer Guide
CDA Developer Guide Version 1.4 Copyright 2007-2017 MDCS Manfred Duchrow Consulting & Software Author: Manfred Duchrow Table of Contents: 1 Introduction 3 2 Extension Mechanism 3 1.1. Prerequisites 3 1.2.
More informationMarcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science
Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science mluckner@mini.pw.edu.pl http://www.mini.pw.edu.pl/~lucknerm } Annotations do not directly affect program semantics.
More informationWeek 10 Tuesday. CS 400 Programming III. X-Team Exercise #4: due before 10pm on April 16th
Week 10 Tuesday X-Team Exercise #4: due before 10pm on April 16th Team Project: Tournament-Bracket (D-Team 30pts) Milestone #1: due before 10pm April 20 th (A-Team 20pts) Milestone #2: due before 10pm
More informationBest Practices for Unit Testing in Kotlin
Best Practices for Unit Testing in Kotlin @philipp_hauer Spreadshirt KotlinConf, Amsterdam Oct 05, 2018 Question My First Test in Kotlin... class UserControllerTest { companion object { bu, s a c! open
More informationGetting Started with. Lite.
Getting Started with Lite www.boltiq.io Getting Started with Lite Download Download the app as either a container or Library. http://www.boltiq.io/bolt-lite/ See Examples Open the example test projects
More informationTesting with JUnit 1
Testing with JUnit 1 What are we doing here? Learning the mechanics of how to write tests in Java using JUnit Without considering issues like coverage Using JUnit is sometimes called unit testing Unit
More informationHello Maven. TestNG, Eclipse, IntelliJ IDEA. Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2.
Hello Maven TestNG, Eclipse, IntelliJ IDEA Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2 Dávid Bedők 2017.09.19. v0.1 Dávid Bedők (UNI-OBUDA) Hello JavaEE 2017.09.19.
More informationSpring Framework 5.0 Themes & Trends
Spring Framework 5.0 Themes & Trends a.k.a. Reactive Microservices on JDK 9 Juergen Hoeller Spring Framework Lead Pivotal 1 Spring Framework 4.3 Last 4.x feature release! 4.3 GA: June 2016 Extended support
More informationSoftware Engineering a.a Unit Tests for SpringMVC Prof. Luca Mainetti University of Salento
Software Engineering a.a. 2017-2018 Unit Tests for SpringMVC Prof. University of Salento Junit - Introduction JUnit is the most popular Java Unit testing framework We typically work in large projects -
More informationArun Gupta is a technology enthusiast, a passionate runner, and a community guy who works for Sun Microsystems. And this is his blog!
Arun Gupta is a technology enthusiast, a passionate runner, and a community guy who works for Sun Microsystems. And this is his blog! Rational tools Consulting, Training, Automation ClearCase ClearQuest
More information1 Shyam sir JAVA Notes
1 Shyam sir JAVA Notes 1. What is the most important feature of Java? Java is a platform independent language. 2. What do you mean by platform independence? Platform independence means that we can write
More informationGUJARAT TECHNOLOGICAL UNIVERSITY
GUJARAT TECHNOLOGICAL UNIVERSITY MASTER OF COMPUTER APPLICATIONS (COURSE CODE-6) Subject: Java Programming Subject Code: 2630002 Year II (Semester III) (W.E.F. JULY 2013) Objectives: To develop proficiency
More informationFast Track to Core Java 8 Programming for OO Developers (TT2101-J8) Day(s): 3. Course Code: GK1965. Overview
Fast Track to Core Java 8 Programming for OO Developers (TT2101-J8) Day(s): 3 Course Code: GK1965 Overview Java 8 Essentials for OO Developers is a three-day, fast-paced, quick start to Java 8 training
More informationArcGIS Viewer for Flex Advanced Topics
Esri International User Conference San Diego, California Technical Workshops July 27, 2012 ArcGIS Viewer for Flex Advanced Topics Lloyd Heberlie Björn Svensson Before we begin Who are we? - Bjorn Svensson
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 informationJava Programming. Manuel Oriol, March 22nd, 2007
Java Programming Manuel Oriol, March 22nd, 2007 Goal Teach Java to proficient programmers 2 Roadmap Java Basics Eclipse Java GUI Threads and synchronization Class loading and reflection Java Virtual Machines
More informationmvn package -Dmaven.test.skip=false //builds DSpace and runs tests
DSpace Testing 1 Introduction 2 Quick Start 2.1 Maven 2.2 JUnit 2.3 JMockit 2.4 ContiPerf 2.5 H2 3 Unit Tests Implementation 3.1 Structure 3.2 Limitations 3.3 How to build new tests 3.4 How to run the
More informationTattletale. What is Tattletale? Enterprise archives JBoss Application Server 7 Putting it all together Roadmap
Tattletale What is Tattletale? Enterprise archives JBoss Application Server 7 Putting it all together Roadmap Problems You are faced with a lot of Java archives and you don't know how they relate You need
More informationCORE JAVA 1. INTRODUCATION
CORE JAVA 1. INTRODUCATION 1. Installation & Hello World Development 2. Path environment variable d option 3. Local variables & pass by value 4. Unary operators 5. Basics on Methods 6. Static variable
More informationThe Checker Framework: pluggable static analysis for Java
The Checker Framework: pluggable static analysis for Java http://checkerframework.org/ Werner Dietl University of Waterloo https://ece.uwaterloo.ca/~wdietl/ Joint work with Michael D. Ernst and many others.
More information... Fisheye Crucible Bamboo
Sander Soo MSc Computer Science Oracle Certified Professional (Java SE) Nortal (email: sander.soo@nortal.com) Mercurial Java Spring Framework AngularJS Atlassian stack... Fisheye Crucible Bamboo 2 Manual
More informationSpring framework was initially written by Rod Johnson and was first released under the Apache 2.0 license in June 2003.
About the Tutorial Spring framework is an open source Java platform that provides comprehensive infrastructure support for developing robust Java applications very easily and very rapidly. Spring framework
More informationGeo Catching Sprint #3 Kick-off
LP IDSE - GL Geo Catching Sprint #3 Kick-off 03/01/2017 Cécile Camillieri/Clément Duffau 1 GeoCatching sprint #1 Drawing of zones on a map User login and joining of a game Browser-based geolocation of
More informationCommunity Participation in the JCP Program: a winning combination November 2012
1 Community Participation in the JCP Program: a winning combination heather@jcp.org http://jcp.org November 2012 JCP.next.1 (JSR 348) JCP 2.8, implemented in October 2011 Three themes aimed at: Transparency
More informationImprove and Expand JavaServer Faces Technology with JBoss Seam
Improve and Expand JavaServer Faces Technology with JBoss Seam Michael Yuan Kito D. Mann Product Manager, Red Hat Author, JSF in Action http://www.michaelyuan.com/seam/ Principal Consultant Virtua, Inc.
More informationStatus Report. JSR-305: Annotations for Software Defect Detection. William Pugh Professor
JSR-305: Annotations for Software Defect Detection William Pugh Professor Status Report Univ. of Maryland pugh@cs.umd.edu http://www.cs.umd.edu/~pugh/ 1 This JSR is under active development Slides have
More informationJava Programming Course Overview. Duration: 35 hours. Price: $900
978.256.9077 admissions@brightstarinstitute.com Java Programming Duration: 35 hours Price: $900 Prerequisites: Basic programming skills in a structured language. Knowledge and experience with Object- Oriented
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 information09/08/2017 CS2530 INTERMEDIATE COMPUTING 9/8/2017 FALL 2017 MICHAEL J. HOLMES UNIVERSITY OF NORTHERN IOWA TODAY S TOPIC: Exceptions and enumerations.
CS2530 INTERMEDIATE COMPUTING 9/8/2017 FALL 2017 MICHAEL J. HOLMES UNIVERSITY OF NORTHERN IOWA TODAY S TOPIC: Exceptions and enumerations. 1 RUNTIME ERRORS All of us have experienced syntax errors. This
More information(2½ hours) Total Marks: 75
(2½ hours) Total Marks: 75 N. B.: (1) All questions are compulsory. (2) Makesuitable assumptions wherever necessary and state the assumptions mad (3) Answers to the same question must be written together.
More informationHomeschool Programming, Inc.
Online Course Overview Course Title: TeenCoder: Java Programming TeenCoder: Java Programming Online Course Syllabus and Planner Updated November, 2015 Online ISBN: 978-0-9887070-2-3, published 2015 by
More informationLiberty Right Fit for MicroProfile
IBM _ 1 Liberty Right Fit for MicroProfile Alasdair Nottingham, IBM, STSM, WebSphere Runtime Architect Kevin Sutter, IBM, STSM, Java EE Architect JavaOne Sept 2016 Who Are We? Kevin Sutter WebSphere Java
More informationTesting. Topics. Types of Testing. Types of Testing
Topics 1) What are common types of testing? a) Testing like a user: through the UI. b) Testing like a dev: through the code. 2) What makes a good bug report? 3) How can we write code to test code (via
More informationTuesday, April 26, 2011
Modular Class Loading With JBoss Modules David M. Lloyd Senior Software Engineer, Red Hat, Inc. The Class Path is Dead - Mark Reinhold, 2009 What does this mean? The limitations inherent in -classpath
More informationStruts: Struts 1.x. Introduction. Enterprise Application
Struts: Introduction Enterprise Application System logical layers a) Presentation layer b) Business processing layer c) Data Storage and access layer System Architecture a) 1-tier Architecture b) 2-tier
More informationCS 215 Software Design Homework 3 Due: February 28, 11:30 PM
CS 215 Software Design Homework 3 Due: February 28, 11:30 PM Objectives Specifying and checking class invariants Writing an abstract class Writing an immutable class Background Polynomials are a common
More informationName of subject: JAVA PROGRAMMING Subject code: Semester: V ASSIGNMENT 1
Name of subject: JAVA PROGRAMMING Subject code: 17515 Semester: V ASSIGNMENT 1 3 Marks Introduction to Java (16 Marks) 1. Write all primitive data types available in java with their storage size in bytes.
More informationCore Capabilities Part 3
2008 coreservlets.com The Spring Framework: Core Capabilities Part 3 Originals of Slides and Source Code for Examples: http://courses.coreservlets.com/course-materials/spring.html Customized Java EE Training:
More information/ / JAVA TRAINING
www.tekclasses.com +91-8970005497/+91-7411642061 info@tekclasses.com / contact@tekclasses.com JAVA TRAINING If you are looking for JAVA Training, then Tek Classes is the right place to get the knowledge.
More informationSpring 2.5 on the Way to 3.0
Spring 2.5 on the Way to 3.0 Jürgen Höller VP & Distinguished Engineer SpringSource Copyright 2008 SpringSource. Copying, publishing or distributing without express written permission is prohibited. Agenda
More information