National Alliance for Medical Image Computing Testing with CTest and CDash Julien Jomier Kitware Inc.

Slides:



Advertisements
Similar presentations
Jean-Christophe Fillion-Robin & Julien Finet Kitware Inc. June 20 th 2011.
Advertisements

PHP I.
The GridSite Toolbar Shiv Kaushal The University of Manchester All Hands Meeting 2006.
METALOGIC s o f t w a r e © Metalogic Software Corporation DACS Developer Overview DACS – the Distributed Access Control System.
PHP syntax basics. Personal Home Page This is a Hypertext processor It works on the server side It demands a Web-server to be installed.
Drupal Online Tutorial A Product of an ENGL 421 class at Purdue University Page 1.
What is it? –Large Web sites that support commercial use cannot be written by hand What you’re going to learn –How a Web server and a database can be used.
Creating WordPress Websites. Creating a site on your computer Local server Local WordPress installation Setting Up Dreamweaver.
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Multiple Tiers in Action
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
E-Commerce The technical side. LAMP Linux Linux Apache Apache MySQL MySQL PHP PHP All Open Source and free packages. Can be installed and run on most.
INTRO TO MAKING A WEBSITE Mark Zhang.  HTML  CSS  Javascript  PHP  MySQL  …That’s a lot of stuff!
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
© 2013 Jones and Bartlett Learning, LLC, an Ascend Learning Company All rights reserved. Security Strategies in Linux Platforms and.
WHAT IS PHP PHP is an HTML-embedded scripting language primarily used for dynamic Web applications.
SEEM4570: XAMPP, Eclipse, Summary of Html Kangfei Zhao Room 711,ERB
SYST Web Technologies SYST Web Technologies Installing a Web Server (XAMPP)
Web Page A page displayed by the browser. Website Collection of multiple web pages Web Browser: A software that displays web pages on client computer.
PHP and MySQL Week#1  Course Plan.  Introduction to Dynamic Web Content.  Setting Up Development Server Eng. Mohamed Ahmed Black 1.
Website Administration Information Systems 337 Prof. Harry Plantinga.
Software Process, CMake, Dashboards, CPack Bill Hoffman Kitware, Inc.
Web Server Configuration Alokes Chattopadhyay Computer & Informatics Centre IIT Kharagpur.
1 Network Statistic and Monitoring System Wayne State University Division of Computing and Information Technology Information Technology.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
Introduction to ASP.NET. Prehistory of ASP.NET Original Internet – text based WWW – static graphical content  HTML (client-side) Need for interactive.
National Alliance for Medical Image Computing Grid Computing with BatchMake Julien Jomier Kitware Inc.
Languages in WEB Presented by: Jenisha Kshatriya BCM SS09.
Unit tests, Integration tests Physics tests Andrea Dotti, Gunter Folger, Pere Mato CERN – PH/SFT Geant4 workshop 2012.
INTERNET APPLICATION DEVELOPMENT For More visit:
PHP With Oracle 11g XE By Shyam Gurram Eastern Illinois University.
Web Indexing and Searching By Florin Zidaru. Outline Web Indexing and Searching Overview Swish-e: overview and features Swish-e: set-up Swish-e: demo.
JavaScript – Quiz #9 Lecture Code:
We Know IT … IT’s What We Do! ® 2 Cyprien Mvuanda & Jonathan Davis Empire 2.0 Services October 1, 2010 Albany, NY Design, Development,Workflow and Implementation.
NA-MIC National Alliance for Medical Image Computing Core 1b – Engineering Software Process Stephen R. Aylward Kitware, Inc.
Proposal for the new group web infrastructure SFT Group meeting 3/7/2009 Yves Perrin.
1Computer Sciences Department Princess Nourah bint Abdulrahman University.
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
Web Architecture Introduction
RUBRIC IP1 Ruben Botero Web Design III. The different approaches to accessing data in a database through client-side scripting languages. – On the client.
Website Administration Information Systems 337 Prof. Harry Plantinga.
Web Design and Development. World Wide Web  World Wide Web (WWW or W3), collection of globally distributed text and multimedia documents and files 
NASRULLAH KHAN.  Lecturer : Nasrullah   Website :
PhpMyAdmin Matthew Walsh April 28, 2003 CMSC Shawn Sivy.
TOPIC 7.0 LINUX SERVICES AND CONFIGURATION. ROOT USER Root user is called “super user” because it has power far beyond those of mortal user. As root,
NA-MIC National Alliance for Medical Image Computing Non-Interactive Tools Stephen Aylward, Kitware
Server Side Scripting. Common Gateway Interface (CGI) The web is a client-server system.
8 th Semester, Batch 2009 Department Of Computer Science SSUET.
Engineering Projects In Community Service Matt Mooney Community Based Research University of Notre Dame.
 Before you continue you should have a basic understanding of the following:  HTML  CSS  JavaScript.
Eric Minner & James Pittman. Outline Project Statement / Motivation Concept overview Quick computer vision overview Demo Lessons Learned Future Work.
COSC 2328 – Web Programming.  PHP is a server scripting language  It’s widely-used and free  It’s an alternative to Microsoft’s ASP and Ruby  PHP.
Web Page Designing With Dreamweaver MX\Session 1\1 of 9 Session 1 Introduction to PHP Hypertext Preprocessor - PHP.
CGS 3066: Web Programming and Design Spring 2016 Introduction to Server-Side Programming.
PHP is a server scripting language, and a powerful tool for making dynamic and interactive Web pages. PHP is a widely-used, free, and efficient alternative.
Web Technology Seminar
CGS 3066: Web Programming and Design Spring 2017
Build and Test system for FairRoot
CISC103 Web Development Basics: Web site:
Lesson 4: Web Browsing.
By Dr. Kodge Bheemashankar G
PHP / MySQL Introduction
Database Driven Websites
IS 360 Course Introduction
Title: Tech Training Certificate: Ace of Initiative Program
Lesson 4: Web Browsing.
Introduction to World Wide Web
Chapter 9: Configuring Internet Explorer
Web Application Development Using PHP
Presentation transcript:

National Alliance for Medical Image Computing Testing with CTest and CDash Julien Jomier Kitware Inc.

National Alliance for Medical Image Computing Testing Overview CVS/SVN CDash Web Browser CTest Developers

National Alliance for Medical Image Computing Testing Terminology Sites dash5.kitware iris.elmtech Linux-g++ Builds Linux-gcc3 Linux-gcc4 Dashboard

National Alliance for Medical Image Computing Why Test Daily? Large code base too large for any single developer to understand Developers distributed around the world Identify problems as they occur Insure that object API remains unchanged Provide feedback to developers as they experiment with new implementations

National Alliance for Medical Image Computing “If it’s not tested it doesn’t work” Dasboards and Software Process –Roots in GE Six Sigma initiative Cross platform testing Nightly regression testing Memory (Purify/ValGrind) testing Coverage testing Style checking Documentation evaluation

National Alliance for Medical Image Computing How to write a good test? Use empirical values (5/2=2.5) Test most of the use cases (even the boring/most difficult ones) Make your tests as efficient as possible Have someone else write the test for your algorithm

National Alliance for Medical Image Computing Regression Testing Compare generated image against standard “correct” image –pixel-by-pixel comparison –can use a threshold metric –adjusted for effects like dithering

National Alliance for Medical Image Computing CTest Testing client Distributed with CMake Submit test results to the dashboard XML submission Independent of CMake

National Alliance for Medical Image Computing CTest with CMake CMakeLists.txt INCLUDE(CTest) ENABLE_TESTING() # Add a simple test ADD_TEST(CDashTest1 CDashTest CDashTest) ADD_EXECUTABLE(CDashTest main.cxx) CTestConfig.txt set(CTEST_PROJECT_NAME "MyProject") set(CTEST_NIGHTLY_START_TIME "21:00:00 EDT") set(CTEST_DROP_METHOD "http") set(CTEST_DROP_SITE "localhost") set(CTEST_DROP_LOCATION "/CDash/submit.php?project=MyProject") set(CTEST_DROP_SITE_CDASH TRUE)

National Alliance for Medical Image Computing Testing Submission XML Submission XML Parsing HTTP PUT CTest CDash Backup XML File Fill Database Send Update RSS Feed Update.xml Configure.xml Build.xml Test.xml Coverage.xml DynamicAnalysis.xml Compiler/Tester

National Alliance for Medical Image Computing CDash New generation of Dart Written in Php/Javascript MySQL Open Source Run on top of a web server XSL implementation Web 2.0

National Alliance for Medical Image Computing CDash Features Ajax requests Graphs: build, test times Builds group User management notifications Timing defects

National Alliance for Medical Image Computing Coverage Support Low Coverage Bullseye support

National Alliance for Medical Image Computing Build Notes Share with other developers Keep it simple

National Alliance for Medical Image Computing My CDash Personal Page Subscribe to project View sites preferences

National Alliance for Medical Image Computing Project Roles Normal user Site maintainer Project administrator

National Alliance for Medical Image Computing Claiming Sites Site information Automatic (CTest 2.6) Information history Manual editing Personal view/

National Alliance for Medical Image Computing CDash Misc. Automatic Geolocation from IP addresses Support for iPhone

National Alliance for Medical Image Computing Installing CDash (L/W)AMP : Apache, MySQL, PHP - XAMPP, EasyPHP Download CDash ( in your Apache web directorywww.cdash.org Edit config.php Point Web Browser to CDash - Setup the database - Create first project

National Alliance for Medical Image Computing Style Checking KWStyle C++ Style checker Configuration via XML HTML Generator (TBI in CDash) Open Source Written in C++

National Alliance for Medical Image Computing Contribute Website Bug Tracker - Mailing List - bin/mailman/listinfo/cdash

National Alliance for Medical Image Computing Happy Testing!