Automated Testing Environment
|
|
- Asher Lewis Little
- 5 years ago
- Views:
Transcription
1 Automated Testing Environment Concepts required for testing embedded systems adopted in this course (quizzes, assignments and laboratories) 1 To be tackled today Why test, and what kinds of tests are there? Difference between TLD Test Last Development TDD Test Driven Development (Test First Development) How do you add tests? More details on the testing process E-TDD and the testing toll E-UNIT Other kinds of available tests time and access Design of custom TESTs and ASSERTS 2/ 28 Why test? Unit test I AM CURRENTLY BUILDING A NEW FUNCTION Does it work the way I expect? Testing my and my partner s understanding of the Design WE ARE DESIGNING A NEW PRODUCT -- If we can t explain (to ourselves via a test) the product ideas how do we know when product is working? Regression testing MY PARTNER ADDED A NEW FEATURE to a product how do I know it did not break something I wrote? System testing How do I PROVE TO THE CUSTOMER that the product (Lab. or assignment) works the way that was requested? What are the problems with this sort of Human intervention test? This TEST code would (confusingly) be placed in Assignments1 directory with the rest of the customer code 3/ 28 4/ 28
2 VisualDSP development environment (IDDE) Communication overhead VisualDSP++ program Debugging Interface HPUSB-ICE Debugging Interface JTAG boundary scan operation Processor Peripherals Lab. station (ENA301 / 305) BF533 Evaluation Board Each time we want to send a message (via printf( ) or cout) we must pause the processor from doing what we want it to do, and allow sending of messages over the interface Slow, plus the testing can impact on peripheral performance. E.g. no sound while doing (debug) printing in Assignment 2 and Lab. 1 10/1/2013 THIS PROBLEM Concept IS of Test COMMON Driven Development TO applied ALL to Embedded EMBEDDED Systems SYSTEM 5/ 28 DEVELOPMENT; NOT JUST THE BLACKFIN USED IN THE LAB. More issues with this sort of test! Tests are mixed up with production code, in many places Must remove tests before release to customer Unreliable when done manually may result in test messages at wrong time in released code (confusing to user) Difficult to add and remove tests from production code without introducing new errors Results must be checked manually therefore unlikely to have tests run often during development leads to unreliable product 6/ 28 E-TDD / E-UNIT Tool Test Environment E-TDD embedded test driven development Build-the-tests-first (during design) ideas for product development has been made popular by the Agile approach Requires an automated testing approach (test framework) In this class, we are going to use the E-Unit tool for its automated behaviour Will use in both test last development (what most people currently do) and in test first development (trying to encourage). I (the customer) will provide tests so that you can check that you have developed the right stuff at the high level You will build additional tests to check your own code at the low level 7/ 28 Can download LabTestEnvironment.zip file from the web (Check September webpages) LabX directory is where you keep your customer-specific code LabXLibrary is where you keep your utility s code. Re-use in other labs LabXTests is where you keep the tests for the customer specific code and for the Library code you will reuse Refactoring You may have to add additional tests, and move things between Library and Customer 8/ 28
3 Assign1 directory Customer code Assign1 code uses many library calls ReadSwitches( ) and WriteLED( ) Use Open-CCES-ame plug-in learned in Lab0 Use Open-CCES-ame plug-in to add in paths to Assign1Library.h and Assign1Library.dlb Assign1 code may just be a file with a small main( ) I developed code in Assign1 directory and then refactored into Assign1Library Build a new CCES project Assign1Tests and place in Assign1Tests directory I developed TESTs as I added new code to Assign1 and Assign1Library Certain standard files in a TEST project Same set of files for all TESTs in assignments and laboratory Use the automated E-UNIT HELPER features of the OPEN-CCES-ame plugin to convert project to TEST project 9/ / 28 Testing your (re-usable) code stored in the Assign1Library directory with E-UNIT HELPER Open-CESS-ame plug-in has automatically added the Tests_main.cpp Don t move or copy the files into the test directory End up with two different versions Add Path to Assign1Library.h header file by clicking on Assign1Library directory (NOT src or the specific.h file) Add Path to Assign1Library.dlb library (or archive) file in Assign1Library directory debug (Click on desired.dlb) 11 / / 28
4 Open-CCES-ame has automatically added a TestGroup file for you Modify Assign1Tests.cpp to perform the needed testing 13 / / 28 Tests and Test Groups have a standard format Tests then need to be customized Can be automated by Open-CCESS-ame TESTGROUP NAME TEST NAME Add further tests at this location TESTGROUP NAME, 15 / / 28
5 Test Components Remember format for exams and quizzes The ACTUAL Test CHECK(result1 == result2) If an error occurred what was result1 being used for? Error result1!= result2 We would get better test error messages if we self-documented the code int resultcppcode = ; int resultasmcode = CHECK(resultCPPCode == resultasmcode); Error resultcppcode!= resultasmcode Test CONTROL statements TEST_CONTROL( testgroup_name) TEST_FILE_RUN_NOTIFICATION( testgroup_name) 17 / 28 Add stub versions of functions into Assign1Library and Build library Note code DEFECT There is NO return value placed in R0 Assign1CPP.cpp Assign1ASM.asm 18 / 28 Now build Assign1Tests source files to make executable Note the format of the error messages with both C / C++ and name-mangled ASM name shown Fix and rebuild Library code. Review the code for syntax errors and logical errors. DON T IGNORE WARNINGS FIX THE PROBLEM, e.g. add.extern or fix type 19 / / 28
6 Now build and run the tests All the tests MUST fail (no ASM code written) otherwise using bad tests The test that passed has failed as a test Detailed test failure information Something wrong how did the ASM test pass with no code? 21 / 28 Clicking on the detailed test info automatically takes you to the test that failed 22 / 28 Better tests? Which one failed correctly and why (quiz question)? Test information modes are controlled in Test_main Show Failures and Expected Failures only Show Failures and Successes 23 / / 28
7 Use helper to add a separate test to show that result2 (from the ASM code) is equal to 42 Write the tests for self-documenting messages (What does result1 == result2 mean if 200 tests present?) HAVE What is a result1 and a result 2 Add further tests at WANT this location 25 / / 28 Write the CPP code to get to work but Write the ASM for speed (ISR) No need to measure times in Assignment1 or Labs unless doing Interrupt Service Routine FAIL SUCCESS SUCCESS 27 / 28 Available ASSERTS More can be customized CHECK(expected == actual) Success if passes XF_CHECK(expected == actual) Success if fails CHECK_EQUAL(expected, actual) XF_CHECK_EQUAL(expected, actual) Success if fails CHECK_CLOSE(expected, actual, tolerance) CHECK_ARRAY_EQUAL(expected, actual, length) CHECK_ARRAY_CLOSE(expected, actual, length, tolerance) REPORT( character message ); Changes to editor properties can make these ASSERTS into highlighted key-words 28 / 28
8 Handled today some easy nonprogramming quiz and midterm questions Why test, and what kinds of tests are there? Difference between TLD Test Last Development TDD Test Driven Development (Test First Development) How do you add tests for Assignment 1? More details on the testing process E-TDD and the testing tool E-UNIT Other kinds of available tests time and access Design of custom TESTs and ASSERTS 29 / 28
Test driven development Example
Test driven development Example Developing a moving average filter that can be tested using the EUNIT plug in REVIEW Using the E UNIT testing Framework Activate CCES and select your workspace (H:/ENCM511
More informationIntroduction to Test Driven Development (To be used throughout the course)
Introduction to Test Driven Development (To be used throughout the course) Building tests and code for a software radio Concepts Stages in a conventional radio Stages in a software radio Goals for the
More informationBuilding a COFFEE POT simulation on CCESS for Blackfin BF533
Building a COFFEE POT simulation on CCESS 2.6.0 for Blackfin BF533 Last lecture covered some detailed ideas Let step back and do something simpler to get an introduction of ideas needed for Lab0 and Assignment
More informationGetting the O in I/O to work on a typical microcontroller
Getting the O in I/O to work on a typical microcontroller Ideas of how to send output signals to the radio controlled car. The theory behind the LED controller used in the Familiarization Lab Agenda Processors
More informationLaboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment
Laboratory 1 Manual V1.2 1 st September 2007 Developing a Blackfin GPIO interface using an automated embedded testing environment These pages are cut-and-paste from the Lab. 1 web-pages. I have not spent
More informationTable of Contents. ENCM511 Assignment 1 Marking Scheme Want to drive the real car on the A301 track later in the term. It can be arranged, but
Assignment 1 V3 Final 1 st October 2013 P age 1 Assignment 1 V3 Final 1 st October 2013 P age 2 YOUR NAME LAB. Section Table of Contents ENCM511 Assignment 1 V2 We shall drive a virtual car during this
More informationGetting the O in I/O to work on a typical microcontroller
Getting the O in I/O to work on a typical microcontroller Ideas of how to send output signals to the radio controlled car. The theory behind the LED controller used in the Familiarization Lab Agenda Processors
More informationGenerating Rectify( ) Test driven development approach to TigerSHARC
Generating Rectify( ) Test driven development approach to TigerSHARC assembly code production Assembly code examples Part 1 of 3 Concepts Concepts of C++ stubs Forcing the test to fail test of test Generating
More informationWATCHDOG TIMER ISR DEVELOPMENT TDD APPROACH
WATCHDOG TIMER ISR DEVELOPMENT TDD APPROACH Through the use of user stories You can use a very similar approach when testing your CORE_TIMER ISR during Assignment 2 When developing the coffeepot Water
More informationJava Program Structure and Eclipse. Overview. Eclipse Projects and Project Structure. COMP 210: Object-Oriented Programming Lecture Notes 1
COMP 210: Object-Oriented Programming Lecture Notes 1 Java Program Structure and Eclipse Robert Utterback In these notes we talk about the basic structure of Java-based OOP programs and how to setup and
More informationA look at interrupts Dispatch_Tasks ( )
SHOWS WHERE S FIT IN A look at interrupts Dispatch_Tasks ( ) What are interrupts and why are they needed in an embedded system? Equally as important how are these ideas handled on the Blackfin Assignment
More informationMicroprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto
Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Discussion of the capabilities of the Analog Devices ADSP-5333 Evaluation Board used in this course M. Smith, ECE
More informationMicroprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto
Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto Discussion of the capabilities of the Analog Devices ADSP-5333 Evaluation Board used in this course M. Smith, ECE
More informationENCM511 Assignment 1 Version 16 September 2012
ENCM511 Assignment 1 Version 16 September 2012 This is an individual assignment, essentially a take home quiz. This means the purpose behind this assignment is for YOU to show the skills learnt during
More informationTigerSHARC processor and evaluation board
Concepts tackled TigerSHARC processor and evaluation board Different capabilities Different functionality Differences between processor and evaluation board Functionality present on TigerSHARC evaluation
More informationCS 241 Data Organization. August 21, 2018
CS 241 Data Organization August 21, 2018 Contact Info Instructor: Dr. Marie Vasek Contact: Private message me on the course Piazza page. Office: Room 2120 of Farris Web site: www.cs.unm.edu/~vasek/cs241/
More informationBy the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab
By the end of Class Pseudo-code for Lab 1-2 due as part of prelab Homework #5 on website due before next class Outline Introduce Lab 1-2 Counting Timers on C8051 Interrupts Laboratory Worksheet #05 Copy
More informationNordiaSoft SCA Architect 2016
SCA Architect NordiaSoft SCA Architect is the modeling tool used by developers to compose and assemble software components into applications. Based on a Model-Driven Development (MDD) concept, SCA Architect
More informationWorking with the Compute Block
Tackled today Working with the Compute Block M. R. Smith, ECE University of Calgary Canada Problems with using I-ALU as an integer processor TigerSHARC processor architecture What features are available
More informationCS21: INTRODUCTION TO COMPUTER SCIENCE. Prof. Mathieson Fall 2018 Swarthmore College
CS21: INTRODUCTION TO COMPUTER SCIENCE Prof. Mathieson Fall 2018 Swarthmore College Outline Oct 24: Sit somewhere new! Recap reading files String and List methods TDD: Top Down Design word_guesser.py Notes
More informationWelcome to Lab! You do not need to keep the same partner from last lab. We will come around checking your prelabs after we introduce the lab
Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: http://users.wpi.edu/~ndemarinis/ece2049/ You do not need to keep the same partner from
More informationCreating Accessible PDFs
Creating Accessible PDFs Using Word to Create Accessible PDF Documents This documentation is designed to be a tool for students, faculty and staff. When authoring electronic documents, it is important
More informationCSE 374 Programming Concepts & Tools. Hal Perkins Fall 2015 Lecture 15 Testing
CSE 374 Programming Concepts & Tools Hal Perkins Fall 2015 Lecture 15 Testing Where we are Some very basic software engineering topics in the midst of tools Today: testing (how, why, some terms) Later:
More informationCS21: INTRODUCTION TO COMPUTER SCIENCE. Prof. Mathieson Fall 2017 Swarthmore College
CS21: INTRODUCTION TO COMPUTER SCIENCE Prof. Mathieson Fall 2017 Swarthmore College Outline Oct 25: Recap reading files String and List methods TDD: Top Down Design word_guesser.py Notes Lab 6 due Saturday
More informationAutomated Unit Testing A Practitioner's and Teacher's Perspective
Automated Unit Testing A Practitioner's and Teacher's Perspective Prof. Peter Sommerlad HSR - Hochschule für Technik Rapperswil Institute for Software Oberseestraße 10, CH-8640 Rapperswil peter.sommerlad@hsr.ch
More informationCS 6371: Advanced Programming Languages
CS 6371: Advanced Programming Languages Dr. Kevin Hamlen Spring 2017 Fill out, sign, and return prereq forms: Course number: CS 6371 Section: 1 Prerequisites: CS 5343: Algorithm Analysis & Data Structures
More informationIf we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!!
If we can just send 1 signal correctly over the SPI MOSI line, then Lab 4 will work!!! Design and implementation details on the way to a valid SPI-LCD interface driver Slides 3 to 13 are old versions of
More informationC Compilation Model. Comp-206 : Introduction to Software Systems Lecture 9. Alexandre Denault Computer Science McGill University Fall 2006
C Compilation Model Comp-206 : Introduction to Software Systems Lecture 9 Alexandre Denault Computer Science McGill University Fall 2006 Midterm Date: Thursday, October 19th, 2006 Time: from 16h00 to 17h30
More informationQUIZ How do we implement run-time constants and. compile-time constants inside classes?
QUIZ How do we implement run-time constants and compile-time constants inside classes? Compile-time constants in classes The static keyword inside a class means there s only one instance, regardless of
More informationWelcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:
Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ We will come around checking your pre-labs
More informationMicrocontroller Not just a case of you say tomarto and I say tomayto
Microprocessor or Microcontroller Not just a case of you say tomarto and I say tomayto M. Smith, ECE University of Calgary, Canada Information taken from Analog Devices On-line Manuals with permission
More informationCS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims
CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims Lecture 1: Overview http://courses.cs.cornell.edu/cs2110 1 Course Staff Instructor Thorsten Joachims (tj@cs.cornell.edu)
More informationIntroduction to Lab. 3
Solving a Lab 1 Issue Introduction to Lab. 3 Also includes Solving a Lab. 1 issues Using the graphics LCD with your assignment 1 Rediscuss the Watchdog timer for Assignment 2 Many people have said My Enable
More informationGetting Started with Visual Studio
Getting Started with Visual Studio Visual Studio is a sophisticated but easy to use integrated development environment (IDE) for C++ (and may other languages!) You will see that this environment recognizes
More informationC++ Style Guide. 1.0 General. 2.0 Visual Layout. 3.0 Indentation and Whitespace
C++ Style Guide 1.0 General The purpose of the style guide is not to restrict your programming, but rather to establish a consistent format for your programs. This will help you debug and maintain your
More informationLab 7: OCaml 12:00 PM, Oct 22, 2017
CS17 Integrated Introduction to Computer Science Hughes Lab 7: OCaml 12:00 PM, Oct 22, 2017 Contents 1 Getting Started in OCaml 1 2 Pervasives Library 2 3 OCaml Basics 3 3.1 OCaml Types........................................
More informationclass 8 b-trees prof. Stratos Idreos
class 8 b-trees prof. Stratos Idreos HTTP://DASLAB.SEAS.HARVARD.EDU/CLASSES/CS165/ I spend a lot of time debugging am I doing something wrong? maybe but probably not 1. learn to use gdb 2. after spending
More informationFamiliarity with data types, data structures, as well as standard program design, development, and debugging techniques.
EE 472 Lab 1 (Individual) Introduction to C and the Lab Environment University of Washington - Department of Electrical Engineering Introduction: This lab has two main purposes. The first is to introduce
More informationOutline: System Development and Programming with the ADSP-TS101 (TigerSHARC)
Course Name: Course Number: Course Description: Goals/Objectives: Pre-requisites: Target Audience: Target Duration: System Development and Programming with the ADSP-TS101 (TigerSHARC) This is a practical
More informationWelcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website:
Welcome to Lab! Feel free to get started until we start talking! The lab document is located on the course website: https://users.wpi.edu/~sjarvis/ece2049_smj/ece2049_labs.html You do not need to keep
More informationLab 10: OCaml sequences, comparators, stable sorting 12:00 PM, Nov 12, 2017
Integrated Introduction to Computer Science Hughes Lab 10: OCaml sequences, comparators, stable sorting 12:00 PM, Nov 12, 2017 Contents 1 A last OCaml type, and its utility 1 1.1 Sequences in OCaml....................................
More informationUse C++, not C for all work in this course. The biggest difference is how one does input
Chapter 1: Preamble 1.1 Commandments A nationally-known expert has said that C++ is a coding monster that forces us to use a disciplined style in order to tame it. This leads to a fundamental rule for
More informationSetting up a Project and Debugging with Visual Studio
Setting up a Project and Debugging with Visual Studio Contents Setup Visual Studio to compile a DLL ---------------------------------------------------------------- 1 Step 1: Install Visual Studio Express
More informationOverview. State-of-the-Art. Relative cost of error correction. CS 619 Introduction to OO Design and Development. Testing.
Overview CS 619 Introduction to OO Design and Development ing! Preliminaries! All sorts of test techniques! Comparison of test techniques! Software reliability Fall 2012! Main issues: There are a great
More informationTesting! The material for this lecture is drawn, in part, from! The Practice of Programming (Kernighan & Pike) Chapter 6!
Testing The material for this lecture is drawn, in part, from The Practice of Programming (Kernighan & Pike) Chapter 6 1 Words from the Wise On two occasions I have been asked [by members of Parliament],
More informationCS61BL. Lecture 1: Welcome to CS61BL! Intro to Java and OOP Testing Error-handling
CS61BL Lecture 1: Welcome to CS61BL! Intro to Java and OOP Testing Error-handling About me Name: Edwin Liao Email: edliao@berkeley.edu Office hours: Thursday 3pm - 5pm Friday 11am - 1pm 611 Soda Or by
More informationTesting. UW CSE 160 Winter 2016
Testing UW CSE 160 Winter 2016 1 Testing Programming to analyze data is powerful It s useless (or worse!) if the results are not correct Correctness is far more important than speed 2 Famous examples Ariane
More informationTOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1
TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1 ABSTRACT Test-Driven Development is a design strategy where a set of tests over a class is defined prior to the implementation of that class. The goal
More informationStructured programming
Exercises 1 Version 1.0, 22 September, 2016 Table of Contents 1. Development environments (IDE)............................................. 1 1.1. Text editor..............................................................
More informationTesting, code coverage and static analysis. COSC345 Software Engineering
Testing, code coverage and static analysis COSC345 Software Engineering Outline Various testing processes ad hoc / formal / automatic Unit tests and test driven development Code coverage metrics Integration
More informationLab Exercise Test First using JUnit
Lunds tekniska högskola Datavetenskap, Nov, 2017 Görel Hedin/Ulf Asklund EDAF45 Programvaruutveckling i grupp projekt Lab Exercise Test First using JUnit Goal This lab is intended to demonstrate basic
More informationCSCE 121 ENGR 112 List of Topics for Exam 1
List of Topics for Exam 1 If statements o How is an if statement constructed? o Does every if need an else? Looping o While loop! What does a while loop look like?! How do you ensure you will not have
More informationLecture 5. Defining Functions
Lecture 5 Defining Functions Announcements for this Lecture Last Call Quiz: About the Course Take it by tomorrow Also remember the survey Readings Sections 3.5 3.3 today Also 6.-6.4 See online readings
More informationST Lab 1 - The basics of SAS
ST 512 - Lab 1 - The basics of SAS What is SAS? SAS is a programming language based in C. For the most part SAS works in procedures called proc s. For instance, to do a correlation analysis there is proc
More informationConfiguring PC Lint for uvision & STM32
Configuring PC Lint for uvision & STM32 David Giles 2007-11-19 Contents Overview Installing PC Lint Exploring the PC Lint Directory Starting uvision Configuring PC Lint for your project within uvision
More informationJenkins 2 UX Improvements. Keith Zantow Software Engineer, CloudBees, Inc.
Jenkins 2 UX Improvements Keith Zantow Software Engineer, CloudBees, Inc. User Experience Jenkins 1 UX Useful plugins Example: CVS Configuration experience Aging technologies A few pages to configure the
More informationCS354 gdb Tutorial Written by Chris Feilbach
CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that
More informationTesting, Debugging, Program Verification
Testing, Debugging, Program Verification Debugging Programs, Part II Wolfgang Ahrendt & Vladimir Klebanov & Moa Johansson & Gabriele Paganelli 14 November 2012 TDV: Debugging II /GU 2011-11-09 1 / 32 Today
More informationProgram Verification! Goals of this Lecture! Words from the Wise! Testing!
Words from the Wise Testing On two occasions I have been asked [by members of Parliament], Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out? I am not able rightly
More informationChapter 8 Software Testing. Chapter 8 Software testing
Chapter 8 Software Testing 1 Topics covered Introduction to testing Stages for testing software system are: Development testing Release testing User testing Test-driven development as interleave approach.
More informationAnalysis 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 informationLab 8 - Vectors, and Debugging. Directions
Lab 8 - Vectors, and Debugging. Directions The labs are marked based on attendance and effort. It is your responsibility to ensure the TA records your progress by the end of the lab. While completing these
More informationThe World Leader in High Performance Signal Processing Solutions. Development Tools.
The World Leader in High Performance Signal Processing Solutions Development Tools 2004 China.dsp@analog.com What is CROSSCORE? Analog Devices DSP Development Tools CROSSCORE Components VisualDSP++ Emulators
More information2 ABOUT VISUALDSP++ In This Chapter. Figure 2-0. Table 2-0. Listing 2-0.
2 ABOUT VISUALDSP++ Figure 2-0. Table 2-0. Listing 2-0. In This Chapter This chapter contains the following topics: What Is VisualDSP++? on page 2-2 VisualDSP++ Features on page 2-2 Program Development
More informationHCI: THE DESIGN PROCESS. Dr Kami Vaniea
HCI: THE DESIGN PROCESS Dr Kami Vaniea 1 First, the news Make Your UX Design Process Agile Using Google s Methodology https://www.interactiondesign.org/literature/article/make-your-ux-designprocess-agile-using-google-s-methodology
More informationSISTEMI EMBEDDED AA 2012/2013 JTAG CIRCUITRY JTAG DEBUG MODULE JTAG-UART PERIPHERAL
SISTEMI EMBEDDED AA 2012/2013 JTAG CIRCUITRY JTAG DEBUG MODULE JTAG-UART PERIPHERAL Joint Test Action Group (JTAG) (1) Established in 1985 to develop a method to test populated PCBs A way to access IC
More informationTesting! The material for this lecture is drawn, in part, from! The Practice of Programming (Kernighan & Pike) Chapter 6!
Testing The material for this lecture is drawn, in part, from The Practice of Programming (Kernighan & Pike) Chapter 6 1 Goals of this Lecture Help you learn about: Internal testing External testing General
More informationTest 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 information3 Continuous Integration 3. Automated system finding bugs is better than people
This presentation is based upon a 3 day course I took from Jared Richardson. The examples and most of the tools presented are Java-centric, but there are equivalent tools for other languages or you can
More informationQUIZ Friends class Y;
QUIZ Friends class Y; Is a forward declaration neeed here? QUIZ Friends QUIZ Friends - CONCLUSION Forward (a.k.a. incomplete) declarations are needed only when we declare member functions as friends. They
More informationLecture 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 informationProject 1. due date Sunday July 8, 2018, 12:00 noon
Queens College, CUNY, Department of Computer Science Object-oriented programming in C++ CSCI 211 / 611 Summer 2018 Instructor: Dr. Sateesh Mane c Sateesh R. Mane 2018 Project 1 due date Sunday July 8,
More informationCOMP251: Algorithms and Data Structures. Jérôme Waldispühl School of Computer Science McGill University
COMP251: Algorithms and Data Structures Jérôme Waldispühl School of Computer Science McGill University About Me Jérôme Waldispühl Associate Professor of Computer Science I am conducting research in Bioinformatics
More informationExperiment VERI: FPGA Design with Verilog (Part 2) (webpage: /)
Department of Electrical & Electronic Engineering 2 nd Year Laboratory Experiment VERI: FPGA Design with Verilog (Part 2) (webpage: www.ee.ic.ac.uk/pcheung/teaching/e2_experiment /) 1.0 Learning Outcomes
More informationLab 08. Command Line and Git
Lab 08 Command Line and Git Agenda Final Project Information All Things Git! Make sure to come to lab next week for Python! Final Projects Connect 4 Arduino ios Creative AI Being on a Team - How To Maximize
More informationCS504 4 th Quiz solved by MCS GROUP
CS504 4 th Quiz solved by MCS GROUP All are solved 100% correct with pages # remember us in ur prayerssss. Quiz Start Time: 01:26 PM Time Left 90 Question # 1 of 10 ( Start time: 01:26:29 PM ) Total Marks:
More informationRefactoring Tested Code: Has Mocking. RefTest. Managing Refactoring in a Test. Driven World. Gone Wrong? Ben Stopford Royal Bank of Scotland
RefTest Refactoring Tested Code: Has Mocking Driven World Gone Wrong? Managing Refactoring in a Test Ben Stopford Royal Bank of Scotland I've always been a old fashioned classic TDDer and thus far I don't
More informationThe name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.
Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that
More informationCSCI S-Q Lecture #12 7/29/98 Data Structures and I/O
CSCI S-Q Lecture #12 7/29/98 Data Structures and I/O Introduction The WRITE and READ ADT Operations Case Studies: Arrays Strings Binary Trees Binary Search Trees Unordered Search Trees Page 1 Introduction
More informationRational Functional Tester - Tips and Tricks
IBM Rational Software Development Conference 2006 Rational Functional Tester - Tips and Tricks Suma Byrappa IBM Rational Swathi Rao 2006 IBM Corporation Agenda IBM Rational Software Development Conference
More informationProject #1 rev 2 Computer Science 2334 Fall 2013 This project is individual work. Each student must complete this assignment independently.
Project #1 rev 2 Computer Science 2334 Fall 2013 This project is individual work. Each student must complete this assignment independently. User Request: Create a simple magazine data system. Milestones:
More informationCS1110 Lab 6 (Mar 17-18, 2015)
CS1110 Lab 6 (Mar 17-18, 2015) First Name: Last Name: NetID: The lab assignments are very important and you must have a CS 1110 course consultant tell CMS that you did the work. (Correctness does not matter.)
More informationTutorial Methodologies for Test-Driven Development of OSGi enabled Embedded Devices
Tutorial Methodologies for Test-Driven Development of OSGi enabled Embedded Devices 2008 by Christine Mitterbauer, Marcus Harringer MicroDoc GmbH www.microdoc.com Or... 2 Methodologies for Test-Driven
More informationXilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006)
Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006) 1 Part1) Starting a new project Simple 3-to-8 Decoder Start the Xilinx
More informationCompiling with Multiple Files The Importance of Debugging CS 16: Solving Problems with Computers I Lecture #7
Compiling with Multiple Files The Importance of Debugging CS 16: Solving Problems with Computers I Lecture #7 Ziad Matni Dept. of Computer Science, UCSB Programming in Multiple Files The Magic of Makefiles!
More informationLab 4: Interrupts and Realtime
Lab 4: Interrupts and Realtime Overview At this point, we have learned the basics of how to write kernel driver module, and we wrote a driver kernel module for the LCD+shift register. Writing kernel driver
More informationCh. 11: References & the Copy-Constructor. - continued -
Ch. 11: References & the Copy-Constructor - continued - const references When a reference is made const, it means that the object it refers cannot be changed through that reference - it may be changed
More informationBoot Camp. Dave Eckhardt Bruce Maggs
Boot Camp Dave Eckhardt de0u@andrew.cmu.edu Bruce Maggs bmm@cs.cmu.edu 1 This Is a Hard Class Traditional hazards 410 letter grade one lower than other classes All other classes this semester: one grade
More informationesl_eam IDE Compiler Software Update to V3.3.5 esl_eam IDE Compiler Software Update to V3.3.4
esl_eam IDE Compiler Software Update to V3.3.5 1. Modify the 64bit windows OS(XP/Vista/Windows 7) ICE Plug out bug esl_eam IDE Compiler Software Update to V3.3.4 1. Modify the Approve Form format problem.
More informationExceptions in Java
Exceptions in Java 3-10-2005 Opening Discussion Do you have any questions about the quiz? What did we talk about last class? Do you have any code to show? Do you have any questions about the assignment?
More informationCMSC162 Intro to Algorithmic Design II Blaheta. Lab March 2019
CMSC162 Intro to Algorithmic Design II Blaheta Lab 10 28 March 2019 This week we ll take a brief break from the Set library and revisit a class we saw way back in Lab 4: Card, representing playing cards.
More informationCS 3 Midterm 1 Review
CS 3 Midterm 1 Review 1. Quick Evaluations Indicate what each of the following would return if typed into STK. If you think it would error, then please write ERROR. If you think that it would loop forever,
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 informationCS 483. Jana Kosecka CS Dept Eng. Building
CS 483 Jana Kosecka CS Dept. 4444 Eng. Building kosecka@gmu.edu Course Info Course webpage: from the syllabus on http://cs.gmu.edu/courses/ Information you will find course syllabus, time table office
More informationRegression testing. Whenever you find a bug. Why is this a good idea?
Regression testing Whenever you find a bug Reproduce it (before you fix it!) Store input that elicited that bug Store correct output Put into test suite Then, fix it and verify the fix Why is this a good
More informationCS 241 Computer Programming. Introduction. Teacher Assistant. Hadeel Al-Ateeq
CS 241 Computer Programming Introduction Teacher Assistant Hadeel Al-Ateeq 1 2 Course URL: http://241cs.wordpress.com/ Hadeel Al-Ateeq 3 Textbook HOW TO PROGRAM BY C++ DEITEL AND DEITEL, Seventh edition.
More informationTest 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 informationCypress FM4 Tools Set-up with Keil 5.x
Introduction Mark Wickert, 9/4/16, Revised 1/28/19 This document will describe the details of setting up your own system with the ARM IDE Keil, and software drivers that support the Cypress FM4 board.
More informationWelcome Application. Introduction to C++ Programming (Solutions) 2004 by Deitel & Associates, Inc. All Rights Reserved.
T U T O R I A L 2 Welcome Application Introduction to C++ Programming (Solutions) 1 2 Introduction to C++ Programming (Solutions) Tutorial 2 These solutions will not be available to students. Instructor
More informationDebugging. Erwan Demairy Dream
1 Debugging Erwan Demairy Dream 2 Where are we? Tools Requirements Global architecture UML Local architecture Implementation Compilation Link Editor Compiler Linker Tests Debug Profiling Build IDE Debugger
More information