Business Unit or Product Name © 2007 IBM Corporation Introduction of Autotest Qing Lin.

Slides:



Advertisements
Similar presentations
COURSE: COMPUTER PLATFORMS
Advertisements

® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan
Edoclite and Managing Client Engagements What is Edoclite? How is it used at IU? Development Process?
Useful Tools for Testing
Asynchronous Solution Appendix Eleven. Training Manual Asynchronous Solution August 26, 2005 Inventory # A11-2 Chapter Overview In this chapter,
Apache : Installation, Configuration, Basic Security Presented by, Sandeep K Thopucherela, ECE Department.
Executive Overview. PLEASE READ (hidden slide) To deliver this presentation effectively, you need to be familiar with Windows Server 2008 R2 management.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
DIRAC API DIRAC Project. Overview  DIRAC API  Why APIs are important?  Why advanced users prefer APIs?  How it is done?  What is local mode what.
A walkthrough of the SageQuest Mobile Control Online & ESC integration.
Introduction to The Linaro Toolchain Embedded Processors Training Multicore Software Applications Literature Number: SPRPXXX 1.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Erlware For Managing Distribution and Build Erlang User Conference 2007.
Configuration Management and Server Administration Mohan Bang Endeca Server.
M Gallas CERN EP-SFT LCG-SPI: SW-Testing1 LCG-SPI: SW-Testing LCG Applications Area GridPP 7 th Collaboration Meeting LCG/SPI LCG.
Hall C Software Development From the perspective of a user.
© 2005 by IBM; made available under the EPL v1.0 | March 1, 2005 Tim deBoer Gorkem Ercan Extend WTP Server Tools for your.
What is Sure BDCs? BDC stands for Batch Data Communication and is also known as Batch Input. It is a technique for mass input of data into SAP by simulating.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Unit Testing.
Damian Zolich, TTCN-3 User Conference 2011
Software Tools and Processes Training and Discussion October 16, :00-4:30 p.m. Jim Willenbring.
© 2012 LogiGear Corporation. All Rights Reserved Robot framework.
Rsv-control Marco Mambelli – Site Coordination meeting October 1, 2009.
Instant Messaging for the Workplace A pure collaborative communication tool that does not distract users from their normal activities.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Introduction to Hadoop and HDFS
Chapter 1 Introduction to SAS ® Enterprise Guide ®
1 Module Objective & Outline Module Objective: After completing this Module, you will be able to, appreciate java as a programming language, write java.
6 th Annual Focus Users’ Conference Manage Integrations Presented by: Mike Morris.
1 / 22 AliRoot and AliEn Build Integration and Testing System.
Managing SX.e and TWL with MARC and Scripts Jeremiah Curtis
LCG-SPI: SW-Testing LCG AppArea internal review (20/10/03)
Samba – Good Just Keeps Getting Better The new and not so new features available in Samba, and how they benefit your organization. Copyright 2002 © Dustin.
Guide to Linux Installation and Administration, 2e1 Chapter 11 Using Advanced Administration Techniques.
Has Agent Scripting Got You FRUSTRATED?. Agent Scripting Simplified!
The EDGeS project receives Community research funding 1 Porting Applications to the EDGeS Infrastructure A comparison of the available methods, APIs, and.
M Gallas CERN EP-SFT LCG-SPI: SW-Testing1 LCG-SPI: SW-Testing QMTest test framework LCG AppArea meeting (16/07/03) LCG/SPI LCG Software.
1 / Platform Development Process In-house limited Automatically Measuring Code Coverage in Distributed Environment Li Fei Peng Platform QA Part, NSC 2009-
EGEE is a project funded by the European Union under contract IST “Interfacing to the gLite Prototype” Andrew Maier / CERN LCG-SC2, 13 August.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
ClearQuest XML Server with ClearCase Integration Northwest Rational User’s Group February 22, 2007 Frank Scholz Casey Stewart
Preface IIntroduction Objectives I-2 Course Overview I-3 1Oracle Application Development Framework Objectives 1-2 J2EE Platform 1-3 Benefits of the J2EE.
Apache Web Server Architecture Chaitanya Kulkarni MSCS rd April /23/20081Apache Web Server Architecture.
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,
SPI NIGHTLIES Alex Hodgkins. SPI nightlies  Build and test various software projects each night  Provide a nightlies summary page that displays all.
Build and Deployment Process Understand NCI’s DevOps and continuous integration requirements Understand NCI’s build and distribution requirements.
EValid LoadTest, eV.manger and Validation. Agenda Load Test capability of eValid How to execute load test by using eValid Introduction to eV.manager Validation.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Personalizing Web Sites Nasrullah. Understanding Profile The ASP.NET application service that enables you to store and retrieve information about users.
IBM Express Runtime Quick Start Workshop © 2007 IBM Corporation Deploying a Solution.
User Mode Linux (UML): An overview and experiences. Matthew Grove SLUG Tech Talk Red Hat Europe 12 th January 2007.
Tivoli Provisioning Manager V5.1 FP1 © 2006 IBM Corporation L2 GO Training Local TCA Install Przemyslaw Maciolek
Ansible and Ansible Tower 1 A simple IT automation platform November 2015 Leandro Fernandez and Blaž Zupanc.
Software tools for digital LLRF system integration at CERN 04/11/2015 LLRF15, Software tools2 Andy Butterworth Tom Levens, Andrey Pashnin, Anthony Rey.
© 2013 IBM Corporation IBM UrbanCode Deploy v6.0 Support Enablement Training Jenkins plug-in 1 November 2013.
© 2007 IBM Corporation 9/26/2016 Automated Generation of Kickstart Files IBM.
Useful Tools for Testing
Build Automation with Gradle
PYTHON: AN INTRODUCTION
Deploy Plugins Developer 29 October 2013
NIGHTLY BUILD SCRIPT FOR THE LEVEL-1 TRIGGER ONLINE SOFTWARE
make servers happy with automated testing
CAE-SCRUB for Incorporating Static Analysis into Peer Reviews
Dev Test on Windows Azure Solution in a Box
Introduction to Apache
An introduction to the Linux environment v
Web Application Development Using PHP
Presentation transcript:

Business Unit or Product Name © 2007 IBM Corporation Introduction of Autotest Qing Lin

Business Unit or Product Name © 2007 IBM Corporation 2Jun 19, 2012 Agenda  Overview of Autotest  Autotest Structure  Autotest Client Harness  Adding tests to Autotest Client  Analyze the test results  Integrate in Jenkins

Business Unit or Product Name © 2007 IBM Corporation 3Jun 19, 2012 Overview of Autotest – What is Autotest?  Autotest is a framework for fully automated testing.  It is designed primarily to test the Linux kernel, though it is useful for many other purposes such as qualifying new hardware, virtualization testing and other general user space program testing under linux platforms.  It's an open-source project under the GPL and is used and developed by a number of organizations, including Google, IBM, Red Hat, and many others.

Business Unit or Product Name © 2007 IBM Corporation 4Jun 19, 2012 Overview of Autotest – Goal  The aim is to produce a client which is open source, implicitly handles errors, produces consistent results, is easily installable, simple to maintain and runs either standalone or within any server harness.

Business Unit or Product Name © 2007 IBM Corporation 5Jun 19, 2012 Overview of Autotest – General Features  Support for functional, performance, stress tests  Simple inclusion of tests – Trivial to incorporate existing tests – Easy to write new tests – Possible to write very complex tests  Complete control over environment  Consistent, machine-parseable results output  Tests can be executed standalone or as part of a larger-scale system – Easy to run a prepackaged collection of tests

Business Unit or Product Name © 2007 IBM Corporation 6Jun 19, 2012 Autotest Structure  Users-->Autotest Client  Users-->Autoserver-->Autotest Client  Users-->Frontend-->Autoserver-->Autotest Client

Business Unit or Product Name © 2007 IBM Corporation 7Jun 19, 2012 Autotest Client Harness  Harness running on the machine under test  Written in Python– APIs to easily compile and run C code  Each test has a simple wrapper class  Standardized results reporting for all tests  Comprehensive error handling  Control flow is managed by a control file

Business Unit or Product Name © 2007 IBM Corporation 8Jun 19, 2012 Autotest Client Harness – Anatomy of a test

Business Unit or Product Name © 2007 IBM Corporation 9Jun 19, 2012 Autotest Client Harness – Test Class  initialize() - This is run before everything, every time the test is run.  setup() - This is run when you first use the test, and normally is used to compile the source code.  warmup() -For performance tests that need to conduct any pre-test priming to make the results valid. This is called by job.run_test before running the test itself, but after all the setup.  run_once() - This is called by job.run_test N times, where N is controlled by the iterations parameter to run_test (defaulting to one). It also gets called an additional time with profilers turned on, if you have any profilers enabled.  postprocess_iteration() - This processes any results generated by the test iteration, and writes them out into a keyval. It's generally not called for the profiling iteration, as that may have different performance.  postprocess() - [DEPRECATED] This is called once to do postprocessing of test iterations, after all iterations are complete. Please use postprocess_iteration instead.  cleanup() -Used for any post-test cleanup. It always gets called, regardless of the success or failure of the test execution.

Business Unit or Product Name © 2007 IBM Corporation 10Jun 19, 2012 Adding tests to Autotest Client – Contents Today  Tests / Testsuites  It only takes about 10 minutes to wrap a test

Business Unit or Product Name © 2007 IBM Corporation 11Jun 19, 2012 Adding tests to Autotest Client  An example control file (eg tests/mytest/control)  A test wrapper (eg (tests/mytest/mytest.py)  Some source code for the test (if it's not all done in just the python script)  The name of the subdirectory (tests/mytest), the test wrapper (mytest.py) and the name of the class inside the test wrapper (mytest), all match.

Business Unit or Product Name © 2007 IBM Corporation 12Jun 19, 2012 Adding tests to Autotest Client – control file  Path :tests/mytest/control

Business Unit or Product Name © 2007 IBM Corporation 13Jun 19, 2012 Adding tests to Autotest Client – test wrapper  Path :tests/mytest/mytest.py

Business Unit or Product Name © 2007 IBM Corporation 14Jun 19, 2012 Adding tests to Autotest Client – test call process

Business Unit or Product Name © 2007 IBM Corporation 15Jun 19, 2012 Analyze the test result  View the rough result –./tools/scan_results.py results/default/status

Business Unit or Product Name © 2007 IBM Corporation 16Jun 19, 2012 Analyze the test result  Result directory – results/default  Detailed info for each case

Business Unit or Product Name © 2007 IBM Corporation 17Jun 19, 2012 Analyze the test result  Result in HTML

Business Unit or Product Name © 2007 IBM Corporation 18Jun 19, 2012 Integrate into Jenkins – Create a Job

Business Unit or Product Name © 2007 IBM Corporation 19Jun 19, 2012 Integrate into Jenkins – Configuration I Name Workspace Configuration Page

Business Unit or Product Name © 2007 IBM Corporation 20Jun 19, 2012 Integrate into Jenkins – Configuration II Run test script

Business Unit or Product Name © 2007 IBM Corporation 21Jun 19, 2012 Integrate into Jenkins – Configuration III Notification

Business Unit or Product Name © 2007 IBM Corporation 22Jun 19, 2012 Integrate into Jenkins – Get the Result in Log

Business Unit or Product Name © 2007 IBM Corporation 23Jun 19, 2012 Thank you Thanks to Li and Richard for reviewing it.