Unit Testing. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Size: px
Start display at page:

Download "Unit Testing. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc."

Transcription

1 Unit Testing Quiz with Explainations Hans-Petter Halvorsen, M.Sc.

2 Questions 1. What is Unit Testing? 2. List some Unit Test Framework 3. Who is creating the Unit Tests? 4. What kind of Requirements does a Test Method need to follow? 5. What is the basic concept in Unit Testing? 6. When should you write Unit Tests? 7. What is Code Coverage? 8. What is the main Class in all Unit Test Frameworks? 9. Unit Testing Best Practice? Give some Examples 10. List the Namespaces used in Unit Testing in Visual Studio

3 What is Unit Testing?

4 What are Unit Tests Unit Testing (or component testing) refers to tests that verify the functionality of a specific section of code, usually at the function level. In an object-oriented environment, this is usually at the class and methods level. Unit Tests are written by the developers as part of the programming Automatically executed (e.g., Visual Studio and Team Foundation Server have built-in functionality for Unit Testing)

5 Test Driven Development (TDD) Coding and Testing are done in parallel The Tests are normally written before the Code Introduced as part of exreme Programming (XP) (an Agile method) Unit Tests are important part of Software Development today either you are using TDD or not 5

6 List some Unit Test Framework

7 Unit Tests Frameworks Unit Tests Framework are usually integrated with the IDE Visual Studio Unit Test Framework. Unit Tests are built into Visual Studio (no additional installation needed) Others: JUnit (Java) JUnit is a unit testing framework for the Java programming language. NUnit (.NET) NUnit is an open source unit testing framework for Microsoft.NET. It serves the same purpose as JUnit does in the Java world PHPUnit (PHP) LabVIEW Unit Test Framework Toolkit etc. All of them work in the same manner but we will use the Visual Studio Unit Test Framework

8 Who is creating the Unit Tests?

9 The Developer Creates the Unit Tests

10 What kind of Requirements does a Test Method need to follow?

11 Test Method Requirements A Test Method must meet the following requirements: The method must be decorated with the [TestMethod] attribute. The method must return void. The method cannot have parameters. 11

12 What is the basic concept in Unit Testing?

13 Basic Concept in Unit Testing The basic concept in Unit Testing is to Compare the results when running the Methods with some Input Data ( Actual ) with some Known Results ( Expected ) Example: The Assert Class contains different Methods that can be used in Unit Testing... Assert.AreEqual(expected, actual, 0.001, Test failed because..."); All Unit Tests Framework have the Assert Class Assert: Hevde/bedyre Compare Feilmargin Feilmelding som vises hvis testen feiler 13

14 When should you write Unit Tests?

15 When should you write Unit Tests? Before you start coding or in parallel with the coding

16 Test Driven Development (TDD) Coding and Testing are done in parallel The Tests are normally written before the Code Introduced as part of exreme Programming (XP) (an Agile method) Unit Tests are important part of Software Development today either you are using TDD or not 16

17 What is Code Coverage?

18 Code Coverage Code coverage is a measure used in software testing. It describes the degree to which the source code of a program has been tested. Depending on the input arguments, different parts of the code will be executed. Unit Tests should be written to cover all parts of the code. int foo (int x, int y) { int z = 0; if ((x>0) && (y>0)) { z = x; } return z; } 18

19 Code Coverage Example from Visual Studio We see that our test only cover about 43% of the code in our Debit Method. This is because the Method contains if sentences We should improve the Unit Testing so that we cover more of the code. 19

20 What is the main Class in all Unit Test Frameworks?

21 All Unit Tests Framework have the Assert Class Assert.AreEqual(expected, actual, 0.001, Test failed because...");

22 Unit Testing Best Practice? Give some Examples

23 Unit Tests Best Practice A Unit Test must only do one thing Unit Test must run independently Unit Tests must not be depend on the environment Test Functionality rather than implementation Test public behavior; private behavior relates to implementation details Avoid testing UI components Unit Tests must be easy to read and understand Create rules that make sure you need to run Unit Tests (and they need to pass) before you are allowed to Check-in your Code in the Source Code Control System 23

24 List the Namespaces used in Unit Testing in Visual Studio

25 Unit Testing Namespaces in Visual Studio Microsoft.VisualStudio.TestTools.UnitTesting The UnitTesting namespace, which provides attributes, exceptions, asserts, and other classes that support unit testing. Microsoft.VisualStudio.TestTools.UnitTesting.Web The UnitTesting.Web namespace, which extends the UnitTesting namespace by providing support for ASP.NET and Web service Unit Tests.

26 References Software Development - A Practical Approach Halvorsen, Hans-Petter, 2015 Essentials of Software Engineering Frank Tsui; Orlando Karam; Barbara Bernal, 3 ed., Jones & Bartlett Learning Software Engineering I. Sommerville, 10 ed.: Pearson, 2015 Software Engineering. Modern Approaches E. J. Braude and M. E.Bernstein, 2 ed.: Wiley,

27

28 Hans-Petter Halvorsen, M.Sc. University College of Southeast Norway Blog:

Software Architecture

Software Architecture Software Architecture Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. Explain 3-layer Architecture 2. What is a Web Service? 3. What is SOA? 4. What is an API? 5. What is Client-Server

More information

Software Implementation

Software Implementation Software Implementation Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 10 different Programming Languages 2. What is an IDE? - Give some Examples 3. What is.net? 4. What is ASP.NET?

More information

UML. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

UML. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. UML Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is UML? 2. What is an ER diagram? 3. Give example of some types of UML diagrams (in total we have 14 different types) 4. Give

More information

Source Code Control. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Source Code Control. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Source Code Control Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is SCC? 2. List at least 5 different SSC Systems 3. Why do we need a SCC/Version Control System? 4. What is Distributed

More information

Software Documentation

Software Documentation Software Documentation Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 4 important Process Documents 2. What are the main Software Documentation Categories? 3. What is SRS? 4. What

More information

Software Platforms. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Software Platforms. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Software Platforms Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 3 different software platforms with some examples for each 2. List 5 different Web Browsers and the name of the

More information

Database. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc.

Database. Quiz with Explainations. Hans-Petter Halvorsen, M.Sc. Database Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. What is a Database? 2. Give Examples of Systems that use a Database 3. What is DBMS? 4. Give Examples of DBMS systems? 5. We have

More information

Software Architecture

Software Architecture O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com Software Architecture Hans-Petter Halvorsen Clients Windows Server 2008/2012 Windows 7/8 Wi-Fi Server LAN Ethernet OPC Server Router Web

More information

Using SQL Server in C#

Using SQL Server in C# University College of Southeast Norway Using SQL Server in C# Hans-Petter Halvorsen, 2016.11.01 with Examples http://home.hit.no/~hansha Table of Contents 1. Introduction...

More information

Software Testing. Hans-Petter Halvorsen, M.Sc.

Software Testing. Hans-Petter Halvorsen, M.Sc. Software Testing Hans-Petter Halvorsen, M.Sc. STD System Documentation Testing Software Test Documentation Software Test Plan (STP) Test Documentation End-User Documentation Implementation Code System

More information

Visual Studio Team Services

Visual Studio Team Services Visual Studio Team Services Getting Started Hans-Petter Halvorsen, M.Sc. Visual Studio Team Services Visual Studio Team Services is a platform taking care of all aspects of the process of developing software

More information

Team Foundation Server Visual Studio Team Services. Hans-Petter Halvorsen, M.Sc.

Team Foundation Server Visual Studio Team Services. Hans-Petter Halvorsen, M.Sc. Team Foundation Server Visual Studio Team Services Hans-Petter Halvorsen, M.Sc. Team Foundation Server (TFS) is an Application Lifecycle Management (ALM) system The Software Development Lifecycle (SDLC)

More information

Introduction to ERwin

Introduction to ERwin Introduction to ERwin Database Design & Modelling Hans-Petter Halvorsen, M.Sc. Software The following Editions can be downloaded for Free on Internet: CA ERwin Data Modeler Community Edition SQL Server

More information

Week Assignment. Software Testing Test Planning. Hans-Petter Halvorsen

Week Assignment. Software Testing Test Planning. Hans-Petter Halvorsen 2017.04.07 Week Assignment Software Testing Test Planning B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/ Hans-Petter Halvorsen Note! All Documents, Code,

More information

Programming. Languages & Frameworks. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available:

Programming. Languages & Frameworks. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available: Programming O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com Languages & Frameworks Hans-Petter Halvorsen, M.Sc. Implementation Planning Maintenance Testing Implementation The Software

More information

https://www.halvorsen.blog Web Services Hans-Petter Halvorsen

https://www.halvorsen.blog Web Services Hans-Petter Halvorsen https://www.halvorsen.blog Web Services Hans-Petter Halvorsen Problem How to Share Data between Devices in a Network? Server(s) Firewalls Security Clients Local Network/Internet Database Routers/Switches,

More information

University College of Southeast Norway. Web Services. with Examples. Hans-Petter Halvorsen,

University College of Southeast Norway. Web Services. with Examples. Hans-Petter Halvorsen, University College of Southeast Norway Web Services Hans-Petter Halvorsen, 2016.11.01 with Examples http://home.hit.no/~hansha Table of Contents 1. Introduction... 4 1.1. The Problem... 4 1.2. The Solution...

More information

Create a Virtual Test Environment

Create a Virtual Test Environment Create a Virtual Test Environment Step by Step Exercises Hans-Petter Halvorsen, M.Sc. Why Do We Need a Test Environment? Why cant we just use our own PC? Why Test Environment? It works on my PC says the

More information

Database Views & Stored Procedures. Hans-Petter Halvorsen, M.Sc.

Database Views & Stored Procedures. Hans-Petter Halvorsen, M.Sc. Database Views & Stored Procedures Hans-Petter Halvorsen, M.Sc. SQL Server Hans-Petter Halvorsen, M.Sc. Microsoft SQL Server 3 1 2 Your SQL Server Your Tables Your Database 4 Write your Query here 5 The

More information

University College of Southeast Norway. LM-900 Level Tank. Hans-Petter Halvorsen,

University College of Southeast Norway. LM-900 Level Tank. Hans-Petter Halvorsen, University College of Southeast Norway LM-900 Level Tank Hans-Petter Halvorsen, 2016.10.26 http://home.hit.no/~hansha Table of Contents Table of Contents... ii 1 Introduction... 1 2 System Description...

More information

Source Code Control & Bug Tracking

Source Code Control & Bug Tracking http://home.hit.no/~hansha/?page=software_development O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com Source Code Control & Bug Tracking Hans-Petter Halvorsen O. Widder. (2013). geek&poke.

More information

Simulation in LabVIEW. Hans-Petter Halvorsen, M.Sc.

Simulation in LabVIEW. Hans-Petter Halvorsen, M.Sc. Simulation in LabVIEW Hans-Petter Halvorsen, M.Sc. Software LabVIEW LabVIEW Control Design and Simulation Module This module is used for creating Control and Simulation applications with LabVIEW. Here

More information

MATLAB Examples. Simulink. Hans-Petter Halvorsen, M.Sc.

MATLAB Examples. Simulink. Hans-Petter Halvorsen, M.Sc. MATLAB Examples Simulink Hans-Petter Halvorsen, M.Sc. What is Simulink? Simulink is an add-on to MATLAB. You need to have MATLAB in order to use Simulink Simulink is used for Simulation of dynamic models

More information

Solutions. Discretization HANS-PETTER HALVORSEN,

Solutions. Discretization HANS-PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Solutions HANS-PETTER HALVORSEN, 2011.08.12 Discretization Faculty of Technology, Postboks 203,

More information

Team Assignment. Final Software Delivery. IA4412 Software Engineering

Team Assignment. Final Software Delivery. IA4412 Software Engineering IA4412 Software Engineering Team Assignment Final Software Delivery B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/ Hans-Petter Halvorsen, M.Sc. Level of

More information

Week Assignment. Source Code Control (SCC) & Bug Tracking Systems. Hans-Petter Halvorsen

Week Assignment. Source Code Control (SCC) & Bug Tracking Systems. Hans-Petter Halvorsen 2017.03.06 Week Assignment Source Code Control (SCC) & Bug Tracking Systems B. Lund. Lunch. Available: http://www.lunchstriper.no, http://www.dagbladet.no/tegneserie/lunch/ Hans-Petter Halvorsen Note!

More information

Create Installation Packages in Visual Studio

Create Installation Packages in Visual Studio Create Installation Packages in Visual Studio Step by step Exercises Hans-Petter Halvorsen, M.Sc. Maintenance Developers Developers & Testers Customers Development Testing Production Deployment & Installation

More information

UML. Unified Modeling Language. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available:

UML. Unified Modeling Language. Hans-Petter Halvorsen, M.Sc. O. Widder. (2013). geek&poke. Available: O. Widder. (2013). geek&poke. Available: http://geek-and-poke.com UML Unified Modeling Language Hans-Petter Halvorsen, M.Sc. Unified Modeling Language (UML) Examples Class Diagram Use Case Diagram 2 Deployment

More information

Virtual Instruments with LabVIEW

Virtual Instruments with LabVIEW Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Virtual Instruments with LabVIEW HANS-PETTER HALVORSEN, 2011.01.04 Faculty of Technology, Postboks

More information

NI Vision System HANS- PETTER HALVORSEN,

NI Vision System HANS- PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics NI Vision System HANS- PETTER HALVORSEN, 2013.02.19 Faculty of Technology, Postboks 203, Kjølnes

More information

Datalogging in LabVIEW

Datalogging in LabVIEW Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Datalogging in LabVIEW HANS-PETTER HALVORSEN, 2011.01.04 Faculty of Technology, Postboks 203, Kjølnes

More information

MATLAB Examples. Flow Control and Loops. Hans-Petter Halvorsen, M.Sc.

MATLAB Examples. Flow Control and Loops. Hans-Petter Halvorsen, M.Sc. MATLAB Examples Flow Control and Loops Hans-Petter Halvorsen, M.Sc. Flow Control and Loops in MATLAB Flow Control: if-elseif-else statement switch-case-otherwise statement Loops: for Loop while Loop The

More information

SQL Server and SQL Structured Query Language

SQL Server and SQL Structured Query Language SQL Server and SQL Structured Query Language Step by step Exercises Hans-Petter Halvorsen Database Systems Hans-Petter Halvorsen, M.Sc. Database Systems A Database is a structured way to store lots of

More information

MATLAB Examples. Interpolation and Curve Fitting. Hans-Petter Halvorsen

MATLAB Examples. Interpolation and Curve Fitting. Hans-Petter Halvorsen MATLAB Examples Interpolation and Curve Fitting Hans-Petter Halvorsen Interpolation Interpolation is used to estimate data points between two known points. The most common interpolation technique is Linear

More information

https://www.halvorsen.blog Industrial IT Laboratory Work https://www.halvorsen.blog/documents/teaching/courses/industrialit Hans-Petter Halvorsen

https://www.halvorsen.blog Industrial IT Laboratory Work https://www.halvorsen.blog/documents/teaching/courses/industrialit Hans-Petter Halvorsen https://www.halvorsen.blog Industrial IT Laboratory Work https://www.halvorsen.blog/documents/teaching/courses/industrialit Hans-Petter Halvorsen OPC Laboratory Work The Industrial IT course contains different

More information

Wireless DAQ using ZigBee

Wireless DAQ using ZigBee Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Wireless DAQ using ZigBee Cuong Nguyen, Hans- Petter Halvorsen 2013.10.29 Hardware

More information

University College of Southeast Norway ASP.NET. Web Programming. Hans-Petter Halvorsen,

University College of Southeast Norway ASP.NET. Web Programming. Hans-Petter Halvorsen, University College of Southeast Norway Hans-Petter Halvorsen, 2016.11.01 ASP.NET Web Programming http://home.hit.no/~hansha Table of Contents 1 Introduction... 4 1.1 Visual Studio... 4 1.2 C#... 5 1.3.NET

More information

Week Assignment Source Code Control (SCC) & Bug Tracking Systems Hans-Petter Halvorsen

Week Assignment Source Code Control (SCC) & Bug Tracking Systems Hans-Petter Halvorsen https://www.halvorsen.blog Week Assignment Source Code Control (SCC) & Bug Tracking Systems Hans-Petter Halvorsen 1. SCC Systems Overview Everybody should collaborate creating a document giving an overview

More information

https://www.halvorsen.blog Week Assignment Software Implementation Hans-Petter Halvorsen

https://www.halvorsen.blog Week Assignment Software Implementation Hans-Petter Halvorsen https://www.halvorsen.blog Week Assignment Software Implementation Hans-Petter Halvorsen All Documents, Code, etc. should be uploaded to Visual Studio Team Services (VSTS) Week Assignment 1. Code Reviews

More information

NI mydaq HANS-PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics

NI mydaq HANS-PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics NI mydaq HANS-PETTER HALVORSEN, 2012.01.20 Faculty of Technology, Postboks 203, Kjølnes ring 56,

More information

Database Systems. S. Adams. Dilbert. Available: Hans-Petter Halvorsen

Database Systems. S. Adams. Dilbert. Available:  Hans-Petter Halvorsen Database Systems S. Adams. Dilbert. Available: http://dilbert.com Hans-Petter Halvorsen Old fashion Database (Data-storage) Systems Not too long ago, this was the only data-storage device most companies

More information

Database Lab. Hans-Petter Halvorsen

Database Lab.  Hans-Petter Halvorsen 2017.03.24 Database Lab http://home.hit.no/~hansha/?lab=database Hans-Petter Halvorsen Lab Overview Database Design & Modelling SQL Server Management Studio Create Tables Database Management Microsoft

More information

Data Acquisition HANS-PETTER HALVORSEN,

Data Acquisition HANS-PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Data Acquisition HANS-PETTER HALVORSEN, 2011.10.14 Faculty of Technology, Postboks 203, Kjølnes

More information

Database Communication in Visual Studio/C# using Web Services

Database Communication in Visual Studio/C# using Web Services https://www.halvorsen.blog Database Communication in Visual Studio/C# using Web Services Hans-Petter Halvorsen Background With Web Services you can easily get your data through Internet We will use Web

More information

Software Development

Software Development University College of Southeast Norway Software Development Hans-Petter Halvorsen, 2017.01.09 A Practical Approach! http://home.hit.no/~hansha Preface The main goal with this document: To give you an overview

More information

Introduction to Simulink

Introduction to Simulink University College of Southeast Norway Introduction to Simulink Hans-Petter Halvorsen, 2016.11.01 http://home.hit.no/~hansha Preface Simulink, developed by The MathWorks, is a commercial tool for modeling,

More information

NI USB-TC01 Thermocouple Measurement Device

NI USB-TC01 Thermocouple Measurement Device Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics NI USB-TC01 Thermocouple Measurement Device HANS- PETTER HALVORSEN, 2013.02.18 Faculty of Technology,

More information

Unit Testing and JUnit

Unit 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 information

Control and Simulation in. LabVIEW

Control and Simulation in. LabVIEW Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Solutions Control and Simulation in HANS-PETTER HALVORSEN, 2011.08.11 LabVIEW Faculty of Technology,

More information

Creating Classes and Libraries with Arduino

Creating Classes and Libraries with Arduino https://www.halvorsen.blog Creating Classes and Libraries with Arduino Hans-Petter Halvorsen Contents We will learn how we can create our own Arduino Libraries from Scratch Why create your own Libraries?

More information

State Estimation with Observers

State Estimation with Observers Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics State Estimation with Observers HANS-PETTER HALVORSEN, 2012.08.20 Faculty of Technology, Postboks

More information

Raspberry Pi. Hans-Petter Halvorsen, M.Sc.

Raspberry Pi. Hans-Petter Halvorsen, M.Sc. Raspberry Pi Hans-Petter Halvorsen, M.Sc. Raspberry Pi https://www.raspberrypi.org https://dev.windows.com/iot Hans-Petter Halvorsen, M.Sc. Raspberry Pi - Overview The Raspberry Pi 2 is a low cost, credit-card

More information

https://www.halvorsen.blog Modbus Hans-Petter Halvorsen

https://www.halvorsen.blog Modbus Hans-Petter Halvorsen https://www.halvorsen.blog Modbus Hans-Petter Halvorsen What is Modbus? Modbus is a serial communications protocol originally published by Modicon (now Schneider Electric) in 1979 for use with its programmable

More information

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy Testing ENGI 5895: Software Design Andrew Vardy Faculty of Engineering & Applied Science Memorial University of Newfoundland March 6, 2017 Outline 1 Levels of Testing 2 Testing Methods 3 Test Driven Development

More information

Software Testing Workshop 2014 Introduction

Software Testing Workshop 2014 Introduction Software Testing Workshop 2014 Introduction May 3 rd 2014. FAST, Islamabad. About Us Majd Uddin 15+ years of experience with a decade in software testing Promoting software quality: M.Sc. (CS) from PUCIT,

More information

Analysis of the Test Driven Development by Example

Analysis of the Test Driven Development by Example Computer Science and Applications 1 (2013) 5-13 Aleksandar Bulajic and Radoslav Stojic The Faculty of Information Technology, Metropolitan University, Belgrade, 11000, Serbia Received: June 18, 2013 /

More information

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy

Levels of Testing Testing Methods Test Driven Development JUnit. Testing. ENGI 5895: Software Design. Andrew Vardy Testing ENGI 5895: Software Design Andrew Vardy Faculty of Engineering & Applied Science Memorial University of Newfoundland March 6, 2017 Outline 1 Levels of Testing 2 Testing Methods 3 Test Driven Development

More information

A Guided Tour of Test Automation

A Guided Tour of Test Automation A Guided Tour of Test Automation My slides are available for you at: http://idiacomputing.com/publications.html A Test, Check, or Scenario Arrange Act Assert Given When Then Arrange Given The preconditions

More information

php tek - Chicago, US Derick Rethans -

php tek - Chicago, US Derick Rethans - php tek - Chicago, US Derick Rethans - dr@ez.no http://derickrethans.nl/talks.php About Me Dutchman living in Norway ez Systems A.S. ez Components project lead PHP development mcrypt, input_filter, date/time

More information

EVALUATION COPY. Test-Driven Development Using NUnit and C# Student Guide Revision 4.6. Unauthorized reproduction or distribution is prohibited.

EVALUATION COPY. Test-Driven Development Using NUnit and C# Student Guide Revision 4.6. Unauthorized reproduction or distribution is prohibited. Test-Driven Development Using NUnit and C# Student Guide Revision 4.6 Object Innovations Course 4105 Test-Driven Development Using NUnit and C# Rev. 4.6 Student Guide Information in this document is subject

More information

Datalogging and Monitoring

Datalogging and Monitoring Datalogging and Monitoring with Step by Step Examples Hans-Petter Halvorsen http://www.halvorsen.blog Content Different Apps for Data Logging and Data Monitoring will be presented Here you find lots of

More information

Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days)

Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days) Test Driven Development (TDD), and Working with Legacy Code Using C# Workshop ( 4 days) HOTEL DUBAI GRAND April 16 to 19-2018 Monday to Thursday ) (4 days) 9 am to 4 pm ISIDUS TECH TEAM FZE PO Box 9798

More information

Instructions for writing Web Services using Microsoft.NET:

Instructions for writing Web Services using Microsoft.NET: Instructions for writing Web Services using Microsoft.NET: Pre-requisites: Operating System: Microsoft Windows XP Professional / Microsoft Windows 2000 Professional / Microsoft Windows 2003 Server.NET

More information

J, K F, G, H. Library/framework, 168 LIKE() predicate, 142 Load-balancing server (LBS), 120 Lock on check out (LOCO), 1

J, K F, G, H. Library/framework, 168 LIKE() predicate, 142 Load-balancing server (LBS), 120 Lock on check out (LOCO), 1 Index A ADO.NET driver coding implementation, 153 154 dr.read() method, 155 finally block, 155 IDataReader, 155 interface variables, 155 loose-coupling, 153 MySql assembly, 153 try-catch blocks, 155 using

More information

DAQ in MATLAB HANS-PETTER HALVORSEN,

DAQ in MATLAB HANS-PETTER HALVORSEN, Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics DAQ in MATLAB HANS-PETTER HALVORSEN, 2011.06.07 Faculty of Technology, Postboks 203, Kjølnes ring

More information

Data Acquisition in LabVIEW

Data Acquisition in LabVIEW University College of Southeast Norway Data Acquisition in LabVIEW Hans-Petter Halvorsen, 2016.10.28 http://home.hit.no/~hansha Preface This tutorial explains the basic concepts of a Data Acquisition in

More information

Chapter 2 NUnit Fundamentals

Chapter 2 NUnit Fundamentals Chapter 2 NUnit Fundamentals Rev. 4.7 Copyright 2015 Object Innovations Enterprises, LLC 35 NUnit Fundamentals Objectives After completing this unit you will be able to: Describe the general structure

More information

Web Programming HTML CSS JavaScript Step by step Exercises Hans-Petter Halvorsen

Web Programming HTML CSS JavaScript Step by step Exercises Hans-Petter Halvorsen https://www.halvorsen.blog Web Programming HTML CSS JavaScript Step by step Exercises Hans-Petter Halvorsen History of the Web Internet (1960s) World Wide Web - WWW (1991) First Web Browser - Netscape,

More information

Learn Software Test Automation Group Meetup. Presenter: Kate Droukman. au.linkedin.com/in/katedroukman. 21 April 2016

Learn Software Test Automation Group Meetup. Presenter: Kate Droukman. au.linkedin.com/in/katedroukman. 21 April 2016 Learn LeanFT @ Software Test Automation Group Meetup Presenter: Kate Droukman au.linkedin.com/in/katedroukman 21 April 2016 Agenda 2 Agenda Topic LeanFT Quick Intro LeanFT IDE Plugins & SDK Hands-On JUnit/OIC,

More information

Chapter 1: A First Program Using C#

Chapter 1: A First Program Using C# Chapter 1: A First Program Using C# Programming Computer program A set of instructions that tells a computer what to do Also called software Software comes in two broad categories System software Application

More information

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis Software Quality in a Modern Development Team Presented by Timothy Bauguess and Marty Lewis High-Quality Software Who benefits? End users Development Stakeholders Components of Software Quality Structural

More information

DevOps Using VSTS and Azure

DevOps Using VSTS and Azure DevOps Using VSTS and Azure ALMDO; 5 Days, Instructor-led Course Description The combination of Visual Studio Team Services (VSTS) and Microsoft Azure provides a powerful and fully featured solution to

More information

Test Driven Development with NUnit for.net - Getting Started

Test Driven Development with NUnit for.net - Getting Started Test Driven Development with NUnit for.net - Getting Started Boulder Colorado.NET User Group http://www.boulderug.com/ 6/27/2006 5:30 PM Copyright, 1996 Dale Carnegie & Associates, Inc. Clark Anderson

More information

Sensors and Actuators with Arduino. Hans-Petter Halvorsen, M.Sc.

Sensors and Actuators with Arduino. Hans-Petter Halvorsen, M.Sc. Sensors and Actuators with Arduino Hans-Petter Halvorsen, M.Sc. System Overview NTC Thermistor Arduino Download Code Computer TMP36 Pt-100 Sensors (Input) Actuators (Output) Examples: Data Logging Programming

More information

CS 520 Theory and Practice of Software Engineering Fall 2017

CS 520 Theory and Practice of Software Engineering Fall 2017 Logistics CS 520 Theory and Practice of Software Engineering Fall 2017 Best and worst programming practices September 12, 2017 Recap: software architecture vs. design Recap: software architecture examples

More information

CS 520 Theory and Practice of Software Engineering Fall 2017

CS 520 Theory and Practice of Software Engineering Fall 2017 CS 520 Theory and Practice of Software Engineering Fall 2017 Best and worst programming practices September 12, 2017 Logistics Recap: software architecture vs. design Specification Architecture Development

More information

CSSE 220 Day 3. Check out UnitTesting and WordGames from SVN

CSSE 220 Day 3. Check out UnitTesting and WordGames from SVN CSSE 220 Day 3 Unit Tests and Object References Implementing Classes in Java, using Documented Stubs, Test-First Programming Check out UnitTesting and WordGames from SVN What Questions Do You Have? Syllabus

More information

Tutorial Ranorex. Contents. About this Document. Spirit Du Ver. 1.5, 22 nd November, 2007 Ver. 2.3, 29 th October, 2008

Tutorial Ranorex. Contents. About this Document. Spirit Du Ver. 1.5, 22 nd November, 2007 Ver. 2.3, 29 th October, 2008 Tutorial Ranorex Spirit Du Ver. 1.5, 22 nd November, 2007 Ver. 2.3, 29 th October, 2008 Contents About this Document...1 Tutorial Ranorex...2 Appendix A Install Ranorex...6 Appendix B Activate Program...6

More information

CS159. Nathan Sprague. September 30, 2015

CS159. Nathan Sprague. September 30, 2015 CS159 Nathan Sprague September 30, 2015 Testing Happens at Multiple Levels Unit Testing - Test individual classes in isolation. Focus is on making sure that each method works according to specification.

More information

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do? Topics 1) What is trying to do? Manifesto & XP Chapter 3.1-3.3 2) How to choose plan-driven vs? 3) What practices go into (XP) development? 4) How to write tests while writing new code? CMPT 276 Dr. B.

More information

Manual Visual Studio 2010 Web Developer Tools 2012 Professional

Manual Visual Studio 2010 Web Developer Tools 2012 Professional Manual Visual Studio 2010 Web Developer Tools 2012 Professional 2015, 2013, 2012, 2010 PHP Tools for Visual Studio transparently integrate into Microsoft Visual The extension is focused on developer productivity

More information

Database Overview. Introduction to Database Systems, ERwin, SQL Server, SQL, etc. Hans-Petter Halvorsen, M.Sc.

Database Overview. Introduction to Database Systems, ERwin, SQL Server, SQL, etc. Hans-Petter Halvorsen, M.Sc. Database Overview Introduction to Database Systems, ERwin, SQL Server, SQL, etc. Hans-Petter Halvorsen, M.Sc. Contents Database Modelling/Design using ERwin Generate SQL Table Script using ERwin Generate

More information

Philosophy of Unit Testing

Philosophy 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 information

Class 1 Introduction to Selenium, Software Test Life Cycle.

Class 1 Introduction to Selenium, Software Test Life Cycle. Class 1 Introduction to Selenium, Software Test Life Cycle. I) Introduction to Selenium 1) What is Selenium? 2) History of the Selenium Project 3) Selenium Components / Selenium s Tool Suite 4) Platforms

More information

P a g e 1. Danish Tecnological Institute. Developer Collection Online Course k Developer Collection

P a g e 1. Danish Tecnological Institute. Developer Collection   Online Course k Developer Collection P a g e 1 Online Course k72809 P a g e 2 Title Estimated Duration (hrs) Adobe Acrobat Pro XI Fundamentals 1 Introduction to CQRS 2 Introduction to Eclipse 2 NHibernate Essentials 2 Advanced Scrum: Addressing

More information

Testing Driven Development. Advanced Programming

Testing Driven Development. Advanced Programming Testing Driven Development Advanced Programming Test Driven Development (TDD) Practice for writing unit tests and production code concurrently and at a very fine level of granularity Programmers first

More information

Outline. Logistics. Logistics. Principles of Software (CSCI 2600) Spring Logistics csci2600/

Outline. Logistics. Logistics. Principles of Software (CSCI 2600) Spring Logistics  csci2600/ Outline Principles of Software (CSCI 600) Spring 018 http://www.cs.rpi.edu/academics/courses/spring18/csci600/ Konstantin Kuzmin, kuzmik@cs.rpi.edu Office hours: Monday and Thursday 4:00 pm - 5:30 pm Mailing

More information

Note : That the code coverage tool is not available for Java CAPS Repository based projects.

Note : That the code coverage tool is not available for Java CAPS Repository based projects. Code Coverage in Netbeans 6.1 Holger Paffrath August 2009 Code coverage is a simple method used to determine if your unit tests have covered all relevant lines of code in your program. Netbeans has a plugin

More information

Presented by Joe Ocampo

Presented by Joe Ocampo Presented by Joe Ocampo Today s Agenda Contrast TDD with BDD Look at some examples of BDD Write some code and have fun Answer questions The issues with Test Driven Development (TDD) Where do I start? What

More information

UML Checker A Toolset for Conformance Testing against UML Sequence Diagrams

UML Checker A Toolset for Conformance Testing against UML Sequence Diagrams softeng.fe.up.pt UML Checker A Toolset for Conformance Testing against UML Sequence Diagrams https://blogs.fe.up.pt/sdbt/ João Pascoal Faria, FEUP/INESC TEC, jpf@fe.up.pt (with Ana Paiva, Mário Castro,

More information

Test Driven Development TDD

Test Driven Development TDD Test Driven Development TDD Testing Testing can never demonstrate the absence of errors in software, only their presence Edsger W. Dijkstra (but it is very good at the latter). Testing If it's worth building,

More information

No Source Code. EEC 521: Software Engineering. Specification-Based Testing. Advantages

No 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

Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics.

Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics. Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Wi- Fi DAQ Hardware Setup Cuong Nguyen, Hans- Petter Halvorsen, 2013.08.07

More information

Code Title Level Windows Azure Application Development

Code Title Level Windows Azure Application Development Windows Azure Application Development HOL-AZR100 Introduction to Windows Azure Infrastructure Services 100 HOL-AZR Introduction to Windows Azure Web Sites HOL-AZR201 Introduction to Windows Azure Mobile

More information

Index. BigBadGuiTools (BBGT), 186 Business logic and data layer, 32 Business requirements

Index. BigBadGuiTools (BBGT), 186 Business logic and data layer, 32 Business requirements Index A ADO.NET, SQL driver documentation, 171 dr.read() method, 173 ExecuteNonQuery method, 173 IDbDataParameter interface, 174 Interface variables, 173 MySqlDataReader, 173 MySql reference, 170 placeholders,

More information

Application Development at

Application Development at Application Development at Abstract: This paper uncovers the diversity of Congruent s Application Services and its Delivery excellence. It also analyzes its processes, practices & tools that sets Congruent

More information

Wireless Data Acquisition in. LabVIEW

Wireless Data Acquisition in. LabVIEW University College of Southeast Norway Wireless Data Acquisition in Hans-Petter Halvorsen, 2016.10.31 LabVIEW http://home.hit.no/~hansha Preface It's not just phones and computers that can communicate

More information

3-tier Architecture Step by step Exercises Hans-Petter Halvorsen

3-tier Architecture Step by step Exercises Hans-Petter Halvorsen https://www.halvorsen.blog 3-tier Architecture Step by step Exercises Hans-Petter Halvorsen Software Architecture 3-Tier: A way to structure your code into logical parts. Different devices or software

More information

Black Box Testing. EEC 521: Software Engineering. Specification-Based Testing. No Source Code. Software Testing

Black 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 information

Lecture 15 Software Testing

Lecture 15 Software Testing Lecture 15 Software Testing Includes slides from the companion website for Sommerville, Software Engineering, 10/e. Pearson Higher Education, 2016. All rights reserved. Used with permission. Topics covered

More information