SlideShare a Scribd company logo
1 of 18
Author: Sachet Mittal
Basics of STAF
 STAF is an Open Source automation framework
designed around the idea of reusable components,
called services
 STAF runs as a daemon process, called STAFProc, on
each system
 The collection of machines on which you have
installed STAF is referred to as the STAF Environment
 STAF is configured through a text file called the
STAF Configuration File - STAF.cfg.
STAF works in a peer-to-peer environment; in other
words, there is no client-server hierarchy among
machines running STAF agents
STAF as Middleware
 STAF can act as a middleware for a testing framework with the
framework on one side and the system under test on the other.
 By leveraging the flexibility of STAF, developers are able to develop
applications much more quickly and easily, and these applications
integrate together more cohesively
 STAF provides an infrastructure that makes it easier to manage tests
and test environments
FRAMEWORK STAF
SYSTEM
UNDER TEST
STAF as “glue”
 As STAF provides common services across multiple languages, It is very
simple to coordinate multiple different tools from a single point of
control
 STAF supports the following languages
 Java, C/C++
 Perl, Python, Tcl, Rexx, Shell-script
 Ant
 Command line
© 2009 IBM Corporation
STAF Customer Usage (Internal – IBM)
 STAF is the recommended automation
infrastructure for all of IBM
 It is used in conjunction with other
automation tools, such as Rational
tools and other vendor tools
 STAF is currently being used to
automate a wide variety of IBM
software/hardware/services testing
 Lotus/Workplace
 WebSphere
 Linux
 Printing Systems
 Rational
 CICS
 MQSI
 DB2
 Tivoli
 AIX
 LDAP
 Java
 Global Services
 Research
 iSeries
 zSeries
© 2009 IBM Corporation
STAF Customer Usage (External)
 Caldera
 Nokia
 Symantec
 Xerox
 HP
 SAS
 Ammunerve Development Services
 Sandia National Laboratories
 QUALCOMM
 CERN – European Organisation for
Nuclear Research
 TopSpin
 Agilent
 NCR
 Veritas
 ESSsoftware
 ClariStore
 Sega
 Intel
 Siemens
 Paragon Solutions
 Progressive Auto Insurance
 Systemware
 Kentrox
 Alberta Research Council
 Sun Microsystems
 Logitech
 Cisco Systems
 VMware
Common STAF usage
 Process invocation (Process)
 File Transfer (FS)
 File Packaging/Unpackaging (Zip)
 Synchronization (Sem)
 Resource management (ResPool)
 Dynamic data/configuration management (Var)
 Scheduling (Event, EventManager, Cron)
 Notification (Email)
 Workflow (STAX)
STAF Security
 Security in STAF can be defined at the machine level
and/or user level
 Each service in STAF defines a trust level which is required
in order to use the various functions the service provides
 trust level 0 indicates no access and trust level 5 indicates
full access.
 Syntax:
TRUST LEVEL <Level> MACHINE <Machine>
TRUST LEVEL <Level> USER <User>
TRUST LEVEL <Level> DEFAULT
 STAF is an executable that is used to submit requests to STAF from the command
line
STAF [-verbose] <Endpoint> <Service> <Request>
 Output on success :
Response
--------
[Result string]
 On an unsuccessful STAF request (i.e., a request with a non-zero return code), the
output from the STAF command will be as follows
Error submitting request, RC: <Return code>
[Additional info: <Result string>]
Interacting with STAF (Command line)
 You can leverage STAF in your Code by making calls into STAF services
 For all of the supported STAF languages, you can do the following
Register with STAF
Submit any number of calls into STAF services
Unregister with STAF
Running a STAF enabled Code
List of STAF services
 HELP
 Provides Help on STAF error codes (internal)
 PING
 Provides a simple is-alive message (internal)
 SERVICE
 Allows you to list services available on a machine and to examine the requests that have
been submitted on a machine (internal)
 SHUTDOWN
 Provides a means to shutdown STAF and register for shutdown notifications (internal)
 ECHO
 Echos back a supplied message (internal)
 MISC
 Handles miscellaneous commands and tracing (internal)
 DELAY
 Provides a means to sleep a specified amount of time (internal)
 DIAG
 Allows you to record and list diagnostics data (internal)
 FS (File System)
 Allows you to get and copy files (text and binary) across the network, list directories, copy
directories/subdirectories, and delete files (internal)
 FSEXT (File System Extensions)
 Provides some tools to perform extended file system requests (external)
 ZIP
 Provides a means to zip/unzip PKZip/WinZip compatible archives (external)
 HTTP
 Provides the ability to quickly and easily make HTTP requests (external)
 LOG
 Provides a full-featured logging facility (external)
 MONITOR
 Allows a testcase to publish its current running execution status for others to read (external)
 LIFECYCLE
 Allows STAF service requests to be run when STAFProc starts up or shuts down (internal)
 SXE
 Allows the user to sequentially execute any number of STAF commands (external)
List of STAF services (cont’d)
 FTP
 Provides client side FTP (File Transfer Protocol) functions like downloading or uploading a
file in binary mode from a remote FTP server (external)
 HANDLE
 Provides information about existing STAF handles (internal)
 QUEUE
 Provides a network-enabled IPC mechanism for STAF programs (internal)
 PROCESS
 Allows you to start, stop, and query processes (internal)
 SEM (Semaphore)
 Provides network-enabled named event and mutex semaphores (internal)
 VAR (Variable)
 Provides a method for maintaining configuration and runtime data/variables (internal)
List of STAF services (cont’d)
 TRUST
 Interfaces with STAF's security (internal)
 STAX
 Provides an XML-based execution engine. STAX also provides a powerful GUI monitoring
application which allows you to interact with and monitor the progress of your jobs
(external)
 EVENT
 Provides a publish/subscribe notification system (external)
 EVENTMANAGER
 Allows you to run a STAF command when a specified Event occurs (external)
 CRON
 Allows you to run a STAF command at a specified time interval (minute, hour, day, month,
weekday) (external)
 TIMER
 Allows a process on one machine to periodically receive a notification message from the
same or another machine (external)
List of STAF services (cont’d)
 NAMESPACE
 Provides a namespace hierarchy for storing and retrieving a persistent repository of
variables (external)
 RESPOOL (Resource Pool)
 Allows you to manage exclusive access to pools of elements, e.g. VM UserIDs or Software
Licenses (external)
 EMAIL
 Allows information, such as test results, to be emailed to a list of addresses (external)
List of STAF services (cont’d)
STAF basic concepts

More Related Content

Similar to STAF basic concepts

086 Microsoft Application Platform 2009 2010
086 Microsoft Application Platform 2009 2010086 Microsoft Application Platform 2009 2010
086 Microsoft Application Platform 2009 2010
GeneXus
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
csukxnr
 

Similar to STAF basic concepts (20)

086 Microsoft Application Platform 2009 2010
086 Microsoft Application Platform 2009 2010086 Microsoft Application Platform 2009 2010
086 Microsoft Application Platform 2009 2010
 
1.7 system calls
1.7 system calls1.7 system calls
1.7 system calls
 
FOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxFOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptx
 
OpenSolaris Introduction
OpenSolaris IntroductionOpenSolaris Introduction
OpenSolaris Introduction
 
TeraVM_overview_021115
TeraVM_overview_021115TeraVM_overview_021115
TeraVM_overview_021115
 
TeraVM_overview
TeraVM_overviewTeraVM_overview
TeraVM_overview
 
Windows Filtering Platform And Winsock Kernel
Windows Filtering Platform And Winsock KernelWindows Filtering Platform And Winsock Kernel
Windows Filtering Platform And Winsock Kernel
 
Internship msc cs
Internship msc csInternship msc cs
Internship msc cs
 
Introduction to data flow management using apache nifi
Introduction to data flow management using apache nifiIntroduction to data flow management using apache nifi
Introduction to data flow management using apache nifi
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
六合彩 » SlideShare
六合彩 » SlideShare六合彩 » SlideShare
六合彩 » SlideShare
 
六合彩,香港六合彩 » SlideShare
六合彩,香港六合彩 » SlideShare六合彩,香港六合彩 » SlideShare
六合彩,香港六合彩 » SlideShare
 
六合彩-香港六合彩
六合彩-香港六合彩六合彩-香港六合彩
六合彩-香港六合彩
 
香港六合彩-六合彩
香港六合彩-六合彩香港六合彩-六合彩
香港六合彩-六合彩
 
六合彩,香港六合彩 » SlideShare
六合彩,香港六合彩 » SlideShare六合彩,香港六合彩 » SlideShare
六合彩,香港六合彩 » SlideShare
 
六合彩-香港六合彩 » SlideShare
六合彩-香港六合彩 » SlideShare六合彩-香港六合彩 » SlideShare
六合彩-香港六合彩 » SlideShare
 
香港六合彩 » SlideShare
香港六合彩 » SlideShare香港六合彩 » SlideShare
香港六合彩 » SlideShare
 
Bloombase StoreSafe Specifications
Bloombase StoreSafe SpecificationsBloombase StoreSafe Specifications
Bloombase StoreSafe Specifications
 
White Paper: Scalable Lifecycle Management via Perforce
White Paper: Scalable Lifecycle Management via PerforceWhite Paper: Scalable Lifecycle Management via Perforce
White Paper: Scalable Lifecycle Management via Perforce
 
FPL'2014 - FlexTiles Workshop - 5 - FlexTiles Simulation Platform
FPL'2014 - FlexTiles Workshop - 5 - FlexTiles Simulation PlatformFPL'2014 - FlexTiles Workshop - 5 - FlexTiles Simulation Platform
FPL'2014 - FlexTiles Workshop - 5 - FlexTiles Simulation Platform
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

STAF basic concepts

  • 2. Basics of STAF  STAF is an Open Source automation framework designed around the idea of reusable components, called services  STAF runs as a daemon process, called STAFProc, on each system  The collection of machines on which you have installed STAF is referred to as the STAF Environment  STAF is configured through a text file called the STAF Configuration File - STAF.cfg.
  • 3. STAF works in a peer-to-peer environment; in other words, there is no client-server hierarchy among machines running STAF agents
  • 4. STAF as Middleware  STAF can act as a middleware for a testing framework with the framework on one side and the system under test on the other.  By leveraging the flexibility of STAF, developers are able to develop applications much more quickly and easily, and these applications integrate together more cohesively  STAF provides an infrastructure that makes it easier to manage tests and test environments FRAMEWORK STAF SYSTEM UNDER TEST
  • 5. STAF as “glue”  As STAF provides common services across multiple languages, It is very simple to coordinate multiple different tools from a single point of control  STAF supports the following languages  Java, C/C++  Perl, Python, Tcl, Rexx, Shell-script  Ant  Command line
  • 6.
  • 7. © 2009 IBM Corporation STAF Customer Usage (Internal – IBM)  STAF is the recommended automation infrastructure for all of IBM  It is used in conjunction with other automation tools, such as Rational tools and other vendor tools  STAF is currently being used to automate a wide variety of IBM software/hardware/services testing  Lotus/Workplace  WebSphere  Linux  Printing Systems  Rational  CICS  MQSI  DB2  Tivoli  AIX  LDAP  Java  Global Services  Research  iSeries  zSeries
  • 8. © 2009 IBM Corporation STAF Customer Usage (External)  Caldera  Nokia  Symantec  Xerox  HP  SAS  Ammunerve Development Services  Sandia National Laboratories  QUALCOMM  CERN – European Organisation for Nuclear Research  TopSpin  Agilent  NCR  Veritas  ESSsoftware  ClariStore  Sega  Intel  Siemens  Paragon Solutions  Progressive Auto Insurance  Systemware  Kentrox  Alberta Research Council  Sun Microsystems  Logitech  Cisco Systems  VMware
  • 9. Common STAF usage  Process invocation (Process)  File Transfer (FS)  File Packaging/Unpackaging (Zip)  Synchronization (Sem)  Resource management (ResPool)  Dynamic data/configuration management (Var)  Scheduling (Event, EventManager, Cron)  Notification (Email)  Workflow (STAX)
  • 10. STAF Security  Security in STAF can be defined at the machine level and/or user level  Each service in STAF defines a trust level which is required in order to use the various functions the service provides  trust level 0 indicates no access and trust level 5 indicates full access.  Syntax: TRUST LEVEL <Level> MACHINE <Machine> TRUST LEVEL <Level> USER <User> TRUST LEVEL <Level> DEFAULT
  • 11.  STAF is an executable that is used to submit requests to STAF from the command line STAF [-verbose] <Endpoint> <Service> <Request>  Output on success : Response -------- [Result string]  On an unsuccessful STAF request (i.e., a request with a non-zero return code), the output from the STAF command will be as follows Error submitting request, RC: <Return code> [Additional info: <Result string>] Interacting with STAF (Command line)
  • 12.  You can leverage STAF in your Code by making calls into STAF services  For all of the supported STAF languages, you can do the following Register with STAF Submit any number of calls into STAF services Unregister with STAF Running a STAF enabled Code
  • 13. List of STAF services  HELP  Provides Help on STAF error codes (internal)  PING  Provides a simple is-alive message (internal)  SERVICE  Allows you to list services available on a machine and to examine the requests that have been submitted on a machine (internal)  SHUTDOWN  Provides a means to shutdown STAF and register for shutdown notifications (internal)  ECHO  Echos back a supplied message (internal)  MISC  Handles miscellaneous commands and tracing (internal)  DELAY  Provides a means to sleep a specified amount of time (internal)  DIAG  Allows you to record and list diagnostics data (internal)
  • 14.  FS (File System)  Allows you to get and copy files (text and binary) across the network, list directories, copy directories/subdirectories, and delete files (internal)  FSEXT (File System Extensions)  Provides some tools to perform extended file system requests (external)  ZIP  Provides a means to zip/unzip PKZip/WinZip compatible archives (external)  HTTP  Provides the ability to quickly and easily make HTTP requests (external)  LOG  Provides a full-featured logging facility (external)  MONITOR  Allows a testcase to publish its current running execution status for others to read (external)  LIFECYCLE  Allows STAF service requests to be run when STAFProc starts up or shuts down (internal)  SXE  Allows the user to sequentially execute any number of STAF commands (external) List of STAF services (cont’d)
  • 15.  FTP  Provides client side FTP (File Transfer Protocol) functions like downloading or uploading a file in binary mode from a remote FTP server (external)  HANDLE  Provides information about existing STAF handles (internal)  QUEUE  Provides a network-enabled IPC mechanism for STAF programs (internal)  PROCESS  Allows you to start, stop, and query processes (internal)  SEM (Semaphore)  Provides network-enabled named event and mutex semaphores (internal)  VAR (Variable)  Provides a method for maintaining configuration and runtime data/variables (internal) List of STAF services (cont’d)
  • 16.  TRUST  Interfaces with STAF's security (internal)  STAX  Provides an XML-based execution engine. STAX also provides a powerful GUI monitoring application which allows you to interact with and monitor the progress of your jobs (external)  EVENT  Provides a publish/subscribe notification system (external)  EVENTMANAGER  Allows you to run a STAF command when a specified Event occurs (external)  CRON  Allows you to run a STAF command at a specified time interval (minute, hour, day, month, weekday) (external)  TIMER  Allows a process on one machine to periodically receive a notification message from the same or another machine (external) List of STAF services (cont’d)
  • 17.  NAMESPACE  Provides a namespace hierarchy for storing and retrieving a persistent repository of variables (external)  RESPOOL (Resource Pool)  Allows you to manage exclusive access to pools of elements, e.g. VM UserIDs or Software Licenses (external)  EMAIL  Allows information, such as test results, to be emailed to a list of addresses (external) List of STAF services (cont’d)

Editor's Notes

  1. This slide has been taken directly from the STAF site as is.
  2. This slide has been taken directly from the STAF site as is.
  3. [-verbose] force the use of the verbose mode for the output.&lt;Endpoint&gt; “LOCAL”, for a request of the local machine, or the name of the remote machine&lt;Service&gt; name of the service to which you are submitting a request&lt;Request&gt; actual request string that you wish to submit to the service&lt;Result string&gt; information returned from the STAF service request&lt;Return code&gt; actual return code from the request, and &lt;Result string&gt; information returned from the request
  4. STAF supports the following languages:Java, C/C++Perl, Python, Tcl, Rexx, Shell-scriptAntCommand line