You are on page 1of 366

......................................................................................................................................

soapUI v.2.5.1

Project Documentation

......................................................................................................................................
eviware 01 February 2009
TABLE OF CONTENTS i

Table of Contents
......................................................................................................................................

1 User Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.1 Tabbed Desktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1.2 License Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1.3 Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.1.4 XPath Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

1.1.5 WSDL Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22


1.2 Workspaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.3 Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.3.1 Project View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

1.3.2 Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

1.3.3 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

1.3.4 WS-Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

1.3.5 Encryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

1.3.6 Composite Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

1.3.7 Project Resolving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53


1.4 WSDL Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

1.4.1 Interface View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

1.4.2 WS-I Compliance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

1.4.3 WSDL Refactoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

1.4.4 WSDL Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

1.4.5 Working with SOAP Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

1.4.5.1 Form Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

1.4.5.2 Overview View . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

1.4.5.3 Outline Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

1.4.5.4 Pro Inspectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

1.4.5.5 Attachments/Inline Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


TABLE OF CONTENTS ii

1.5 REST Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

1.5.1 Parameters/Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

1.5.2 Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

1.5.3 Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114


1.6 Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

1.6.1 Script Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

1.6.2 Dynamic Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123


1.7 Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

1.7.1 Property Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130


1.8 Functional Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

1.8.1 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

1.8.2 TestSuites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

1.8.3 TestCases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

1.8.4 TestSteps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155

1.8.4.1 Test Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

1.8.4.2 Property Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162

1.8.4.3 Conditional Gotos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

1.8.4.4 Groovy Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

1.8.4.5 Properties Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

1.8.4.6 Delay Step . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

1.8.4.7 Run TestCase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

1.8.4.8 Mock Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

1.8.4.9 DataSource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189

1.8.4.10 DataSource Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

1.8.4.11 DataSink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198

1.8.4.12 DataGen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204


1.9 Load Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

1.9.1 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215

1.9.2 Limit & Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217

1.9.3 Execution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221

1.9.4 Assertions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

1.9.5 Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

1.9.6 JMeter comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


TABLE OF CONTENTS iii

1.10 Mocking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

1.10.1 Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238

1.10.2 Mock Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

1.10.2.1 Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

1.10.3 Mock Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251

1.10.4 Mock Responses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256


1.11 SOAP Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.11.1 Coverage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.12 Usage Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.12.1 Data Driven Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.12.2 Template Driven Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

1.12.3 Interactive Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.12.4 Surveillance Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20


1.13 Tool Integrations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

1.13.1 Code Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.13.2 Apache TCPMon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36


1.14 CommandLine Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

1.14.1 TestCase Runner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

1.14.2 LoadTest Runner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

1.14.3 MockService Runner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

1.14.4 Tool Runner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54


1.15 IDE/Tool Plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

1.15.1 Maven Plugins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

1.15.1.1 Maven 1.X Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

1.15.1.2 Maven 2.X Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

1.15.2 NetBeans Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

1.15.2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

1.15.3 IntelliJ Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

1.15.4 Eclipse Plugin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

1.15.4.1 soapUI Nature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80


1.16 Keyboard shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


TABLE OF CONTENTS iv

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 1

1.1 Overview
......................................................................................................................................

soapUI Overview

Prerequisites


        
        

   

   
 
           
  !    
      "     
      
   #$% &
 
!    
          '&(% )
 * 

  )  + *  
  ) + *
  
       ,-&.  /..0    +   
        "
  #0  #$% &      
!         '12           3   '1& 
4


The soapUI Interface

       "   


            
 
(  -       3   -  56   (- $  
  "              
       
 "     7  78             


.        


 9

bottom-left bottom right


• The Properties panel will show information on the item currently A color coded log view showing log messages from soapUI
selected in the navigator

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 2

!      "
  
      "   

   "
 

+:
+ 
        
    "

The Navigator

. 
:        
 9

  9    " 
 0: ) * 9    :   " 

   + & ) * 9    '&(%    ,-&. &   :

 ;   + ,   ) * 9    '&(% ;    ,-&. ,    


 
 +&
 ,<   ) * 9    '&(%  ,-&. ,<        

;    ,  

 ,-&. ,   ) * 9     ,-&. ,  

 . &  ) * 9    . &    :

 . 2  ) * 9    . 2      

       . 2  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 3

 . & ) * 9    . 2    


     

       

       . 2  

 % .  ) * 9          


. 2 

 $"& ) * 9    $"&   :

 $";   ) * 9    $";     $"&

 $",   ) * 9    $",      


$";  

.      
 
    "          "    
     "
  
   
-

Property Mode
. 5 
        

        0 


   
5 
  
    
 0     
:    )
 =
 +  " =   *

            :
   
    )0:  . &   . 2   $"& 
$",  *    
           :     
 (  "
         
 ,
 "
 0       
   
;                 
       3
    0  -3     "
 3        3  
      


    #$%     #0  &      


  
     3   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 4

Drag and Drop

   3    


  
   5 
  

 
2  $              3   



,<    . 2    . ,<   &  
  

 ,<      
   
      . &   . 2     5 
 
  
      

Main Menu

$        


      3   
    
. 
          9

! "
.   >         '"      
   '" 

          
 9

# &
    0
 $
# &    
  

 %& 
# 0    
  
    ) 3    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 5

     *   


             
   
  2       :   "     

 ' 0   3  


 ' (" $    3     


      


   3   

 "
 2    "

       . 
  

) " &         ( " 
 ( (         
 
    
 '&* )     5 
  %
 
 + +"        " 
 +      " 
 +      "  3      
   + ," - .%
 // ) ,0    . 2    
 5 
8     "   . 2       . &   . 
?   


 "
       0  
 
 ;   &  0
           
 . 1" ;       ? 
 1  ;     ?
&   
 ,&
  ;             )  *
 .   )   0 *  %  $ 

 (   )   0 *  %  $ 

  .%2$(2& ;   9++  
  9++ 
 /"  .% &      

System Properties

. &  0             

   
            


     
 @

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 6

Log Tabs

.  
     "       
      

 
  8

,
 "
 
                 
 
           
             
    3           3          )   ABBB*
 3
        
) *

. 
        ) *9
  .% 
     

     
   <    
         
" )   
% . 
*
 ,  "        
 $,  

 
   
    
: )   
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 7

        C+0 + &


*
   
 
           
3   
  
    
           0       


            3     


        
"               7   7   
 &&,    
               

 ,
 "
    7?27    

  ? 
 2
   
D:  


     4  
D: 
   

D: 3

     7   
D:37       )    "

   
 *

539   0 .  ( "

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1 OVERVIEW 8

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.1 TABBED DESKTOP 1

1.1.1 Tabbed Desktop


......................................................................................................................................

soapUI Pro Tabbed Desktop


  0     "         (-  .    
     &
.     
    
8  7. 7  
( " .   3

;                


 

   
      
  -   
   
    

   
 "  "    "      )       *
    
 "   .  ?   "   "+ "   .  ?
 
  
 7
 7  4       "              
             3   $"&   . 2     
.   
 "         
     "  
 

   + 

C 3    


        . 2     

 
      % .    
 . E     
     

  


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.1 TABBED DESKTOP 2

539   0 %  $ 




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.2 LICENSE MANAGEMENT 3

1.1.2 License Management


......................................................................................................................................

soapUI Pro License Management


  0    
   
 8   
        
   3   
 
     % 9

&
  7   . 7  76  % 7      ' 0
    

 
     3   

2 
     
     
              
 7?  7     0                  
      

 
               
 
   
  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.2 LICENSE MANAGEMENT 4

.  
         7/ +& %  (  7        
            7/ +   % 7         
 

Command Line, Plugins and Licenses

5         <       .   .  (- 
 
                 0  

539   0

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 5

1.1.3 Preferences
......................................................................................................................................

soapUI Preferences
.   
   
 70 7         

  9

Tab Description

HTTP Settings Sets various HTTP-related options



Proxy Settings Sets HTTP Proxy address and authentication

SSL Settings Sets SSL-related options

WSDL Settings Sets WSDL-related options

UI Settings Sets UI-related options

Editor Settings Sets editor-related options

Tools Sets paths to integrated tools

WSI Settings Sets WS-I Basic Profile validation options

Global Properties Manages Global Properties

Global Security Settings Manages Global Security Settings

WS-A Settings Manages WS-A Settings

soapUI Pro Settings Sets soapUI-Pro specific settings

Coverage Settings Coverate related settings

Code Templates Code Templates settings

Import Preferences

.
  C        

     3 

             3 


  
    0  

 
  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 6

.   9


 !  3 
      
 %& 
#3 /3  3  '    
    
 
 $(  3 
 
  
                    3 
         

HTTP Settings

Setting Description

HTTP Version Selects the HTTP version



User-Agent Header Sets the HTTP User-Agent Header. If none is specified the default
HttpClient header is used

Request Compression Selects the request compression type

Response Compression Indicates if compressed responses from hosts are accepted

Disable Response Decompression Disables decompression of compressed responses

Close connections after request Disables HTTP Keep-Alives by requesting to close the HTTP
connection after each request. This will have a negative impact on
performance but may give more realistic values during load testing

Disable Chunking Disables content-chunking


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 7

Setting Description

Authenticate Preemptively Send Authentication headers with each request without first receiving
an authentication challenge. This is a potential security hazard but will
improve performance since only one request will be required for
authenticated endpoints instead of two

Preencoded Endpoints Do not URL-encode endpoints, set this if your endpoint URLs are
already URL-encoded (containing for example %20 or %3A)

Bind Address The local address to bind to when sending requests, can be
overridden on a request level (with the corresponding request
property) and on a system level by setting the soapui.bind.address
system variable.

Include request in time taken Includes the time it took to write the request in time-taken

Include response in time taken Includes the time it took to read the response body in time-taken

Socket Timeout The socket timeout for HTTP requests in milliseconds

Max Response Size The maximum number of bytes to read from a response (0 =
unlimited)

Max Connections Per Host The maximum number of simultaneous connections to a specific host.
Increase this value if you are running LoadTests with more than 500
threads on a particular host.

Max Total Connections The total maximum number of connections. Increase this value if you
are running LoadTests with more than 2000 threads.

Leave MockEngine Will leave the MockEngine running even when all MockServices have
stopped resulting in much faster startup-times for new MockServices
and 404 errors when trying to call a stopped MockService (instead of
connection failure)

Enable Mock HTTP Log Logs wire content of all mock requests. Selecting this option will
degrade Mock Engine performance marginally and may require restart
to enable or disable.

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 8

Proxy Settings

Setting Description

Proxy Host The HTTP Proxy host to use



Proxy Port The HTTP Proxy port to use

Proxy Username The username sent for proxy authentications

Proxy Password The password sent for proxy authentications

Excludes A comma-separated list of hosts to exclude, for example
"127.0.0.1:8080,myserver.com" will not use a proxy for 127.0.0.1 on
port 8080 and myserver.com on any port.

 F             5.%$   8  
  F
        
     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 9

SSL Settings

Setting Description

keyStore Path to the keyStore to use when locating client certificates



keyStore password the keyStore password

Enable Mock SSL Enables SSL support for MockServices

Mock Port The port for SSL connections

Mock KeyStore The keystore to use for SSL certificates

Mock Password The keystore password

Mock Key Password The default keys password

Mock TrustStore The truststore to use (optional)

Mock TrustStore Password The truststore password

Client Authentication Indicates if client authentication is required

2 

     
   <        
   .
$"&   

   3   $"-
   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 10

WSDL Settings

Setting Description

Cache WSDLs Turns on and off caching of WSDL's as described under Caching
Definitions .

Sample Values Generates example values in requests when creating from schema

Type Comment Generates comments with type information in new requests

Include Optional Always includes optional elements in generated requests

Pretty Print Pretty prints response messages in response editor

Attachment Parts Generates part-elements in request messages for mime-attachments
in RPC messages (required by some ws-stacks)

No Content-Type Validation Does not validate the content-type of a mime-attachment against the
type(s) specified in the SOAP-Binding

Schema Directory Specifies a directory containing schema (.xsd) files that should be
automatically added when parsing or validating wsdl or requests.
Changing the contents of this directory requires a restart.

Name with Binding Tells soapUI to name imported interfaces with the name of their
corresponding soap/http binding, and not with their portType (as
described in Interfaces ). This ensures that WSDL containing bindings
for both SOAP 1.1 and SOAP 1.2 will get unique names during import.
This setting defaults to true.


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 11

Setting Description

Excluded Types A list of XML-Schema types and global elements in the form of
name@namespace which will be used when generating sample
requests and responses and input forms in the soapUI Pro Form
editor. By default the XML-Schema root element is added since it is
quite common in .NET services and generates a sample xml fragment
of about 300 kb!.

Strict Schema Types Check this to not allow schema type redefinitions in included/imported
xsd:s for a specific WSDL (default behavior in versions prior to 1.7.5)

Compression Limit The minimum message size to compress in the soapUI project file for
preserving space. Compression is performed with gzip and the result
is base64 encoded into the project file. For large requests, this can
save up to 90% file-space, but be aware that the requests are no
longer readable or diffable.

Pretty Print Project Files Pretty prints project files when they are saved, which makes it easier
to work with a source-control system (diffing, etc...). Be aware that
when selecting this option the size of the project files will increase
substantially and also cached WSDLs and XSDs will be pretty-printed.

UI Settings

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 12

Setting Description

Close Projects Closes all projects at startup for improved startup-time and less
memory consumption.

Order Projects Sorts Projects in alphabetical order in the navigator.

Order Requests Sorts Requests in alphabetical order in the navigator.

Order TestSuites Sorts TestSuites in alphabetical order in the navigator.

Show Descriptions Show description content when available

Save Projects On Exit Automatically save all projects on exit.

Create Backup Creates a backup copy of a projects project-file before saving.

Backup Folder The folder where to save backups, if relative or empty the folder is
relative to the project files folder

Auto Save Interval Sets a project auto save interval (in minutes). If set over 0, soapUI will
automatically save all projects that have no running tests (both
Functional and Load) at the specified interval

Desktop Type Selects which desktop layout to use. soapUI Pro adds a Tabbed
Desktop as an alternative to the default layout. Changing this setting
will be applied when closing the preferences dialog.

Native L&F Turns off the use of the default Look & Feel and uses the JRE default
instead. Requires a restart.

Do not disable Groovy Log Keeps the groovy log active during LoadTests, which can be useful for
debugging, etc.

Show Log Tabs Expands the log tabs when starting soapUI.

Show Startup Page Opens startup web page when starting soapUI.

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 13

Editor Settings

Setting Description

Editor Font The font to be used by all XML Editors. The "Select Font" button
opens a dialog for selecting the desired font and size.

XML Line Numbers Shows line-numbers by default in all XML-Editors (use Alt-L in editors
to toggle).

Groovy Line Numbers Shows line-numbers by default in all Groovy-Editors (use Alt-L in
editors to toggle).

Disable auto-resize Disables automatic resizing of request/response editors.

Tabbed Request view Sets the tab-layout as the default layout for request/response editors
(see Requests ).

Validate Requests Turns on automatic validation of requests before they are submitted
from a request editor. The validation performed is the same as when
pressing Alt-V in the editor.

Abort on Invalid Enabled in conjunction with "Validate Requests", if selected any
requests that fail validation will not be submitted.

Validate Responses Turns on automatic validation of response messages when they are
received in a response editor. The validation performed is the same
as when pressing Alt-V in the editor.

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 14

Integrated Tools

0   
  .    . 
 

WSI Settings

.  
    '&  G         '&  
  

Setting Description

Verbose Sets verbose output of WS-I tools



Results Type Sets which results to show in the generated report

Message Entry Shows message entries in report

Failure Message Includes defined failure messages in report

Assertion Description Includes description of each test assertion in report

Location Local path to installed WS-I test tools

Show Log Shows Log window when running WS-I tools

Output Folder If specified, generated HTML reports will automatically be exported to
this folder, which is required when running ws-i validation from the
command-line or one of the Maven plug-ins

Global Properties

$ 

                   
       . 7-  ;7     "
        

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 15

    )  0     *

Global Security Settings

$ 

  &           
  
 '
 
   
      "      
  
          

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 16

WS-A Settings

$ 
 '&  


Setting Description

Soap Action Overrides WS-S Action If present in the WSDL soap action overrides wsa:Action

Use default RelationshipType Indicates using default 'reply' for RelationshipType as specified in
Message Addressing Properties

Use default RelatesTo Indicates using default 'unspecified' for RelatesTo as specified in
Message Addressing Properties

Override existing headers Indicates replacing/skipping(if unchecked) already existing headers

Enable for optional Addressing policy Enables WS Addressing for Policy Addressing Assertion attribute
Optional="true" (see the WS-Policy Assertions specification )

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 17

soapUI Pro Settings

.  
      0    

Setting Description

Default Request Editor Sets the default Message Editor to use when a Request is opened

Default Response Editor Sets the default Message Editor to use when a Response is received

Outline Editor Limit Defines the maximum size of messages to handle in the outline editor;
since the outline editor consumes a large amount of memory, setting
a limit related to one’s own memory settings is encouraged

Form Editor Limit Defines the maximum size of messages to handle in the form editor;
since the form editor consumes a large amount of memory, setting a
limit related to one’s own memory settings is encouraged

Table Inspector Columns Sets the maximum number of columns displayed by the Table
Inspector (due to performance reasons).

Script Library Sets the location for the local Script Library .

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 18

Coverage Settings

.  
      0  '&(% 2
   

Setting Description

Auto Prepare Automatically prepares for Coverage calculation when opening a


window containing Coverage content.

Code Templates

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.3 PREFERENCES 19

  0         2 .          
 
   
   
2 &     
   .

    ++ 2 .        H    
               )         
      3*

  0         9



  
 =      ? ) 3 *
 3   =
 
#/) 7HI,  7 *

539   0 #0  &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.4 XPATH SELECTION 20

1.1.4 XPath Selection


......................................................................................................................................

soapUI Pro XPath Selection Dialog


  0   #0  '4   &  
        #0  3   
< 9
 . #0    
 . 0  .   
 . $";   
 . 2 ? 
 

.    
          
  #$%    
5 

       
#0  3         &

      


;J      
     #0  3    
 
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.4 XPATH SELECTION 21

539   0 '&(% 2




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.5 WSDL COVERAGE 22

1.1.5 WSDL Coverage


......................................................................................................................................

soapUI Pro WSDL Coverage


  0    <     '&(% 2
         4
   
    '&(%  
    C   .   $"&  $"
2  &;0 $    
  .    

   
   '&(% 2
  "    
      2
  
  .               K

Web Services Coverage

.      L   5  


            
      
  

 3    )   
 .  * .  
    
                   
   

' &       '&(%          
   
    "       C   
  
     
             
   


       

. '&(% 2


     4   
        
 

  
 3   . ,              
         
    .          

  4      
8 7$
 2
7

C    


         4   #0       
     
                    
 .       $
 2
       7  2
7

Coverage Visualization

     2


           2
 0       

    9
         
+ 
2
 
2
 ;   3 

2
 , 
  2
 ..      
     
: 
 
    
 
+     
 .     
  
 2
 G 4       
<       )7$
 2
7*     $
 2    <   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.5 WSDL COVERAGE 23

     
 ;         
   9
 ,  %
& 
 
   ,  9      
.  2
8       
#0     
    & . &  . 2   . &     
            
    . &    

The Coverage Tree

. 2
 .          E  9
A .   0        :     ;    C     
  ,<    ,    ++  +   
   .
   2
    


 7   7     3     
  
  ;    2
  M+>   


    
,<   
,   
 2
     .        ,   C    
 
 .  ,  )B+A*
E . . &         :  . &   . 2     . &  
  . &        $
 -3 
  
 .  ,     $

  
   
  &

 <         

 
 $
 2           
 )  

* &
 $
 2
          
  
   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.5 WSDL COVERAGE 24

(  "               
+

Assertion Coverage

     


   .     #0     4 

     
  
    '&(%          
2
       "
    2
 .   $
     

  $
 2
                  
 #0  3               ,      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.5 WSDL COVERAGE 25

Coverage Options

. 2
 ;   
            
  9
 +" & , 4"            
 
 5 4"        
N    
 
 '" &           "{" + Namespace URI + "}" +
local part     3   
     
 " 4"           "{" + Namespace URI + "}" + local
part=comma-seperated list of values     
       
C 3       "      
{http://my.namespace}weekday=mon,tue,wed,thu,fri,sat,sun  
  
             

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.1.5 WSDL COVERAGE 26

Coverage Measurement Points

       
  1     9
A ! !"    
      '&(%         
   .  
2
 0        0:  . &   . 2  
E ! )$   
       '&(%  
"    
   '&(%  
4+    $"  
1 ! 
   
      '&(%  
      
539 '" 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.2 WORKSPACES 27

1.2 Workspaces
......................................................................................................................................

Workspaces
   '"     0:  :  "   3    9
 (  "         
${user.home}/default-soapui-workspace.xml  & "  
 5 
& '"       
  "     
   3       "    
     :       " 
     "      
        :         "        
     )  *  :             
   
       
 "         "     
)      *
0:             "  
 $ 2  
'"     0:   

' 3
         :    "  3       
   
       "  
      3       :
    3                      
          

Open or Close Projects

0:     +    


 
   8   : 
   
              "
  

 

      2  :        
 
            :           
"     
 
"  
   &
    )  0 *
    
 :   
 " 

soapUI Workspace Actions

. 
       "   
    )     
7C7  *9
 6(  .%
 9 0      &  0: 
 %& 
 9 0       3 
  : . :    
   "    :                
   
  
       


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.2 WORKSPACES 28

 %&  &


 9 0   ,%   3 
   : . : 
      "       )    , 0: *
 $ 
 &   :
    +
 ;     : 
 +   
 0        : 
 & ,   '"               
5 

 6( )  0        " 
 ( )  0    3 
"      )    :  
   "
   *
   (   
   3   

soapUI Workspace Details Tab

. 7(  7          


     "   
    
 
 6& 9        " 
   9           "       
"     5 

 ! )  *9    "   

  9       :

539 ' & .  0:

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3 PROJECTS 29

1.3 Projects
......................................................................................................................................

Web Service Testing Projects


    :            '"     
 
)  *   
3 
     0:    
   5 
9
     '&(%    
 &;0+/..0 6
  0. 
     ,-&. &     
  '(%
     . &   
. 2        ;  
     $"&  
$"          ;  
  :       3     )   * .    
    "  2G&      .        
   :            "
   ,  
, )  *          '  
 3 
  :
          "    7  0:7    '" 
  

  EO   7,   ,7 :             
    )       (  &"+(  &   * '  
    4        

              :           


 
             '&(% + &;0 )"
   com.eviware.soapui.model "
* 2  
        
    '&(% AA   &;0+/..0 
) <   6  0 AB* . 
          
     

Creating a SoapUI Projects

&
 5 &  0:     '"  $     
  
9
      :  < 
       '&(%+'(%      : )   ,%*
         <    
   '&(%
    
  " . &     '&(%  '(%
       ' & &       '&(%
        
  ,-&.    '(%
          :    :  )     : 
 
 
*

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3 PROJECTS 30

Remote Test Projects


  APQ  
     :    ) *      ) 
   * '  
  ,%   :      "  
          
, :           "  
       


.         9


 0:              <        
3     
       
 .    . ,        :   
  4 
 
:             

, :       :              3 
    
   :       7&  7 0: $  
     :     
  
     :

Test Project Actions


. 
       :   
    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3 PROJECTS 31

 (
 4( ;   0: G '
   0   '&(% ) ,%   *         


    0   '(% ) ,%   *         


 6(  $ ;   
 
 ,-&. &   :
 "  " ;    
  
 2  % . , 
 "   " ;    
  
 2  % % . , 
 " 
 ;    
  
 &;0 $
 6( " 0      . &     :
 6( )$ 0      $"&    :
 & 0       : .          

 .     :    
 &$ 0      :   "  . :    
        "   "   < 
 
 0      :   3      
  

 $
 ,   
"  : 
 +
 0        :  
   " 
 $
 &       :         
: 
 $
  &       :         : 
 %&   "     3  . & 
   (   
   3   

Project Details Tab

. 7(  7          


     "   
    
 
 6& 9      :
   9         :       :   
 5 

 ! )  *9   : : 
 "  9           
 + # 9           : )  2 
( *
.  
  72  '&(% 7 
  '&(% 0 
 


( &       
 :   
 
-     
 +& 
 &  :       : ) ,  $ *

Project View

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3 PROJECTS 32

'   "


:  
  0: G .      :  


 "   :     

. 0:                          
    :  .    3      
      
  

. .    9
 $$( / .   
   < "     : 
 
:       . &  :    ,  $

 +$ / -
 ,0 0: 2
           
    :    
     .      "   
       .  R     ,  $

 7"& / -
 ,0 . 0: ,<            


  <     ,  $


 8", +#" / . '& &  2
  .    "
 
 
'& &  
      .   &;0 $  $"&  ,  $

539 0: ;

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3 PROJECTS 33

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.1 PROJECT VIEW 34

1.3.1 Project View


......................................................................................................................................

Project View Tab: Main View

. :              :    
 .  $  $"& $  .    < "   

 
    :

'        :          

Description Inspector

. (             


       0:

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.1 PROJECT VIEW 35

Description Inspector

. 0      0:  0   .          
 0:

Load Script Inspector

. %  &          ? &          :


. 
  
0: 0   
0: ,<   3     

Save Script Inspector

. &  &           %  &           ?
&         : . 
  
    
0:
,<   3     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.1 PROJECT VIEW 36

539 0: 2




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.2 COVERAGE 37

1.3.2 Coverage
......................................................................................................................................

Project Coverage
0: 2
     2
      .  2
 
       
  :     
2
            2
    
  , +2 +0
         . &      :   
 

  3 

.       3  7,  %


7     

  
   
. &  +. 2 

539 ' & 0: ,< 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.3 REQUIREMENTS 38

1.3.3 Requirements
......................................................................................................................................

Web Service Project Requirements


0: ,<  )   0 *     
 <    :  
3            
           3 
<  

. <         . 2   


 <   "    
    

Project Requirements Menu Bar

. 0: ,<     


    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.3 REQUIREMENTS 39

  7"&  ,< 


 &$ 7"& , ,< 
 %&  7"&   ,<   3  &   
 '  7"& -3  ,<   3  &   

Import File Format

.      


 3 
 <             <  
;     8 ( 5  & (    &    -3  9

"TST-049","User Name Length","User Name must exceed 6 chars and be case


sensitive","In Scope"
"EVI-020","Cu No SQL Injection Test","Test SQL Injection","Out of Scope"
"EVI-021","Loadtest Purchase","We must make sure that Purchase withstand a buying
storm","Out of Scope"

Web Service Requirements List

.     <      


9
 % .   (   ,<  ?       (       . 
$ 
    0: $ 
      "      (
(      < 
 6& 5    ,< 
   & (     ,<  %
        
        
 " &    ,<  .         

  ,< 
                 &  
 + .      . 2     . 2   

Requirements Inspectors

.   ,<    9


 + .       
,<   . 2     !  
  "  . 2     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.3 REQUIREMENTS 40

 ) %"        ,<   0:  


  
  %
     . 2 

539 '& & 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.4 WS-SECURITY 41

1.3.4 WS-Security
......................................................................................................................................

WS-Security
.   
      
 ' & &  '& &   

        3   '& &             "
    K

   
 '& &    
    :  
  
  
        :9
 C  

<          ' & ,<  
 C 
<    $"&   $",     $"&
 C  <           &;0 $
       :      
    '& & 9
 J& + 2   " +          

 
 
 ; 

'&& 
       


   <   
$",  
 
'&& 
       
 


  

'& &  " 8     $",<     <      


     
   '& &      0: G       
 
   
 

Usage

.       '& &    


9
A    J  +2    J   
E 2    ; 

'&&  
'&& 
 
1       
          <    "   
; 
       ) 3  * <         
 
 <    
    !       
    
'&& "    
  7, 7      <    $",    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.4 WS-SECURITY 42

Keystores

. J  + 2              "     
   '& &  
  .        
J $      
     


   J   2   


           
 
   " !                
    &          
 "

. 
        J   9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.4 WS-SECURITY 43

 &  9       " +  ),  ;*
 &  9        " +  ),  ;
 0  9  "    < 
 (   9      "          
 (  0  9      
 &  0 9  L&&- &  0     
  S ,  EO 
    "  "K

Outgoing WSS

; 

'&& 
      
 


 8  
 

  - 

    
     7'&& - 7    
 
'&&       "    




.           


 
        77
             <      
       
         +       
       

  '&& -   

' 

                 

     
    8

      


     -           
        8               .

         9

Incoming WSS


'&& 
      

 )    $",<   
 <   +  *   +     + 
  &  '& & 
    

         <        

   
        "       " 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.4 WS-SECURITY 44

      


     

  


'&& 
  
 77             
   <      
           "    
          ;      <     

   )
   <       
     *

' 

     
'&& 
     
<  +$",           
     7'&&7   
  

 .        
          
 9

C  
     '& &  &           . ,<    
  
   '& &            

539 0: - 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.5 ENCRYPTION 45

1.3.5 Encryption
......................................................................................................................................

Project Encryption
.       :  )   <      *

(   
          &
    
   
   :  
    . :    "  6$ 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.5 ENCRYPTION 46

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.5 ENCRYPTION 47

 :                     : 
                
      & 
   
             :

Working with encrypted project

'  
    :        8      
      "
          <      :
9

     :        


     0  
            :   K

Encryption in global settings

            


  
)03 &&% *    
 
 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.5 ENCRYPTION 48

&
       
3     
  
  '
 
       
3    "    9

          


 "   :     
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.5 ENCRYPTION 49

.     


     "      
     
 


539 2   0:

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.6 COMPOSITE PROJECTS 50

1.3.6 Composite Projects


......................................................................................................................................

soapUI Pro Composite Projects


'   2   0:N

6    



      8 2   0:   
:     .  2  

% 3       5    0:    3  .    
 8
                      :    
   
 8     :             4 
     

' "
 .   :              
 
                :       
           
     

  2   0: 8    &  :        
 
  

  
  :  " . 2        

Composite File System

 2   &  :       :         
     . &  $"&  C &
3 C &
   


     :   !        -      
      
3          3      . . & 
    
3    3     . 2      $" 
    
3   3     $";      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.6 COMPOSITE PROJECTS 51

Creating a Project Composite

2 
     :     :          
8+& 
            &
      "     0:  
    ) :     

(       *

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.6 COMPOSITE PROJECTS 52

Composite behavior and actions

'  


  :     ;   +,    . &  . 2  
  
                   
            

 (
   

      .


  0:    +&       
     

Import/Export of TestSuites and TestCases

C  . &   . 2       3         

  8   
+      0         7 7  
 . &   . 2      :8           0
    .    : +  

539 , 
0: 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.3.7 PROJECT RESOLVING 53

1.3.7 Project Resolving


......................................................................................................................................

Resolving Project Items


'  
 3 
0: . &   . 2        "   
      

    ).      

      0:


  *       ) 3        
* ,   

  9

.  
      
  9
   $         + 
+  
 (          
 G             
     
       "     8    
     
                        :
2 
 ,   
               

539  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4 WSDL INTERFACES 54

1.4 WSDL Interfaces


......................................................................................................................................

WSDL Interfaces
             :  '&(%     
&;0+/..0 6
 0.  ;   
 7 '&(%7     
      <          
  .       
      

Interface Actions
. 
           
    9
 ( %# 4( 9 ;     G 
 1 + 9 "    
      . 
 
 +) % +&  9 "  '&  6  0        
 "   9   . $        . $ 
  
 1 " 9 ?    . &      )   *
 1 )$ 9 ?    $"&     )   *
 1 "& 9 ?    /.$%       '&(%

  
 .  # 9  
 # # -
 ,0 9 &   '&(%    '4  ,  $ /
 '  # 9            ) 

 +    *      +      3    
 
       

 &$ 9           
: ' 
  
   <                      
. 2  
   (   
   3   

Updating the Interface Definition

. 7   (7                 

 4   
   
6
+0.     9
 5       ;      

 ;                  )    * 
 ' 
       <           
    . 2  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4 WSDL INTERFACES 55

.       


  9
 '   ,%  +    
 ) 3      *
 '       
 ) 3            
  #$% &   
.  
  
   9

.   9


 # .  . ,%    ) '&(%*    
 + 6( 7"            '&(% 
   
     <    
  7" '    <     :       

. ,<       . 2  


    &        +     
<  
 9 ' J 3 
    <        )   
 +           +       *
 + :)"  &  
<         +  <     
   
       " <      . ,<   &  

 
  <  
 .   7"  . ,<      
:        
  
 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4 WSDL INTERFACES 56

   7"  ;           


   
,<   +. ,<          
     )      
   
*
    
     
  
    
) 3     
   *       

Caching Definitions

6         '&(%+#&(    :      

  9
 + %           3   
    .
   
   
 ) ##    "   <  
         
 !            <       
.  :   "       :  
 
8      3
     "     
            " 
    
     
      0  
  
 :     0: (  .  

. 
                         
   
 '&(%  )      *      ( 
  

Interface Details Tab


. 7(  7          
        
    
 

 ,  )  *9 .     '&(% 0.     6
3  
   9          
 # .  )  *9  ,%       )    
 *
 : )  *9 .     '&(% 6
     {namespace}name
 
 
4 9 . &;0 G       8 &;0 AA  &;0 AE .  

  <   )    *  
/..0 / 
 + )  *9 &          
 , )  *9 &    (   ,02 
 8 $ 9 &      
 8 ,&" 9        '&  
   ' &
 
AB $          9
A     
E <    ,    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4 WSDL INTERFACES 57

1   5 ,    

WSDL Importing Details

'  
'&(% 
   7  '&(% 7 :      
 8
 .  '&(%         '&(% &    '&(%   
          
"
      ;  '&(%  
            
         
  : )      &;0 AA+AE 
*         
      &;0 6
             
    
 C     6
  0.  ;     ;      <  
   ) *      <    
 -      6
  0.            
   
75   6
7 '&(% &

.     
   '&(% 6
  '&(%   9
  '&(% &   7 7    
)
 '&(%  *     
       
  6
   7 7    '&(% & ) 3      
    3   *            
)  *  
      "    
)  *    

      
 6
       
         "   
  
'  
 
#$% &            3 
  '&(% +   + +    9
  9++1
+EBBD+BM+3 +  9 #;0     $.;$
  9++1
+EBBD+AA+3 9 3     $.;$
  9++1
+EBBO+BO+3 9 3     $.;$
  9++1
+#$%+A>>M+   9 #$% 5  
  9++ 
+  + +AA+3  9       &;0    
  9++1
+EBBA+#$%& 9 #$% &  
          
       '&(% &

  8 7& (7 5     
        
         <    

539   ;

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.1 INTERFACE VIEW 58

1.4.1 Interface View


......................................................................................................................................

Interface View Tab: Main View


.                :    
 '&(% & 6
  .    < "   

  
    

0          ;               '  
  
 )( +% *        
           


Service Endpoints

&
 & -       3     


                   
  
      '&(%      ,%          
               

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.1 INTERFACE VIEW 59

        ,%       70 -  7    
/ &
 
    
   
<    ' 
   
<                    

&            ,<   +. ,<         
            <   

.       


      <     
  
  9
 - all requests - 9  
       <          
 
 - all requests with no endpoint - 9  
       <   
               
 <endpoint> 9  
       <            
      
 

        
  . ,<      7& . 2  - 7
   . 2  -     

'  
  
  7;"7               
   <      <     

WSDL Content Viewer

.          


          
  '&(%  
      '&(%  #&(        
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.1 INTERFACE VIEW 60

.  
             
  


      
   
    
     -

            "       
     8

Double-click on will focus on (if available)

Global Element its Complex Type



Message Part its Complex Type or Global Element

Operation input/output its Message

Binding Operation input/output its corresponding Operation input/output

Port its Binding Operation

.      


 )  
*
 :)  
      
 !(  
   3   )   

 "*
 .  #    '&(%        
  
(
 1 "& 0  
  /.$%      '&(% ) 
'&(% G  . G "*        3   
 '      3               
                
. 
       0 0  08

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.1 INTERFACE VIEW 61

539 '&  2  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.2 WS-I COMPLIANCE 62

1.4.2 WS-I Compliance


......................................................................................................................................

WS-I Compliance
    
     '&  
4  6  0      E
  9
A 4  #     $   72" '& 2  7
  .     '&  .  .      '&(%  

E 4 
7"  &    ,<   -    
  72" '& 2  7   )    $
 G   *
             :   2I   )      
  *   '&     . 
. AA   '&   
 ;
  4            7     7   
  
     
8

Creating WS-I Reports

'  
   
          
'&   4

    
    '&   4   "      8

  
        
  
        '& 
2   ,       "          

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.2 WS-I COMPLIANCE 63


    "  9

.         3 


     /.$% 

  72
7          
 
     "  '&    
3  9

Displaying the WS-I Tool Output

&
 7& %
7     '& &
.      

    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.2 WS-I COMPLIANCE 64

           


   8

539 , 


' &    '&(% , 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.3 WSDL REFACTORING 65

1.4.3 WSDL Refactoring


......................................................................................................................................

WSDL Refactoring
'  
'&(%  
   
   <   
   
   
     3              #0  3  
         3              
   

. '&(% , 


      0  
   
     

4  
    
       
     

   3  3    !                
   
       
    
          


Getting Started with WSDL Refactoring

'        '&(%      7,   7    
  0        
 
9

&   ( ,%     '&(%          <     "
     <   

Refactor Operations

&
53      4   '&(%      
   

          ) < *

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.3 WSDL REFACTORING 66

;            )      *     8    
      )   *   


         

   
 727               
    7( 7     

Message Refactoring

0 53     


  
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.3 WSDL REFACTORING 67

.      


          9
 .                        

    


<    "     :
 .  
        
 
        
                  /     
 +        


 
 
    
   
 .  
      <   )  *   <        
)  
*      
   
            
<     7- $  7       :   
 )0    
 
 - $   "3     
         
 
  "      *
2 

   
   

         
              , 
      
         $  3      
          
<                 

    #8    


            
                     
 
       .  
       

     &                

    0    <    "          

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.3 WSDL REFACTORING 68

:"    5 &                3 
     .       
 

 ! )/'              


      
 

Updating Test XPath

'       


           3    53
 

.        #0  3      :         


 .          :  
#0  3   )  
      * &
 #0                 
  
 . 5 #0  3            

  #0           )            

   3*             5 #0  3     0  
 5 #0             #0     

& C            : 


     
 
#0  3   


539 '&(% ;  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.4 WSDL OPERATIONS 69

1.4.4 WSDL Operations


......................................................................................................................................

WSDL Operations
' 
                    
 
  '  "             
0.       
       '&(%        
. 
            
    9
   )$        $";          3 

  $"&
   )    )   0 *      $",   & 
     3 
  . 2 
 6( 7"    ,<            +    
       "           
 /  
            
            
             
   (   
   3   

Operation Details Tab


. 7(  7          
    ;    
    
 
   9                    
   5 

 
 )  *9  &;0          &;0+/..0 

   )  *9 .          


0. 
 , )  *9 &    (   ,02   
 ,  )  *9 & '&(%     
 % " )  *9 . 3            
 )    *
 " " )  *9 . 3             
 )    *
  & )  *9 &
            $  
 $ & )  *9 &
            $
 
 8 ,&" 9        '&  
   
'&(% 6
 
539 '"
 ,<  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 70

1.4.5 Working with SOAP Requests


......................................................................................................................................

Working with Requests


     <               -  <        

    
  ,<       
 
  <   
      "
<       
 )  *

Request Actions

. 
       <     
    9
 ( 7"     ,<   -   
   +      <    . 2    . 2        
      . &   . 2   < 
   )$      <        $"&     
     <          $",  
   )         $",   &  <     3 

 . 2            <           
 + ,   7" - .%
 ,0    
  
+

 <   
3 
. ,<   )  *
 + 7"      <     <          
  <       
 &       <      

       <       
   (   
   3   

Request Details Tab


. 7(  7          
    ,<     
   
  ?  0 
 6& 9      <  
   9         <         <    
 5 

  * 9 .           <   
 ) 
 *
  9 . 
   <  
   9 .     <  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 71

 :  9 .   0      


 <  
 8  9   +    

 !(  9  /..0 ,    

 ) 
 ; 9    &;0    <  
& +   0  )        *
 .& 9 .       <   <   

( 9 .      <   <   
 & 9 .       <   <  5.%$  *
 8
( ,  9 &     '& &   +  "    
     

<   .       0        
  
    
 8 & $ 9        '&& ..% "    

<  

  ..% )   *
  9, 9    &&% "   <  
  ,  0 
 /  % 9 -  $.;$       
       <  
)    *
 !   9    $.;$ "

 <         $.;$
  
 %   & 9   /..0     <   ) 
$$-+#;0
   *                
  
    ,      
 '    & 9  $.;$          

  
 
        

 / "  9 .     "           
   $         
  & 9 .               

'&(%    3        Q6   36 


 / % ! 9   +      '"
 '&    
C
 *
  9 4   3     
0  0 
0 
    9 &  

<          #$%  
<     
 &$ & , + 9 ,    +     

<    .   
   (  ( . ,<       +           
          

,
 9       3  
 "& ! 9        
 ' * 9  3       

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 72

The Request Editor

. <           "


<      
   
  
7"            <       
 
 
             
  - %   

G                  . #$%      
     ,       0     
  9
  ;  -   <       
 
  C -    
 <   
 
  ; G          
 
. 
            
 8
 /..0 /  9   <  +   /..0 /  +
   9     <  +     
 &&%  ),   * 9       &&% (        
 '&  9  '&  
   
   0   
  )    *         
      
   
    
+ 3 
 + )    
         
*

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 73

Editor Toolbar

. <        


 )   
*
 "/&   <       
   +      <    . 2    <    
  
   )    )   0 *      $",   & 
<     3 
  . 2    
   )$      <       $"&  
<       
  7"       <   3        

              <      "      <  
 + & ,          <      
 + 7"      <     <       ! 
         <      <         
<  
 + 7"    

<   )    <     
*
   +&/  3  
        <      
  .  3      
  )    
*9
 [edit current...]     

      
 [add new endpoint...]    
   
 [delete current...]    
     
 / ," 

       <         


    
      <  +     +
 
 +
   (   
   3   

Editor Layouts

.       E         

   7.  %  7     )



*9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 74

Aut

;       ,<                


 

.     '& &  


   '& &  .    0: 

HTTP Headers

. /..0 /          


      
+
/..0      
<  +   
 C <   
     
 
+
/..0        <           
 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 75

SSL Details

. &&% (                       
  
 
   
 3 
  
     
   <     0 0  0

WS-A Properties

. '&           


'&     ,<  +$",  

 '&  
 
 -  '&   

 $                       
 
 '&  G      
    
    '& 9      
        <  +"
  
                   '& 9 
"      '&(%  
    
    
    '&      "
 " 3   
    
             
   
    '& 9.      .      <  +"   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 76

 . ;0.;5%         .  


 , . ;0.;5%         , .      
      <       ;          
 9++1
+EBBO+BM+  
+      );     
     *
 , . , 0   3      #$%  3       
<   3  
 ?  $
(    
     
 
 $
( ;0.;5%         $
(     
  " 3  "    $
(  
   ,<  ,  
  
 C ;0.;5%         C  
 C . ;0.;5%         C .  
 C . , 0   3      #$%  3       
<   3  
 ,  . ;0.;5%         ,  .  
 ,   .  ;0.;5%         ,   .   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 77

)    
   3  *

XML Source Editor


. <       #$%    3 


        
  0               7#$%78 7; 7  7C7 

     $
      <       
 .

       <        
    9
 4       
   
    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 78

 !&     3   


  8.& )     '&&    &;0 /    <  

 
  +     ,<   (  . 
  8 &&     '& .   &;0 /    <   

 "        ; 

'&& 2
     
  

  <  
 8      '&  
     <      
'&  /    <   
    
 . + ,+"
!      
 
 1         
 (  6"&/ 

     


 $            
  #&            
 1 22   0              
<   
 
  
  3          
       "         "   7    
7  9
  - 9   <       
  # 9    

  +
  9      
 & .  9    <  +   

Submitting requests

' 
<   
          -   
<   
        
  
   6  
&       "
         <       
    ) 
      
       
*

( 
   <  +             3    
         ;      

<      72 7  
     
 #                 
<     
                

<   ( 

     <               "
   
    
             

;                    



  
       
   <        
   "  4  
            <       
 

<   
              <        


 /..0 03       


 http.proxyHost  http.proxyPort  
   
    03 0  
           
 " 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 79

Authentication

   <            


   
                & -    
   ,<   (  .  )    * 2      
     / 2  6  (
   5.%$   &&%   " )=
 K*    https      L&&- 


    '&& 0  .      '&& ..%      ,<   ( 
.           
'& &       



      /..0 
8

Message Validation
'  
 G   <             
    
  
   
 8
A . 
     
    
E . &;0                '&(%  &;0 
1   
  $$-               . 
G         3       (  "
   
  
         )  *

  
            ;" 
    

G            


 )     *
&;0  
   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 80

.    
  

      <     


72" '&  2  7   &

  )  '&         
 *        <   
   
 
     '&  2           
 '&  
  

Copy Requests

  0         "    . ,<      .
    
  9

.   9


       

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5 WORKING WITH SOAP REQUESTS 81

  7"  . ,<       


 
 + :)"       " . ,<     3 
<   
   7"       . ,<          

' 
"  3 
<        
 
9
 + , 9 ;   
 . ,<  ) *
 .  9 $
        ,<      
 . ,<     

 9 ' 9 ;   


 . ,<    

3 
. ,<      
   ,<  
0      

  <      
     
  
        

539 C -

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.1 FORM EDITOR 82

1.4.5.1 Form Editor


......................................................................................................................................

Auto Generated Form Editor in soapUI Pro

.                  
#$%
&      <   
 . 
       
   0 0  0   8

.        G    2      2       

<      <    G  
  "       
             
      9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.1 FORM EDITOR 83

6                
   
           

             
    
  
    .      7G . 7  
  
  9
        ) *
 ,         
                .        
 

 
<     
   

 ,          
          
C 3    
   <     7(  7    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.1 FORM EDITOR 84

. 
    
  

Data type Support

. C -    


     #$% &       
 
            

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.1 FORM EDITOR 85

.                   <    7 7    

          7& G  7   
 3   9

Schema Support

.   0 C -     #$% &           
  
 
    
  3   .         
"  #$%
            &        
 #$% &     "           

   
 

. 
       " 9
 &    8   3;      A  3        

 -    6        3
 6    "      76 7        3  
   
 
          
        T     
 &   &<  2    3   2        3  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.1 FORM EDITOR 86

            


 $        3               
  
 -               3 3      
3           $ 0       A EOB $ 0  
       )    3  UBV*
   .        
         

      
 W          <        
 <    " 
               

539 ; G      &;0 G

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.2 OVERVIEW VIEW 87

1.4.5.2 Overview View


......................................................................................................................................

Overview View
  0    ; G   4
    " <   
 
   

-     " )  


*    
   #$%  ;   .3
     
      
           
,%   3 
 8 ,%           "    
  3   

539 &   ;  -  ' &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.3 OUTLINE EDITOR 88

1.4.5.3 Outline Editor


......................................................................................................................................

soapUI Pro Outline Editor


.   0 ;  -       <       
    
    
  .               
          ?                  
   5             
 
 . 

          
     .       
 

      

  
               
           

.     


 )  
*9
 2        )%.X&/C.X2*
 -3        )%.X&/C.X-*
 2   
    )%.X2.,%X2*

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.3 OUTLINE EDITOR 89

 -3   
    )%.X2.,%X-*
 $    3 
 " 
   )%.X(;'5*
 $  
 " 
     )%.X0*
 $        )%.X%-C.*
 $   3              )%.X,?/.*
 .

 .  2 
 /    

. 
  "          ;  .    9
 (;'5      3      
 0   
 %.X2         )     *
 %.X- 3        )     *
    
            #0   
0  .   +-3    
$" ,    .  ,<    

539 $
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.4 PRO INSPECTORS 90

1.4.5.4 Pro Inspectors


......................................................................................................................................

soapUI Pro Message Inspectors


  0     '&(% 23   
           
   #$% &     ;  -   
3        
  

. 
       9
     #$% &      
 /               
 
     #$% 
  #0        
              
 +$    $
 2
      
-            
    

Coverage Inspector

'        


         $
 2

      <       


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.4 PRO INSPECTORS 91

  
           
         
)N* "
 7(  G   7 "3             



XSD/XML Schema Inspector

. #$% &           


#$% &  
  C     ) 3    < *   
 3         
.                    . 
  
      ,<  2  &;0 /   <     0 0  0

5      <   


          '&(%  
3                         
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.4 PRO INSPECTORS 92

Table Layout Inspector

. .                   
 8
 
       
        C   
           
    
;        
 7   7  "
         
       
 .               
 

. 
               4    8

XML - XML Fragment/XPath Inspector

. #$% C
+#0      #$% 
       
      
 ;  -   
 
          
 #0  3                 2 2 . 

    #$% 


        4    8

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.4 PRO INSPECTORS 93

Doc - XML Schema Documentation Inspector

. (                 .    
      ;  -          &  -   

   0 0  0 <  8

539 '"
 ' &     C

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.5 ATTACHMENTS/INLINE FILES 94

1.4.5.5 Attachments/Inline Files


......................................................................................................................................

Working with WS Attachments and Inline Files


    

  "
     9
 $.;$ 
   4          &;0 $

 &;0          0 $$-    
     &;0+/..0 

               
 
  

 
&         
  $.;$         

    
  3   ($-

6 $.;$  


  <     
         
  ' & ,<   (  .       
        
 
<      '&(% ( )    *  
<  

The Attachments Tab

. <             


  
      <  
    
  C <   
                  
   <   C                 .     
             $.;$    C 
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.5 ATTACHMENTS/INLINE FILES 95

.        


  9
 6& .          3        ,  ,
 +8 ,  . $$-       
 * )  * . 4     

 .           )  *
 ,  )  * .      )      0   *
 +%  
   (  "   $$-    
 
'&(%
 + &          : 
(  "
     
             
)        *           ' 6 

Attaching files to a Web Service Test

        <   


   


        <  
      
 7 C7          
 '

                    8
 2 
          
         
   
     0  
)   *
 5  
         
          
  :
;       
   

      0   9
          $$-     '&(%        
0         $$-   L          

 
   <   
   &;0     ,   
79###7
     ###              
    , 
   
   <   
     ) QD  3*     79###7   
  ###              
      
   
) +           
 
   *

&
                      
$$- ) $$-  * #;0 ) $.;$  * 2;5.-5. )   
 * &',-C )  ,  * 5J5;'5 )  
   *

MIME Attachments for Web Servie Testing

$$-            '&(%      &;0 
    ' 
          
$$- 0 
   C 3     <       
  
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.5 ATTACHMENTS/INLINE FILES 96

<wsdl:definitions xmlns:ref="http://ws-i.org/profiles/basic/1.1/xsd"
...
<wsdl:operation name="SendClaim">
<soapbind:operation soapAction="http://example.com/soapaction"/>
<wsdl:input>
<mime:multipartRelated>
<mime:part>
<soapbind:body use="literal"
parts="ClaimDetail"
namespace="http://example.com/mimetypes"/>
</mime:part>
<mime:part>
<mime:content part="ClaimPhoto"
type="image/jpeg"/>
</mime:part>
</mime:multipartRelated>
</wsdl:input>
<wsdl:output>
<soapbind:body use="literal"
namespace="http://example.com/mimetypes"/>
</wsdl:output>
</wsdl:operation>

.       


    0   39

swaRef Attachments

. '&    0    swaRef            
 
 
            ,           
  cid:somename      7  7 
       
  C 3     <          
9

<wsdl:definitions xmlns:ref="http://ws-i.org/profiles/basic/1.1/xsd"
...
<wsdl:types>
...
<xsd:element name="ClaimForm" type="ref:swaRef"/>

   



      3  9

<ClaimForm>cid:claimForm</ClaimForm>

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.5 ATTACHMENTS/INLINE FILES 97

       


    0   39

MTOM Attachments for Web Service Testing

. $.;$      4          &;0 


  .
 
           
        #$$-  
  )   EO   <   
8     "   $.;$
  $.;$             * C 3   
 <          
9

<wsdl:definitions xmlns:xmime="http://www.w3.org/2005/05/xmlmime
...
<wsdl:types>
...
<xsd:element name="ClaimImage" type="xmime:base64Binary"/>

   



      3  9

<ClaimImage xm:contentType="image/gif">cid:claimImage</ClaimImage>

       


    0   39

&     $.;$            ,<   (  .   
       
    


          C
 !         $.;$            <   

 7C $.;$7 <    

Anonymous Attachments

&     +     


       '&(%    
 7  7    
 7Y  S7       C
             2(    < 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.5 ATTACHMENTS/INLINE FILES 98

Inline files

         7


7     <   
    8 

    QD6   36           77 
    
E   9
A 6 
    cid:somename   
      7  7 
        ,+$.;$ 3   
E 6 
    file:filepath        
              
    QD  3 
 C
3     <          
9

<wsdl:definitions xmlns:xmime="http://www.w3.org/2005/05/xmlmime
...
<wsdl:types>
...
<xsd:element name="ClaimData" type="xsd:hexBinary"/>

   



      3  9

<ClaimData>file:c:\data\mydata.zip</ClaimData>

. 9F  F  4         




 
3 


Attachment Caching

' 
       
           
           :  )  *    :  
"          

Multipart Attachments

C   $$-  ,  $.;$               
    .          
$$- $   
  

      
     
    
  

7  +37                 ,<   (    )7- 
$   7*       2(            
         2(  7Y   S Y   S7
     
    "               
 "            

Response Attachments

.                        

     4  (  "             

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.4.5.5 ATTACHMENTS/INLINE FILES 99

539 ,-&. &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 100

1.5 REST Services


......................................................................................................................................

REST Services in soapUI


  EO   3     "    ,-&.+/..0     

 '(%   :    ,%  . ,-&.+/..0       9
   ,-&. & + ,   + ,<      5 
   

 +  +
 ,-&.  . &  
 
,-&.  
 3 
    
$"
 ,-&.                

    
       ,-&. & "
  

The REST Model

.   ,-&. &          '(%     
3  <  '(%   ,-&. &   7  7 )  '(%* 
 
'(%     
           
 


,-&. &         


"  9
 $       '&(%  '(%        
  &            
4    
 "     ),*        4 
  
      ,     ++ 
   /..0 
)0.0;&.?-.*                   )   * 
3   #$% L&;5 0(C                 
        ) *
 7"      '(%+,-&.    
    $     
  <     <       /..0  /      .
           "   

&        ,    ,<      
          <         
   :          ,-&.  '&(%   
 
 
 
  
 

WADL Support

   '(%     9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 101

A ' 
 ,-&. &       '(% +,%     
      ) <   *    #$% &       
     
     0
E ' 
 ,-&. &   '(%  7  7 
    
        
  '(%    
  
     '(%          
    '(% 2
    '(% &  )  *              
   
  
&    ,-&. . ,<    

Creating REST Services

,-&. &           


 C '(%9
 6 
'(%   ,%   5 0: 4 
 6 
 7 '(%7       0: 
 $  9
 6 
 7 ,-&. &7     5 0: '4 
 G  7 ,-&. &7    0: 0
' 
'(%       '(%      
   
: '  
      
 
  9

. 
     9
 $ 6& )< * 9        

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 102

 $   9        


 ' "
& 9     
 
   ,      
    
 + " 9         7-3 7       
    
      ,  
.               ,   

Service Properties and Action

;    ,-&. &   


     9

,
 " ,-&. &    
      
 9
 ( $ 4( ;   & G   
 1 " ;   

 
. &     )   *
 + "& 0  
  /.$%      ,-&. & 
      3   
  <=$ 0      ' EL   
 
:       '(%
)  *
 '    0   3   '(%         
 6( " 0      ,     
  0     
   ;  
   3   

REST Service Viewer

(  "
,-&. &    ,-&. & G          
 
'&(%   9
  7;7   
       '(%
  7& -  7   
  
         


  7'(% 27     
 '(%    #$% & 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 103

.          


 )  
*9
 :)  
  "    
 !(  
      
 1 "&   
  /.$%      '(%
 '       3   '(%       
    )    * 
  '(%  
   '(% 
  ,-&.   

Generate TestSuite

. 7?  . & 7     ,-&. &     
 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 104

.      9


 " 9  
 . &         
 , 9  
  . 2 
 " 9 7 7          &
 1   9    % .         
  . 2 
0 
;J 
   ,-&. ,<  &     ,       . 2 
   . 2    

WADL2Java Integration

  
     EL       '(% " 
 
  : 
     
  '(%  &
 '(%EL      ,-&. &
    
 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 105

.      


             E:      

   


  
   
  
    
;J    
 
    
L    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5 REST SERVICES 106

539 ,-&. 0    ,   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.1 PARAMETERS/REPRESENTATIONS 107

1.5.1 Parameters/Representations
......................................................................................................................................

REST Parameters and Representations


0    ,    "    ,-&.  8 0     4

        ,     
 ,       
 

REST Parameters

0           +     <       


 
       
,  +,<    9

.            


 9 )  
*
     
         
 +          
 $ (            
 $ .           
 .  #& .          +3   
 
( 
   &                

<   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.1 PARAMETERS/REPRESENTATIONS 108

   9
 >. ? 9    <  
   
 ,%  

   9   /..0 /     



<  
 
 9      
ZY    S[     ,%  


  % 9   


78Y    S9Y     S7    ,% 
)  <  
*  
       6     
            7 7
C            
         7(  7  
     8

. 
  9
 7" 9      <       
 #" 9        
 ,  9  #$% & .        
   9          
   9    3    
 /  9   ,% -
          
.  
         9
A .
  '(%          

E .   
      0 C -    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.1 PARAMETERS/REPRESENTATIONS 109

      
             
 
   

REST Representations

 ,-&. <                     <    
       
  )0.  0;&. 
 *        
          '                
       8   /..0     /..0   -
 
      <         7"7           
          <             )  7  7
        *

   4 <             


     
 <  +    9

  
        '(%           
         .   9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.1 PARAMETERS/REPRESENTATIONS 110

 ,  9        8  <        ,-R-&.       
  ,-&0;5&-  C%.
 8 ,  9   .       
 " + 9                     /..0 & 
   
           
 >6& 9     R5   

       #$% &  
  '(%
 
 +           +       ) 
      '(%
 * &
   2      "  
            
     

<  

539 ,-&. ,  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.2 RESOURCES 111

1.5.2 Resources
......................................................................................................................................

REST Resources
     ,-&. & ;  ,          ,-&. &
         <    ,           

,-&. &   
 75 ,  7     &+,     -  
 
 
    9

.  
  
  9
 ,   5  9        
 ,   0 +-  9           

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.2 RESOURCES 112

 -3  0   9      3    +      
 + 
 0   9    
3         
 2  ,<   9        <       
. -3  0               3  <   3    
                 
  ,-&.
& 6  0    
,        C 3   

http://search.yahooapis.com/ImageSearchService/V1/imageSearch?appid=YahooDemo&query=Madonna&output=xml

  
 -3       

            <       3 

Properties and Actions

. 
           ,-&. ,  9
 5  9        
 (   9    
 0  9              + 
,
 "
       
 9
 & ,   G    ,   G )  *
 5 ,<         ,<     ,  
 5 2 ,          ,     ,   
 
   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.2 RESOURCES 113

 2 ,        ,    


 ,<    
 ,        ,  
 (      ,  
 ; /  
   

REST Resource Viewer

. ,-&. ,   G   9

.              <     ,   
  3
       ,   . 7,   0   7         
      0    ,   

539 ,-&. ,<  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 114

1.5.3 Requests
......................................................................................................................................

REST Requests in soapUI


 ,-&. ,<        
  $  '(%8    /..0    
 
,    
 /..0 $ 0    $
 2   
,      ,<          
,     72 
,<  7     75 ,  7  
      75 ,<  7 ,   
         /..0 $       <   9

         4


 L&;5  #$%          
/.$%  L&;5     #$%             
    
   )       3    *

Properties and Actions

 ,-&. ,<     


          5 
9
 6&      ,<  
        ,<  
   /..0 $  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 115

   


  
  ) 0.  0;&.*
     
     <  
 :           
 <  
 !(      /..0 ,         
 
 .&       /..0     


( 0     /..0     

 & (     /..0     

  9,    "         : '&&    
    ;     

#$% 
    
 &$ & , + ;         


 
 *
  -4      3    


 

,
 0     #$%
 "& ! %            
. 
       ,-&. ,<    9
 ( 7"    <      
   +      ,-&. ,<    . 2  ,-&. ,<  &
 + 7"      ,<  
 &       ,<  
       ,<  
    
   

REST Request Editor

. ,-&. ,<          "


,-&. ,<    
  

  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 116

.            '&(% ,<   9


 ,<  +,        
   
 )    *   
)        *
      
 

 <    
$          '&(% ,<            

.              
  
   9
    
 /..0 $    0;&.  0.  
 
$
 2       0        ,<  
  )  *
      
     
 .        
 .              <  
 !"      
     ,%         <  
.   ,<     0          
  
      0;&.  0.      
         
    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 117

.         


  )  
*
  ,     
$ .    ,<   ,       
  +                  /.$% 8 

         C     <   $ 0   $  
<  
  :,             
 -
   ,       $ . 8  
 .   
   ) *      #$% &        
  
    
      

 >",     R  
   
        
   ,%8      
        /.$% C  
0;&.


Representations and Attachments

,<  +,   ,             


   
   < +           

         8


     0.  0;&.    .           <  
           
    
     0.  0;&.    .             <  
         $   
     0.  0;&.    .     +     <    
<       $ 0   $   

Response Handling

,     ,<         


 L&;5        

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 118

     9

   L&;5  /.$%  


   #$%        

   0     3    .   9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 119

;    0 ; 9

soapUI Pro Form Editor

  0   ,-&. <        '&(% <   9


 6 
C + ;  + ;   <      
 6 
         
 
. 0 C                
C     <   #$%             #$% &  C
3    
C9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.5.3 REQUESTS 120

.     


   (           

           
 ;    

    )     *

539 ,-&. & 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.6 SCRIPTING 121

1.6 Scripting
......................................................................................................................................

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.6.1 SCRIPT LIBRARY 122

1.6.1 Script Library


......................................................................................................................................

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.6.2 DYNAMIC PROPERTIES 123

1.6.2 Dynamic Properties


......................................................................................................................................

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7 PROPERTIES 124

1.7 Properties
......................................................................................................................................

Using Properties in soapUI


          7   7  
      0:  7  7
   
   )        
*        
? &   0  .    0  -3          
          :  8

 9   
0:        3      (
 " 9   
. &            7 
 7  . & 
 + 9   
. 2            7 
 7  . 2 

   9  
     +    . 2 
     9   . &              
    9 (  &   (  &"  ,  . 2 
 )$ 9   
$"&      + 

 )   9   
$",       
 1/
  9   
?          3   
              : 3            
       

Property Editors

0  
        9

.                  ,  2      
  3                       

'  


                  
0  -3    0  .   

Global Properties in soapUI

?         ?  0           
                3      

(     
     +  

C 3          7   37  

test.a.property=hello!

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7 PROPERTIES 125

      $  :  


        

set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx256m -Dsoapui.properties=properties.txt

  


0  -3    . ,<   -  

${test.a.property}

' 3                
9

01:20:05,234 INFO [PropertyExpansionRequestFilter] Loaded 52 properties from


[C:\workspace\core\project.properties]

.              


 
       

:     
3              

3   

6
                   
  
   +   8 (   =         ?   =   
?  0 

Property Expansion in soapUI

     3       )73 7*       
 

.  3   9

${[scope]propertyName[#xpath-expression]}

         


     9
 #Project#  0:  
 #TestSuite#  . &       
. & 
 #TestCase#  . 2       
. 2 
 #MockService#  $"&      
$"&
 #Global# 
    )  *
 #System#     
 #Env#     
 [TestStep name]#  . &       . 2 
$            "              I$"&I
   . 2         
$"&   

             9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7 PROPERTIES 126

A 2"    3 ) 3    . , 23*       
 
E 2"   

   
1 2"   
   
    3        #0  3         
 
           )     #$%*  3   

3     73 7       
   9

${Search Request#Response#//ns1:Item[1]/n1:Author[1]/text()}

'    
  7,  7     7&  ,<  7         
          5       3         
   
    3     

              7  7           


 . 2    . &  .      
    
   :            ) 3  *  . 2  
     
 . &   0:   8    . 2     
   
0  .    ?          
             . 2           
. 2           ). 2  &  *    

0  .           


     
  3   ;                   3
  <      
        0  .       
  
<       

Dynamic Properties

  EO       


      0 -3  8 3
   =    
    
         
       C 3  

${=(int)(Math.random()*1000)}

           B  >>>       

;             3      8 <          


       

( 
  3   3               
  
:  C 3    <   
      
,<   :  
   
  7<  7    
  ) 3  *         <  

...
${=request.name}
...

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7 PROPERTIES 127

          : :   


    $ 9

...
${=request.operation.interface.project.name}
...

. 
    )  *           9
 
9 
D: %

 


 
 

  9     ) 3   ,<   $",   *
 3 9      3 ) 3     
. 2   $"&*
C   0   
          :       
   
 : +      ;        
     
               )*        K

Nested Properties

            3   )   K*  3  9

test = "value"
testexp = "${test}"

-> "${testexp}" evaluates to "value"

testexp = "value"
exp = "${exp}"

-> "${test${exp}}" evaluates to "value"

testxml = "<test><value id="123">hello</value></test>"


testxpath = "//value[@id=${id}]/text()"
id = "123"

-> "${#testxml#${testxpath}}" evaluates to "hello"

Property Expansion Points

0  -3            9


 <   

 "    
 )  $", 23  ,   &  *  & 5  


 #0   #R      
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7 PROPERTIES 128

 2   5 2   


 ,<        

   <    "    /..0 / 
 0  .       
 #0  3  
 (  &   
     )   0 *
 $",       
 )   0 *
 0  G    (  &"   
 ; 

'&&         
 &$%  
       3         
 
    
    
       
    3          "     
  K

Built-In Properties

.               3          .
 
          5 
   70  $7

Request The configures request message



Response The last response message (read-only)

Endpoint The current endpoint for the request

Username The current username for the request

Password The current password for the request

Domain The current domain for the request

Properties

<any defined property> the properties' value



GroovyScript Step

result the value returned by the script from its last run (read-only)

script the script itself

Run TestCase Step

<any defined property in the target TestCase> the properties' value



DataSource Step (soapUI Pro only)

<any defined property> the properties' value (read-only)



DataSink Step (soapUI Pro only)

<any defined property> the properties' value



MockResponse Step (soapUI Pro only)

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7 PROPERTIES 129

Request The last request message (read-only)



Response The configured response message

539 C   . 


' &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7.1 PROPERTY EXPANSION 130

1.7.1 Property Expansion


......................................................................................................................................

Using Properties in soapUI


          7   7  
      0:  7  7
   
   )        
*        
? &   0  .    0  -3          
          :  8

 9   
0:        3      (
 " 9   
. &            7 
 7  . & 
 + 9   
. 2            7 
 7  . 2 

   9  
     +    . 2 
     9   . &              
    9 (  &   (  &"  ,  . 2 
 )$ 9   
$"&      + 

 )   9   
$",       
 1/
  9   
?          3   
              : 3            
       

Property Editors

0  
        9

.                  ,  2      
  3                       

'  


                  
0  -3    0  .   

Global Properties in soapUI

?         ?  0           
                3      

(     
     +  

C 3          7   37  

test.a.property=hello!

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7.1 PROPERTY EXPANSION 131

      $  :  


        

set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx256m -Dsoapui.properties=properties.txt

  


0  -3    . ,<   -  

${test.a.property}

' 3                
9

01:20:05,234 INFO [PropertyExpansionRequestFilter] Loaded 52 properties from


[C:\workspace\core\project.properties]

.              


 
       

:     
3              

3   

6
                   
  
   +   8 (   =         ?   =   
?  0 

Property Expansion in soapUI

     3       )73 7*       
 

.  3   9

${[scope]propertyName[#xpath-expression]}

         


     9
 #Project#  0:  
 #TestSuite#  . &       
. & 
 #TestCase#  . 2       
. 2 
 #MockService#  $"&      
$"&
 #Global# 
    )  *
 #System#     
 #Env#     
 [TestStep name]#  . &       . 2 
$            "              I$"&I
   . 2         
$"&   

             9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7.1 PROPERTY EXPANSION 132

A 2"    3 ) 3    . , 23*       
 
E 2"   

   
1 2"   
   
    3        #0  3         
 
           )     #$%*  3   

3     73 7       
   9

${Search Request#Response#//ns1:Item[1]/n1:Author[1]/text()}

'    
  7,  7     7&  ,<  7         
          5       3         
   
    3     

              7  7           


 . 2    . &  .      
    
   :            ) 3  *  . 2  
     
 . &   0:   8    . 2     
   
0  .    ?          
             . 2           
. 2           ). 2  &  *    

0  .           


     
  3   ;                   3
  <      
        0  .       
  
<       

Dynamic Properties

  EO       


      0 -3  8 3
   =    
    
         
       C 3  

${=(int)(Math.random()*1000)}

           B  >>>       

;             3      8 <          


       

( 
  3   3               
  
:  C 3    <   
      
,<   :  
   
  7<  7    
  ) 3  *         <  

...
${=request.name}
...

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7.1 PROPERTY EXPANSION 133

          : :   


    $ 9

...
${=request.operation.interface.project.name}
...

. 
    )  *           9
 
9 
D: %

 


 
 

  9     ) 3   ,<   $",   *
 3 9      3 ) 3     
. 2   $"&*
C   0   
          :       
   
 : +      ;        
     
               )*        K

Nested Properties

            3   )   K*  3  9

test = "value"
testexp = "${test}"

-> "${testexp}" evaluates to "value"

testexp = "value"
exp = "${exp}"

-> "${test${exp}}" evaluates to "value"

testxml = "<test><value id="123">hello</value></test>"


testxpath = "//value[@id=${id}]/text()"
id = "123"

-> "${#testxml#${testxpath}}" evaluates to "hello"

Property Expansion Points

0  -3            9


 <   

 "    
 )  $", 23  ,   &  *  & 5  


 #0   #R      
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7.1 PROPERTY EXPANSION 134

 2   5 2   


 ,<        

   <    "    /..0 / 
 0  .       
 #0  3  
 (  &   
     )   0 *
 $",       
 )   0 *
 0  G    (  &"   
 ; 

'&&         
 &$%  
       3         
 
    
    
       
    3          "     
  K

Built-In Properties

.               3          .
 
          5 
   70  $7

Request The configures request message



Response The last response message (read-only)

Endpoint The current endpoint for the request

Username The current username for the request

Password The current password for the request

Domain The current domain for the request

Properties

<any defined property> the properties' value



GroovyScript Step

result the value returned by the script from its last run (read-only)

script the script itself

Run TestCase Step

<any defined property in the target TestCase> the properties' value



DataSource Step (soapUI Pro only)

<any defined property> the properties' value (read-only)



DataSink Step (soapUI Pro only)

<any defined property> the properties' value



MockResponse Step (soapUI Pro only)

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.7.1 PROPERTY EXPANSION 135

Request The last request message (read-only)



Response The configured response message

539 C   . 


' &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8 FUNCTIONAL TESTING 136

1.8 Functional Testing


......................................................................................................................................

Functional Testing of Web Services


!      '&(%  
 "
 <     
7  . 2 7 ; 
     . 2   3       
      

       


 ' &  
. 2      
 . &    3   <  .        . &   

   
   . 2     
4  . &    
            :

C   ' &  


              9
   
9        ' &       
 2    
9       ' &          
 0  
9      <         <    
 (  (  
9          " <        3 
  ) 3          *

539 ?
&   C   . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.1 GETTING STARTED 137

1.8.1 Getting Started


......................................................................................................................................

Getting Started with Functional Testing


5         '&(%    <            . 2 
       
        <          
     )=7   
7*      <   <  )=7
   
7*
C        ) 
 ? % 

 *               
   3             3    


'            7?


& 7     :     
:      4 ' & . 3      . & +. 2   
 . & 9

Create a Web Service Test from SOAP request


;     <   "
        . 2       
 &         <     )7  <       7*
     . &   . 2     :            
     

" 7 4 . & 7  7 4 . 2 7
                <      7& A7
 2 
. & +. 2        <      .  ,<  
      
  <   )     "  
      

  
<  *
    <           <             
<  8    
   
,     . &  + . 2 

Add an Assertions to a test


5            <              " 
 &         <     )7      
<  7*
 &   
7& 2  7    "           
   '&(%+&  .           
<  +    )  
 *
 0   <    
          <          
 
     <       
  "
     
 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.1 GETTING STARTED 138

,      

Now run your web service test!


;        <                . 2 
 (  "            
            
 ,      

      7,   . 2 7    
    <       
          
 3 
,           
           

539 ' & . & 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.2 TESTSUITES 139

1.8.2 TestSuites
......................................................................................................................................

Web Service TestSuites


 . &            . 2   '  
. &  
  . 2     3    <        

Generating TestSuites

&
 7?  . & 7          
   
. &       .  
   
  8

 "   
    3 
. &      
 ,   E   9
A ; . 2     ;     . &    . 2       
E &
 . 2    ,<      ;     :   K
 7" +   E   9
A   3 
,<        3 
<   . ,<  
E 2   -  ,<        <           
. ,<  
   &         
  
 1   2    % .    
  . 2 

TestSuite Actions

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.2 TESTSUITES 140

. 
       . &    
    9
   "  ;   . &  ,    
 / / " (  +-   . & 
 6( +       . 2    . & 
 + "       . &   
 . 2  +. &
 "  "     
  
    . , 
 &       . & 
 &$      . &    :    . 2   
  
 '  3   . & 
 %&   +    .  2       . & 
   (   
   3   

TestSuite Details Tab


. 7(  7          
     . &   
    
 
 6& 9        . & 

TestSuite Runner
(  2"
. &     
    . &  ,   
   
  . 2      0
 6         . 2    "

. 2       . 2    . 2     
     0

6        . 2        
. &  3 
.          
 9
 " 9 ,   . 2 
 + 9 2  

 
 6( + 9 0      . 2    . & 
 "  7" 9 .

   . 2        < 


 " 
 9 .

   . 2         
 +   - .%
 ,0 9 -3  /.$% ,      . &    )  *
.    < +              
. &  
 
         


  
     %      . 2         
 . 2  )  
*9
 (   9         . & 
 0  9 . 2   
 & &  9  ?        . &    
 . ( &  9  ?        . &   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.2 TESTSUITES 141

. . &  


       +        . &   

Generating Reports

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.2 TESTSUITES 142

  0  


        . &   .   
    3  . 2   
        

&
 72  , 7         
 
 3 
    
  /.$%  9

 
                    3 
 9

TestSuite Coverage

. &  2
   <  C      )   0 *       

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.2 TESTSUITES 143

    ' &  


         "       
   
               
 

. . &  2


       2
        0: 2

0  - 
2
   
 . &         +    

3 
  
      2
     2
 0  &  0:
2
      

539 C   ' & . 


. 2 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 144

1.8.3 TestCases
......................................................................................................................................

soapUI TestCases
       
    
. 2       
. &    3   <          % .       
. 2    
 . 2        

TestCase Actions
. 
       . 2    
    9
 ( +     . 2  -   
 / / +       . 2 
     . 2  ;   
  
   8@   . &   . 2 
 6(         % .    . 2 
 + + - /(0       . 2      
. & 
 +   - .%
 ,3  /(0        . & 
     . & 
 +      . &   . 2 
 &       . 2 
 &$      . 2    . & 
 " "    %   
    . 2 , 
 $ + .     . 2       . 2 
 $ + (     . 2        . 2 
 '        3  .  2 
   (   
   3   

TestCase Details Tab


. 7(  7          
     . 2   
    
 
 6& 9        . 2 

Clone TestCase

&
  . 2    . 2       
 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 145

 
    :        <       :


Clone TestSteps

&
  . &   . 2       
 
9

.            ) 3         *  
         
 . 2 ) *    . &          

 )              *

 
    :        <       :


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 146

   7 7    3     ( 



   


The TestCase Editor

( "
. 2      
  
   +    
   . 2          . 2     . 2     
 
         

.      


D  )   *9
      
  
 
 
  
   
. 2     

         . 2 8
 . &     . &   . 2 
 . 2  2
 2
 0    . 2 
 . 2  ,<  ,<    . 2 
         . 2  )  
*9
 (   9         . 2 
 0  9 . 2   
 & &  9  ?        . 2    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 147

 . ( &  9  ?        . 2   


 . . 2  %
 
+3 
  9  
    9
 '  . 2   
      3  . & 
 
 "
 ;    + 
      . &
 / 
 . 2  "

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 148

The TestCase Editor Toolbar

.        


 )  
*
 " +    . 2  )  *
 + +    
. 2 
 " +"", 

   . 2          '   . 2 


           2  . 2   
 + +             <     . 2 
.                  
 +               <     . 2  . 
            
      .    ,%  
    <           .     
    <    
. 2 
 6(      % .    . 2 
 +      . 2  ;   
  
 +   - .%
 ,0 9 -3  /.$% ,      . &    )  *
   (   
   3   

The TestStep List

. . &           


 . &   . 2  (  "

. &            ,


 "
. &    
 
 9
         . &  )   *
 / /        . &  3 
 %  8@                
 &        
        
 +         )  *
 $  .            )       
2  *
 $  (             )      
 2 (*
   #         . &    
      
   
(  "
. &     
  . &            
     . &   
 ) 3    ,<   ,  G *

TestCase Options

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 149

&
. 2  ;    . 2        
   
. 2  -      
  
  
 
  9 ' "
           )  0 
-3   * "             
  9 2  /..0 &         <     . 2  &

   "       
 /   9 2   . 2        . &      )
3      ,<  &     *
 ! +   9 2   . 2         7C   7    
   . 2       . & 
  9 " 9 %
, 
. 2             
   . &           
+ 
 2"

    "         . &         
   
 ) &" 9 .   )   *      <     . 2 
 + &" 9 .   )   *      
  
 

. 2 
 ' " 9 .  3     . & ,   "    
 3  
. 2 

Clone TestStep

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 150

&
  . &  . &      
 
9

 
    :         <       :
     

Generating Test Reports

  0  


        . 2   .   
     3  . 2   
        

&
 72  , 7         
 
 3 
    
  /.$%  9

 
                    3 
 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 151

TestCase Coverage

. 2  2
   <  C      )   0 *       
    ' &  
         "       
   
               
  

. . 2  2
       2
        . &  
0: 2
 0   - 
2
   
 . 2         +  
 
 3 
  
      2
     2
 0  &
 0: 2
      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 152

TestCase Requirements

. . 2  ,<        ,<  0     0: G
     ,<          . 2 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 153


 ,<          . 2     <  . 2 
%     4 7%" . 2 7         ,<  .   "

 . 2   3 


,<  9

539 ' &    . 


'"
 .  &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.3 TESTCASES 154

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4 TESTSTEPS 155

1.8.4 TestSteps
......................................................................................................................................

soapUI TestSteps
   . 2            . &    3     .

       8

Step Type Short Description

Request Sends a SOAP request and allows the response to be validated using
a variety of assertions.

REST Request Step Executes a REST Request to a Resource defined in the project

HTTP Request Step Executes and arbitrary HTTP request

Property Transfer Used for transferring property values between two test steps.

Groovy Script Runs a Groovy script that can do more or less "anything".

Properties Used for defining global properties that can be read from an external
source.

Conditional Goto Allows any number of conditional jumps in the TestCase execution
path. Conditions are specified as XPath expression and applied to the
previous request steps response.

Delay Step Pauses a TestCase run for the specified number of milliseconds

Run TestCase Step Runs another TestCase from within an existing one

MockResponse Step Waits/Listens for an incoming SOAP Request that can be validated
and return a mock response

DataSource Step Reads external data to be used as input to requests, etc - soapUI pro
only

DataSourceLoop Step Used together with a DataSource to specify looping for external data
rows - soapUI pro only

DataSink Step Writes properties to an external storage - soapUI pro only

DataGen Step Generates property values - soapUI Pro only

-  . &  . 2  3                 


 . &   3   ? &        7  7    ,<   &
  "    
      0  -3       3   

Common TestStep Actions

-  . &       


  . 2    
   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4 TESTSTEPS 156

    9
         . &  )   *
 / /    +   . &  3 
 %  8@                
 &        
        
 +         )  *
 $  .            )       
2  *
 $  (             )      
 2 (*
 8  #  8 . &  
      . & 
   

539 ' &    . 


'"
 . ,<  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.1 TEST REQUESTS 157

1.8.4.1 Test Requests


......................................................................................................................................

Test Requests
       ,<   & 9
A &;0 .  ,<     '&(% ;      :
E ,-&. .  ,<     ,-&. ,-      :
1 /..0 .  ,<        /..0 
.          "         
   +  
           
        
<  
   ,
        
.  ,<   )   
         /..0 .  ,<   *

2                  


     
  
 

The Assertions Tab

.              


   . ,<   (  "

           
   
)   *       
                      

  

   3             


     
  8  =    
   
 
 =  "
 =  
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.1 TEST REQUESTS 158

.      


  72   7   
  
   . ,<   )  *

. 
          
    9
            
 +#" )  *       
   

 + )  *       
 &        
 &$       

The Request Log Tab

. ,<   %
        +        4  
. ,<   .                      4  

Request Result Viewer

' 3 


,<   &   . 2  )   % . *    <  + 
        <         
7,<   ,  G7 
  . 2   
    % .   
   "
   

 &  ,           

.   1   9


 7"
   <           <  
 7"      <   
   
3     
  $.;$+#;0   
         
 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.1 TEST REQUESTS 159

Clone Assertions

C &;0 ,<      0   


         

        . ,<    .  
   9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.1 TEST REQUESTS 160

.      9


       
      . ,<     
  +   
 . 2 
  "   
 . & 
 
   
 0:
 $(  3 

   )         3   
3   & C  & 2   *       
 3  
  
 . & ) *    

               
    ,<   +. ,<  
       
    )          
*
&
      
;J   
     7 7

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.1 TEST REQUESTS 161

   3     ( 



   


539 &;0 ,<  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.2 PROPERTY TRANSFERS 162

1.8.4.2 Property Transfers


......................................................................................................................................

Property Transfers
0  .    . &         0  2    
   0 .   . & )   
. 2  . &  0:  ? 
0  * .            7   7 
     
      #0 +#R  3   
0  .      & 3 #0 +#R  
     #0 +#R 
 

The PropertyTransfer Editor

. 0  .          "


0 .        

   . 2    . &  

.       


       
            
         #0 +#R  3     


    
 263                
   
     3          #$%   
#0 
3                     
   0  
#0  &  ? #0  2      
     3    

     
 #0  3          
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.2 PROPERTY TRANSFERS 163

. 
         
  9            
  9         
 + , 9             
 & 9          
 " 9                
  C   "
       
         ) 3   . ,<     *
 "  9                  C   "     
  
         ) 3   . ,<     *
  9               #0    5    
    3     . ,<        
    
  
   3     <  . ,<   <   
      
                       
   (   
   3   
 7.   %
7                  
0 .           
    
  
         
. 2 +. &    . .   %
 
  72 7          

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.2 PROPERTY TRANSFERS 164

Transfer Execution

  3   


. 2           0  .      

                   #0  3     

   ) *          


    #0  3  

 #0  3               


        
        ) 3    

3)*   T  *       
        

&    
 #0  3                    
      <            
   <    
       

             
      #0  3       
      
   
   7   7        
   . 2  3       . 2   7C   7     
    . 2  ;  

. 
           9
 ! #   C             ) 3    
 
 *
  "  & " ;    
         
  
       
 # '  '  #0  3         3  
           )<    "       AO*
 % & ,& $" ;    
      :  

 
  
 #      
 #0  3                 
               
 . >",       #0  3    #R  3     

      3+         :  7  7  

Working with Property Transfers

 0  .         9


A 6
   
  . &    0 .        
E 2   0 .            
   

   
1 &      
 . &         3
D         #$%   
     #0  3  

 #        #0  3           
          3    //ns1:SessionId      
 (  
    
     
<   )   
         *

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.2 PROPERTY TRANSFERS 165

O .     ) *  


 "    "  
<   
   
                     
)  
*    
  
Q ,    1 O          G  .  
   0  
     
    
  
,  
'4            

PropertyTransfer Example

. 
           :        9

& E <      4 ' &  


) 9++    4+'&-2&+'&-2& *8

<soapenv:Envelope
xmlns:ns="http://webservices.amazon.com/AWSECommerceService/2006-02-15"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns:ItemSearch>
<ns:SubscriptionId>- your subscription id here-</ns:SubscriptionId>
<ns:Request>
<ns:SearchIndex>Books</ns:SearchIndex>
<ns:Title>Oxford</ns:Title>
</ns:Request>
</ns:ItemSearch>
</soapenv:Body>
</soapenv:Envelope>



<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="http://webservices.amazon.com/AWSECommerceService/2006-02-15">
<soapenv:Body>
<ns:ItemSearch>
<ns:SubscriptionId>- your subscription id here -</ns:SubscriptionId>
<ns:Request>
<ns:Author>?</ns:Author>
<ns:SearchIndex>Books</ns:SearchIndex>
</ns:Request>
</ns:ItemSearch>
</soapenv:Body>
</soapenv:Envelope>

     


             <   7  7
    author <      
 7<  7  8

&  #0 9

declare namespace ns='http://webservices.amazon.com/AWSECommerceService/2006-02-15';


(//ns:Author)[1]

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.2 PROPERTY TRANSFERS 166

. 
 #0 9

declare namespace ns='http://webservices.amazon.com/AWSECommerceService/2006-02-15';


(//ns:Author)[1]

539 ' & . 


2  ? &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.3 CONDITIONAL GOTOS 167

1.8.4.3 Conditional Gotos


......................................................................................................................................

soapUI Conditional Gotos


2  ?           #0      <  
   
     . 2  3    . &         
      .     . 2  3          <  
       . 2             . 2 
3      ? &  

&       9


 6 
 
      <  
 ,  
 7
7   )  *     

 ,    
 "
       
 ) 3   
   *
2    & 3 #0  
     #0      
      6         )  ? 3    *

The soapUI Conditional Goto Editor

. 2 ? -       "


2 ?      
 
    . 2  -      

.       


     
 3 
    
       3     
 . & 263   
 . 
+          
              
)    
         
. ,<  *

  0   #0  &     


   .  2      

 #0           

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.3 CONDITIONAL GOTOS 168

. 
         
  9          
 + , 9           
  9       
 & 9        
 " 9                     )
   
         
. ,<  *
  9          3    5    3 
  
. ,<        
 )   *
   (   
   3   

Goto Condition Examples

2       6      3    


3   "    
            4  9

declare namespace SOAP-ENC='http://schemas.xmlsoap.org/soap/encoding/';


declare namespace
ns1='http://webservices.amazon.com/AWSECommerceService/2005-10-05';
declare namespace SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/';
count(//ns1:Item)>0


    "      9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.3 CONDITIONAL GOTOS 169

declare namespace SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/';


count(//SOAP-ENV:Body)=1

   


"       9

declare namespace SOAP-ENV='http://schemas.xmlsoap.org/soap/envelope/';


count(//SOAP-ENV:Fault)=1

539 ' & .  &  ? &  &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 170

1.8.4.4 Groovy Scripts


......................................................................................................................................

Scripting your test with Groovy


. ? &          ?    
 3  
. 2  .           :           " 
 3  9
 ,      3             
 2 . 2             3   
 .

  3    . & + . 2 


 0             3 

 '       . &   3    ) 
 *
 
     3             ?   ) 3   :
 *      F3                   
        )       L  '&      *

The Groovy Script Editor

. ? &     


   3            3 
+   8

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 171

.      )   *9


 / 9     
7, 7  
    9    3 
    9      
   3 log :
 " / 9         
    
  3 
.             
+ 
 

Script Execution

' ?    3   


3           9
 testRunner 9    . ,   
   . 2         
      ' . 2 , 
 context 9    . , 23  
   . 2         
      ' . , 23
 log 9    
D: Logger :     


   
'            
   7, 7      E :  
  "    
         . log :  
      
      
   . 2   
  
7? 
7         


                   -3       

  
 )  3   *

Context Properties

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 172

. 
       
  9
 %'  3         
 % .  .     
 
 
 . 2   
    5     
   3
          3      3     )    
 
     * '   
 % .            7B7
 "+"       . 2          )   * 
 
 % .  '   
 % .            7B7
   "      % . ,    
 % .   
 
 A
B  / &       . 2           
. 2  ;   


Groovy Script Examples

?
   ?            3   
   9
$   ,<   39

// get request property


def request = testRunner.testCase.getTestStepByName( "Request 1" );
def property = request.getProperty( "request" );

// parse out textnodes to modify


def node = new groovy.util.XmlParser(false,false).parseText(property.value);
def textNodes = node["soapenv:Body"]["sam:getContactInfo"]["String_1"][0].children()

// modify
textNodes.clear();
textNodes.add( "test" + System.currentTimeMillis() );

// write back to string


def writer = new java.io.StringWriter();
def printer = new groovy.util.XmlNodePrinter( new PrintWriter( writer ));
printer.print( node );

// set property
property.setValue( writer.toString() )

,  
     

// check if time is set


startTime = context.getProperty( "startTime" )
if( startTime == null )
{
startTime = System.currentTimeMillis()
context.setProperty( "startTime", startTime )
}
timePassed = System.currentTimeMillis() - startTime
if( timePassed < 60000 )
{
// countdown and set name
context.currentStep.name = "Groovy Step - " + (60000-timePassed) + "ms left"
log.info "timePassed = " + timePassed
Thread.sleep( 1000 )

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 173

testRunner.gotoStep( 0 )
}
else
{
// reset name and pass on
context.currentStep.name = "Groovy Step"
log.info "timePassed = " + timePassed + ", exiting.."
}

, 
     

  0  &

// read the file


def properties = new java.util.Properties();
properties.load( new java.io.FileInputStream( "testprops.txt" ));

def targetStep = testRunner.testCase.getTestStepByName( "Properties" );

// assign single property


targetStep.setPropertyValue( "myproperty", properties.getProperty( "myproperty" ));

// assign all properties


def names = properties.propertyNames();
while( names.hasMoreElements() )
{
def name = names.nextElement();
targetStep.setPropertyValue( name, properties.getProperty( name ));
}

 . &   

// add a properties step


testRunner.testCase.addTestStep( "properties", "another step" );

C     

// fail randomly
if( Math.random() > 0.5 )
throw new Exception( "A random error has occurred!" );

, +  "
    7$   /..0 & 7     . 2  ;  ( 
   
HttpState :         . 2      "   
 
  . 
     "      / &      
? 
9

def state = context.getProperty(


com.eviware.soapui.model.testsuite.TestRunContext.HTTP_STATE_PROPERTY )
assert state != null : "Missing HttpState.."

def cookies = state.cookies


assert cookies.length > 0 : "Missing cookies.."

for( c in 0..cookies.length-1 )

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 174

log.info cookies[c].name + " = " + cookies[c].value

            "   "


<     9

def state = context.getProperty(


com.eviware.soapui.model.testsuite.TestRunContext.HTTP_STATE_PROPERTY )
assert state != null : "Missing HttpState.."

state.addCookie( new org.apache.commons.httpclient.Cookie(


"http://www.mydomain.com", "SessionID", "1234" ))

soapUI GroovyUtils

. ?        


 "      ?  
 ? &     )$",   &    * 
9

def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context )

?      


)*  9
 projectPath 9   
     
:     
  
  
 setPropertyValue( String testStepName, String propertyName, String value
) 9        
 expand( string ) 3    0  -3   

 getXmlHolder( String xmlPropertyOrString ) 9 2   XmlHolder : ) 


*     
+
   #$%   
#0  3    .

     . &     TestStepName#PropertyName   
  #$% 

.   #/ :   


 9
 getNodeValue( String xpath ) 9               
 #0  3   )       U3 V 3     *
 getNodeValues( String xpath ) 9   &
   
      
     #0  3  
 getDomNode( String xpath ) 9    (;$ 5         
 #0  3  
 getDomNodes( String xpath ) 9   (;$ 5    
   
   #0  3  
 setNodeValue( String xpath, String value ) 9        
     #0  3         )       U3 V
=    3     *
 declareNamespace( String prefix, String namespaceURI ) 9     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 175

      

+               U 3V =
   )  3   *
 getNamespaces()   $  3     ,9       #0 
3  
 removeDomNodes( xpath )   (;$   
  #0  3  
 xml 9    
   3 

 xmlObject 9    


   #$%6  #;:   3 

 prettyXml 9    


     3 

 updateProperty() 9   #/     . &        
       3 )  3   *
 updateProperty( boolean prettyPrint ) 9         
   3 (        
     #0  3                  

 declareNamespace        #$% $
        
 0  -3   

& 3      ?  #/9

def groovyUtils = new com.eviware.soapui.support.GroovyUtils( context )


log.info( groovyUtils.projectPath )

// create holder for last response and log requestId


def holder = groovyUtils.getXmlHolder( "Book Author Search#Response" )
log.info( holder.getNodeValue( "//ns1:RequestId" ))

// create holder for request and set id


holder = groovyUtils.getXmlHolder( "Book Author Search#Request" )
holder.setNodeValue( "//ns:SubscriptionId", ""+Math.random() )

// update request with updated xml


holder.updateProperty()

  #/    $      3  




    
  
         9

...
log.info( holder["//ns1:RequestId"] )

...
holder["//ns:SubscriptionId"] = ""+Math.random()

...

   #0  3           



   &
    
  9

for( author in holder["//ns1:Author"] )


log.info( author )

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.4 GROOVY SCRIPTS 176

          3           9

def holder = groovyUtils.getXmlHolder( "Book Author Search#Response" )


holder.namespaces["abc"] =
"http://webservices.amazon.com/AWSECommerceService/2006-11-14"
log.info( holder["//abc:RequestId"] )

539 . 
' & 0  &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.5 PROPERTIES STEP 177

1.8.4.5 Properties Step


......................................................................................................................................

Properties Step
. 0  &                   
0 .    ?&    .           + 
    3   3            3  )  
   *               


Properties Editor

. 0  & -   


 9

.         


)  
*9
 
 , 9       
 &$
 , 9        
  #& 9      
+,%+             
   .    ,%               
     
                     
          ,%      <     
 
  " 9        
       .
                
   
  
 0  & )                *
 $  9      
            
   
   .                 
                           
         <     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.5 PROPERTIES STEP 178

 
   9               
.                           
       
     


Property Details Tab


. 0  & (  .  ) *    
9
 6&9 .     0  
   9         0  
 +                   

 $ /#     3 
    
  + 
     
   
  4"  $ 9          :  

Step Execution

' 0  &  3   


. 2   
   "9
 .                ) 
 7& 
 % 7  *
 .          
      ) 
 7& 
 % 7  *
 .           . , 23         
0  -3  
539 ' & .  .
9 (  . &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.6 DELAY STEP 179

1.8.4.6 Delay Step


......................................................................................................................................

SoapUI Delay Steps


(  .  &           . 2     3    . 2  
      
;   
 %        
 "      
  , &             )   ABBB *

539 ,  . 2  &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.7 RUN TESTCASE 180

1.8.4.7 Run TestCase


......................................................................................................................................

Run TestCase Step


. ,  . 2         . 2          

 
. 2         
 . 2 

.        "


  3 . 2        
   
    . 2  

 
 7,  . 2 7     
 . &   
 
 
9

&    . &   . 2      3  . 7,  0  7    
 . 2         
 . 2           
      "   ,  . 2    3 

The Run TestCase Editor

;    ,  . 2        


)  *
           
      
 . 2 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.7 RUN TESTCASE 181

     


      
 . 2  ;         
  . 2  %
  
         

Execution

'  
 . &   
  9
A .    
      "           

. 2 
E .  
 . 2    
1 .    "         "    
 . 2    , 
. 2  
D    
 . 2       ,  . 2   
.    
  A  1      +   
    
 . 2 

           .       
(  &  
3 
  . 2    
       

  
  . 2  
               . 2  

  
 . 2 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.7 RUN TESTCASE 182

539 ' & &   $",   &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.8 MOCK RESPONSE 183

1.8.4.8 Mock Response


......................................................................................................................................

MockResponse Step
. $",   .      &;0 ,<       
    

 . 
<         :       . ,<   &  
 
   


     . &   3  9
 2  
  

<     
         
\  
 . 
     3    
 "  :     ,<  &
   
    


Creating MockResponse Steps

$",          7  7 


   . 2   . &  
     8

.  
   
  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.8 MOCK RESPONSE 184

 5  .       


 ;   &       "
   &      "  

            
  
 2  ,      $",   
        
 0      
 0       
 
       
;J           

;      $",   & 9


 C  ;   5  
 "     $",       ;  

 C ,<   5  


 "     $",       ,<   

      $",    )   *

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.8 MOCK RESPONSE 185

 C $",   5  


 "      . 2  
 3 

$",    )   *

MockResponse Step Properties

.            $",     
3  9
 &" C   $",   &   <          
    & 
B    
  !"   $",       
&;0 C 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.8 MOCK RESPONSE 186

      $",       


,   $
    
 '&(% ;  
   2
      . 2   $",       7 
7 
<   .            "
<          "  
$",   &   3     <            &  &
  <   )   $",        
 <     <  
 * % 
       
    3 

      

      
            '&(%

The MockResponse Step Editor

. $",   &              0 $",    
      +
      . ,<       
3   4    ;  -   
  0  .   

                       


3  
      $",    .  
     
3   
$",          + 
 :    . ,<        
       3   &;0 C           
<   
 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.8 MOCK RESPONSE 187

Query/Match Configuration

. R +$  


        <         

<      .     
% .    <         
    
 (   <   C 3    R      #0 
3       (   $        3         
(

MockResponse Step Execution

'  3   . 2     


 7&  & 7  $",   &   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.8 MOCK RESPONSE 188

     $"&     <     


      
 
  ; <              
  
  :  "    $",     
 $",      $"&
      3      3    . 2 

0  .        $",   & :   . ,<        
     
<      

   


  
% .   
$",     "       
 
% . 
    
9

MockResponse Response Scripts

. 3           $",   ,   &   


$", 23  . , 23 
     3    
?     . 2 

539   0 (  &  &      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 189

1.8.4.9 DataSource
......................................................................................................................................

soapUI Pro DataSource Steps


(  ( ' & . 
      
           ?
 
      0     .       (  &  & 

  0    4 (  &  . &  


      "   
  
   (  &           . 2  
 (  &      
  3          #$%      ( (  &    
         #$% (  &       3       

. 
(  &     9
 L(62 (  &       L(62    
 -3 (  &  3      -3 )3 * 
 ? (  &      
       
 #$% (  &  3      #$%  
 C (  &  3          
 ( (  &       
 ? (  &      "  (  & 
    (  & %   <        
   
             (  & 

The DataSource Editor

. (  &      D  8


           
    (  &     3  
       
  
(  &   
    
  (  &   
     

  .  %
        
      
    
   
  
. 2 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 190

.    0             73  7   (  &     
   
 +,      -  (  &        
 
         

. (  &      (  &      7. 7       

            
 (  &  ,   
      .  %
   . 70 7  7& 7       
7(  &  -3 7  

DataSource Options

. (  &  ;   


  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 191

. 

   9
     (  &           % .  ) 
*
       (  &         
% . 
   "    (  &           . &  3 

        
 . 2 
 !  & ,    (  &           .        
       3    &R% <   L(62       '/-,-
       3        
      
 1   & ,   (  &        3        
. 2  3       
(  & %    (  &    . 2 
  (       
 (  &    )   = B*
  (       
 (  &   
 &        (  & 
 * 4       (  & 
 '  3    3    (  &    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 192

DataSource Execution

( 
       70 7        (  &    4  3 
     
 . 2  )   =  *      
 (  &  )   =
  * ( 
  "  (  &        
      "
            3    
 #$% (  &  
  
      <   
                   
<     3 

2           3       . 2  3 
  (  &     (  & % & "   3    

. 7& 7          (  &           

% .   
    
                  
 
 

,  $    
  (  ( %  . 


JDBC DataSource

. L(62 (  &    



  9

. D         


  9
 $  L(62 (        (  &  $         
     
   ++3   :++3    

   +       <  :  
 +    
 
 > >",  <                     
     0  %              
 
 
 
"    &R%       

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 193

Excel DataSource

. -3 (  &    



  9

. 1         


  9
 !  3   
    
 )  "      
    
   +          3 
  

Grid DataSource

. ? (  &    



  9

? (  &           


(  &  
       

'                             

' & . 
              (  &   

.
                +   
   -      
 
   + 
  3   -3
.     
            
   . 
 
        
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 194

  (       


 % (              
 + +        

XML DataSource

. #$% (  &    



  9

#$% (  &                 (  & 

.      9


 &  &  . &  
 #$%       )    (  & *
 &  0   0   
 #$%  
 , #0   #0  3      
 7, 7    
 2  #0   #0  3      (  &        , #0 
( 
3   , #0      
            
         )      *

File DataSource

. C (  &    



  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 195

C  3          ) 3      *      
           
     .      9
 C     
 &              
 . G           

Directory DataSource

. ( (  &    



  9

.  (  &   E   9


 ( 9  (     
 C  C 9    C5            
 (  &  &  ( (  &             
      " .        <       (  & &  
  #$% (  &   3        

Groovy DataSource

. ? (  &    



  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.9 DATASOURCE 196

.    "  (  &       (  &  &  . ?     
         7 7 : ) &
.&
$ *    3    9
 7 7  
    
 737    . , 23  
3    
 7 , 7    . ,  :
539   0 (  & % &      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.10 DATASOURCE LOOP 197

1.8.4.10 DataSource Loop


......................................................................................................................................

soapUI Pro DataSourceLoop Step


(  ( ' & . 
      
           ?
 
      0    

. (  & % &   


   (  &  &    <     
   3                   
(  &    

     "
 
72
7          

 
9

.  
  E   9
 (  &  &   (  &  &  "    
 . 
 &   &           
C 3    (  &            3       <  

     (  &  %       <   
 (  &  & 
 ,<      
   )   "   <          *

539   0 (  &" &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.11 DATASINK 198

1.8.4.11 DataSink
......................................................................................................................................

soapUI Pro DataSink Step


;         
' &  
 .       "     
    ,<       


                

.         


?           0

  0    4 (  &" . &  


      "  
   
 
    3  
 . 
(  &"    9
 L(62 (  &"     L(62    
 -3 (  &"      -3 )3 * 
 C (  &"          
 ? (  &"   ? &        
 0  (  &"


      

The soapUI Pro DataSink Editor

. (  &"     D  8


           
      
       
  
(  &"  
    
  (  &"  
     

  (  %
        
     (  &"

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.11 DATASINK 199

.    0                 


 (  " 
 + 
 +,      . (  &"    
(  &"  

soapUI Pro DataSink Options

. (  &" ;   


  9

. 

   9
     (  &"          % .  )  *

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.11 DATASINK 200

soapUI Pro DataSink Execution

-   . 2  3     (  &" &      
 (  &" 
         G             ?   
            0 -3    3

     
    5 
    0        
   
0 -3     

     

   3 

     8    0 -3      

. 7& 7          (  &"          

% .   
    
    ) 4*    (  &"    
   
 

soapUI Pro JDBC DataSink

. L(62 (  &"   



  9

. D         


  9
 $  L(62 (        (  &" $         
     
   ++3   :++3    

   +       <  :  
 +    
 
 > .               
0  & 
 3 ) N       *
 
"    &R%       

soapUI Pro Excel DataSink

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.11 DATASINK 201

. -3 (  &"   



  9

. D         


  9
 !    3        
 
 " !   
 3                
 )  "          
   +          
  

soapUI Pro File DataSink

. C (  &"   



  9

C          


     .      9
 C     
 &              
 . G          

   G           3 


      
   
. 2   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.11 DATASINK 202

soapUI Pro Groovy DataSink

. ? (  &"   



  9

.    "  (  &"      (  &" &     3    9
 737    . , 23  
3    
 7   7 $  
       
 7 , 7    . ,  :
 7
7 
 



soapUI Pro Property DataSink

. 0  (  &"   



  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.11 DATASINK 203

.   


               9
 ,  0    
     . &    )   K*
 03  3       
 2          (  &"  3 
 & 3  3       
    3       3          . 3   
  7 7  #$%         3        <    

 (  &" 7 7  

539 (  ? . &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.12 DATAGEN 204

1.8.4.12 DataGen
......................................................................................................................................

DataGen TestStep
. 7(  ?7 . &     
            . 2    3  
     <        .
            
     0  .    -3   :  "     2 
(  ?     . 2     (  "
 . &    

9

.          (  ?      
)  *

         

     

     


                

 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.12 DATAGEN 205

.           9


 &  9            
  
 .   9  "        
   
 5  9       <           )
     *
 %  9                   

Script

. 
    
&      9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.12 DATAGEN 206

& 
                 C 3       
             9

def sdf = new java.text.SimpleDateFormat("yyyy-MM-dd")


return sdf.format( new Date())

    . 2   0 -3            


]Z(  ?I [              

Template

. .   


    <   9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.12 DATAGEN 207

.        


 3         3        <   
/                 3     3  

<date><today>${DataGen#today}</today></date>

'        #$%   


       :   
     

Number

.       


 
     8   ++        
 
 <     ) * .            

 :  ( C   )  
   3   * &
 ,  " 3
          
    )     * .
0             
 :   <         
    <  ) 
   :      

    
 *

&  3       
    &(    ABB  ABBB &(  OB
&(       
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.8.4.12 DATAGEN 208

List

  
   
 9

.    


    "             
       , 4 " 3   "       <  

Common Configuration Properties

.    


       
    8 $  & 

                     8 ,-(  &.-0
,-(               . " "  ) 3  *  
               +            
.         
8  3    
  
5    
 
<  (    
     . 2     
  (   
<   +   + 
  ,-(  
                 
           $  &.-0           
(  ? . &  3   
 3     
. 2  0     
 3                     (  ?   
  
  
 

               % . 8    

5       <  <   (        <    
        <                 
<            <      

539 %  . 
' &   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9 LOAD TESTING 209

1.9 Load Testing


......................................................................................................................................

Web Service Load Testing


   3     
   
    
9
 C   % . 
9          
   . 2  
 6   % . 
9  4        
     
 

 0  % . 
9   3       
   
 
2  % % .  3 
 ,<  ( % . 
9    <         

%  .  
    % .        . 2  ) 
 . 2  75 % . 7
  *      
        +  . 2   
. &         

.        


        
  9
 .  
  "
            
    
% .  -
 %  .  2
  9      

 %  .  -3  9    3   % . 
 %  .    9      % .       
 %  .  (
  9       
   
% . 

 L$ 2   9         L$ 

Requirements Driven Load Testing

;      :      


         
7<  7       
 C       
)   3 * 
   7  7   ' &       
    
 
   )     *            
  7  
7         
 4       
      
  7  
7           
                 
    
 +  

6               % .      


      

% .          7 < 7  3   

      <        
       
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9 LOAD TESTING 210

 ;        3     .0& 

.              


     % .    
  
  
         ) 3    &;  

  0*     <           &  
&  

The LoadTest Editor

. % .  -


       % .  
      9

.     


  ) *
 . % .     
      .  % 
  % . 
 . %  & 
    

   %  & 

 . &   .  
          % . 
  .  0   
   9 7% .  %
7   

    
% .   7% .    7       % .    



©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9 LOAD TESTING 211

The LoadTest Toolbar

.        


 )  
*9
 " 9 &   % .     % .  -3 
 + 9 2   

% . 
  1  9 &  &   ?    % . 
  , 1  9 &  &   /  ?    % . 
   9 ,        

% . 
 '   9 0   3     % .  &        
   9 &  % .  ;   

 &  9 &     % .      -3   
 .   
   0
 6    
 
 ) *     % . 
3 
. % & 
        %  .  -3   

LoadTest Options

. % .  ;   


   

9
  " , 9 &           )   * 
 B   
      
   ( 8"  9              
   
  & ) 3  *  
      
          
  7 7                
 
            

 +"
:
 /  " &  9 6   .0& ).    * 
     ) )ABBB+ 
*W   *  2     .0&+60&  ' 
. 2 
  
 &  % & 
  

             
    <   
 )     * &
        .0&

) +*   
 %" 7" (  " & 9 '           
  
      /..0 <               ,<  
    &         7  7 <      )  3 <   
   
  *
 %"     " & 9 '        /..0   
            ,<               

    /..0       )            
    
*
 + + #  7" 9 &         J  +2
          
         
 ' & 
 &  %$ 9 &        % .  &     )   *  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9 LOAD TESTING 212

 EOB 
 / , 9 (            )     
  

 
 
  *
 '    9 (    
$
-3 
     
% .  
     (       3 7U  V7  

     % .  %
             
 
 
 + " 9 2    
        
.          % .                 
) 
 " 
  *            L$ 2  
 

. 7&   %


7     
    3 
% .       
 
 3   % .  .   9
 %
C        
            . & 
    . 2 
 %
    )   *             

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9 LOAD TESTING 213

 %
 . 2   
    
        

   
 

The Statistics Table

.                . &   
. 2    
. 2   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9 LOAD TESTING 214

. &              % .  -3   

(  "
. &          . &   

,
 "
 . &     . &      
% .       . &    % .    

The LoadTest Log

. % .  %
   3    
       % .    
(  "
          )   *  3   
  
   <  +    
   

.       


 )  
*9
 &$  9      % .  %

 '  9    3     % .  


 
 ( ,  # 9       +
         

 (   # 9            

.       "


                 
               

539 ?
&   ' & %  . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.1 GETTING STARTED 215

1.9.1 Getting Started


......................................................................................................................................

Getting Started with Web Service Load Testing


  AO        &;0 % . 
   
 9
 G   ' &     %   
 $   C            7 "7   
 ,                   
/       C   . 2       7?
& 7  
&    
% .      . 2  
 75 % . 7     .
  % .  -    
"  
) 
     
   . 2 *9

. % .    


     QB  ) 
*  O   
 & 
% & 
 $        )       % .  2
  *   
   !            


    QB 
      % .   )     % .  -3  *9

Add Assertions to a Load Test

      % .     % .  :   C   . &  '


 
% .        . & &         . &
$ 3           . 2   3   3  

&  7% .    7        % .  -       7
 7   &  7& $ 3 7   
       
 
9
. & $ 3   "     3    3    
 6&            
 &"& 7"                3   

  '      AB . 2     


 ' &   3         OBB 
 '    3          
 % .     O
7  7   OBB    % .     
    
    '   <      . 2 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.1 GETTING STARTED 216

Run again!

5  
 % .  

    "  
  . 2  O  3
   OBB     % . 

!     "        


     <       
 

 <  +   
  (  "
       
9

Now What?

.  
     % .  & 
  %  .  (
   

539 2

' & %  . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.2 LIMIT & STRATEGIES 217

1.9.2 Limit & Strategies


......................................................................................................................................

LoadTest Configuration
.   3   % .   
     9
 . % .  %   
% .     
 . % .  & 
   . 2        )     *

LoadTest Limit

. % .  %      


   % .  -       
9
 & 9      . 2       % .     
 & ,  9      % . 8      % .    
  "     
. 2           
0      7.  ,  7 % .             8   3  

 %  ABBB  

O           3  EBB <  
) 
 3   *

&
 %  B   % .      % .    
    

   
     % .  
 

LoadTest Strategies

 % .          
    
   . 2   3  
 
       
       . 2         
  .    
   
    & 
      
 
 
  
 &  
     

      
3 
 % .   

. 
% .  & 
      9
 &  9 . 2  3   
   
 4 9 . 2  3   
       
 :" 9 . 2  3   7   7
  9 . 2  3   3      
 1 9 (           )   0 *
   9 %
          )   0 *

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.2 LIMIT & STRATEGIES 218

&    % .     


          3     
% .     7 7   
 &   
   % .  
 6  
 
            
 % .     
        
% .  &  & 

. &  & 
   

9

  , 9       . 2   


 & 9           4
         
 C 3   
  +   ABBB+BO     
  . 2  3   OBB  ABBB   &
    B  
    

       

 
        .0&    
   
    72    .0& 
   7       % .  ;   

% .  G   & 



.     
   

9

 %$ 9              


 4 9                
 
    
    
   
       .  
    
   
          X ) W  *     
) W  *     "        

C 3   
      EB     DMB      BO   
   
 EB  1B       E       AB     3 D    
   "   
  EB     E   
% .  6   & 

. 6    
   

9

 :" , 9          


 :" " 9          
    
     7  7     3          

77 

C 3   
          QBB       1B       OB
        AB    1B    OB       AB    
 AB   
% .  .  & 


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.2 LIMIT & STRATEGIES 219

. .  & 


   

9

   9           


   9          
    
                     
 
% .  .    3                  .0&  

C 3   
          QBB       A     
1B           A  1B  AB   
% .  ? & 

. ? & 
   
   
9

-    
 
                
  3           
  M  AB     AE   AB
   6 -  .  . 2          . 2  
       
 
          

% .  &  & 

. &  & 
   
   
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.2 LIMIT & STRATEGIES 220

/                   . 2     .   
         % .  ;   
 .  3       
      A  AA       

539 ' & %  . 


-3 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.3 EXECUTION 221

1.9.3 Execution
......................................................................................................................................

LoadTest Execution
'  
% .              
. 2    
  
  . 2              ( 
   
 
       
  
   % .      
   
9
      
 %  .  
           72 7     % .   
       % .       3         
   
( 
3   
             &   . 9
 &         "
 &'  
       "
 $  
      
          
             3 
                   2     .0&+60& 
 /,            
 /            
            
2              )      
. 2  3  *                
 

.          . 2   

LoadTest Step Time calculation

      System.nanoTime()   


     " 
    . 
                  . &   9

Step Type Duration

Request Step The request duration is calculated depending on the settings in the
LoadTest Options dialog (as described there).


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.3 EXECUTION 222

Step Type Duration

Groovy Script The actual script evaluation



Properties Step The time to load/save the properties (if configured)

Delay Step The steps delay

Property Transfer The time it took to transfer all properties

Goto Step The time it took to evaluate the goto-conditions

LoadTest Assertions

'  
% .   
     
      

 9

        "       


 
. &    
    C 3    
    ,<        9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.3 EXECUTION 223

Calculation of TPS/BPS

( 
  
  72    .0&7     % .  ;   
 .0&  60&
      9
 5;.        ) *9
 .0& 9 )ABBB+ 
*W    3   
= ABB      
 .0&  ABB
 60& 9 ) +* W .0&   
      <   W .0& C 3    
      ABBBBBB  ABB <    .0&  ABB  
 )ABBBBB+ABB
W ABB* = ABBBBBB 60&
 6      9
 .0& 9 .   . 2  + 25. + ABBB  . 2        AB   
  ABB <   
 .0&  AB
 60& 9 6 + .  + ABBB  . 2        AB    
ABBBBB  
 60&  ABBBB
0                . 2        
.     .0&+60&    <      . &    "      
. 2    
.                 
. 2    
 & 
% & 
  
 
  
             
<   
 )     * &
        .0& 
) +*
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.3 EXECUTION 224

539 ' & .   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.4 ASSERTIONS 225

1.9.4 Assertions
......................................................................................................................................

Web Service LoadTest Assertions


             % .     % .    
% .  &   0 $    7% .    7        % . 
9

.             


 )  
*9
        
  % .   
 &$          
             
6       
 
       
  9
 6& 9  
     
  9   
    
  9       
    
            

      


   9

Type Short Description

Step Maximum Asserts a steps max time



Step Status Asserts a steps status

Step TPS Asserts a steps TPS

Max Errors Asserts the total number of errors

Step Average Asserts a steps average

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.4 ASSERTIONS 226

Step Maximum Assertion


. & $ 3   "     3    3       


9
 6&      
 &"& 7"                3   

      


   
   % . 
 ' &   3         3     

 
 % .  

 '    3          


 % . 
    
    &
7  7      
7 .  7 
      "    . 2   

Step Status Assertion


. & &    "            3   ,<    
?        

9
 6&      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.4 ASSERTIONS 227

 &"& 7"                3   

      


   
   % . 
 '    3          
 % . 
    
    &
7  7    

Step TPS Assertion


. & .0&   "    .0&  
         


9
 6&      
 &"& 7"                3   

      


   
   % . 
 &"&
    <  .0&     .0&       


  % .  

 '    3          


 % . 
    
    &
7  7      
7 .  7 
    .0&    . 2   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.4 ASSERTIONS 228

Max Errors Assertion


. $ 3 -   "            . &  
3        

9
 6&      
 ' /"       3          . &
 ' $      3          . & 
 3   BE        EB^        . &     
    
    &
7  7      
7 .  7 
           . 2   

Step Average Assertion


. & 
   "    
  
        


9
 6&      
 &"& 7"                3   

      


   
   % . 
 ' $   3   
     
  
    


   % .  

 '    3          


 % . 
 &  %$     
    
    &
7  7      
7 .  7 
    
    . 2   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.4 ASSERTIONS 229

539 ' & %  .  (


 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.5 GRAPHS 230

1.9.5 Graphs
......................................................................................................................................

Diagrams
   E 
          % .  &     )  
3     +
 * .  9
   
  
      . &
   , 
  
 &     . &
6 
    7,  7 
     
      
.       7(  7       9
       
          % .  &     
        7&    7 
  % .  ;   
 . 
   
      
 
   . 2    ) 
      &        % .     
 
. 2     
    
       <        
    
 
          
       ###  
   

&      
  
6                
             
 
    
  % .        .       "
       
% . 


The LoadTest Statistics Grapgh

.    
           . &   . 2  .  .
        3  
             

 3 
            

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.5 GRAPHS 231

The Statistics History Graph

.      


         . &   . 2  .   
     3  
               
 
3 
              

539 L$ %  .  2  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.6 JMETER COMPARISON 232

1.9.6 JMeter comparison


......................................................................................................................................

JMeter and soapUI Performance Comparison


.                   L$    
                       
  E     "  "   


         
            
  9 *

                   
     
  L$         

  ) /..0 L(62 L$&  *    
     
    $  
            
 L$    L$   7
7      
     
7 7   )      *    ;       
      
L$        ) 3         
*


        %  . 
' &  3          
      8 "          :   6    L$
  77    
    
      3     
       )  . 2     
*

Comparison Setup

.          <       


     
   L6 DB1&0A   

    ' &   :  DB1
      <       OBBB   D    8 A   O    AB  
 EO    
   %  .   
      . 2  ;   

    <                
   
<  

.   L$  


 <   
 . ?       

         
8 A+OBBB O+ABBB AB+OBB  EO+EBB .
7'&)&;0* ,<  7      
    7


 , 7

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.6 JMETER COMPARISON 233

   
  
   

$     
'#0 &0E  0  $ AM  A?  ,$ L,- AOB_BQ   
 
L6  L$   

Results

.              


  .0&    )W*       
 


soapUI cmdline
Threads jmeter soapUI soapUI (*) soapUI cmdline (*)

1 8 ms, 105 TPS 6.78 ms, 147 TPS 10.7 ms, 94 TPS 5.75 ms, 174 TPS 10 ms, 99 TPS

5 43 ms, 110 TPS 38.7 ms, 128 TPS 23.7 ms, 211 TPS 30.4 ms, 164 TPS 24 ms, 210 TPS

10 86 ms, 112 TPS 82 ms, 122 TPS 46.5 ms, 215 TPS 61 ms, 164 TPS 38 ms, 262 TPS

25 214 ms, 114 TPS 204 ms, 123 TPS 124 ms, 202 TPS 159 ms, 157 TPS 95 ms, 263 TPS

.      9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.6 JMETER COMPARISON 234

      
          
 
 .0&      L$
3    
   
    .       
   
   / 2   LG$          3 
 

. 

            


    
 
     .  3         
  
 
       
            

;   
    
    <            
    
        3        ' &
 
   &;     "               
       

%"

  L$       L$  /..0 AB       
     ' & <        System.currentTimeMillis() 
 
        System.nanoTime()        L  AO   
 

Further Analysis

&              


     % .    

 7.  7  
  
       A  EO    EOB  
        .
       9

C       )"  


    4*9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.6 JMETER COMPARISON 235

.      8 .0&         


       

 <    7 " 7      

      )"  


    4*9

.         8   


  .0&       
   Q                
 <       

      .0&     "  


  7 " 7       :  
  
  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.9.6 JMETER COMPARISON 236

Conclusion

.               7


7            
;    
                   " 

   


    )   
   *

6               


9
 C            
 ' & 8        L$ 
   7
 7    
 C      
 ' & 9     :     )
3   L$*  
    K

Files

              


      %  .  2   ` 9

File Description

comparison-soapui-project.xml soapUI project file containing all tests run in the comparison

soapui-compare.jmx jmeter project file containing all tests run in the comparison

ws4ee-samples-server-ejb.jar precompiled jar file containing tested Web Service, just drop this in
the JBoss 4.0.3 deploy folder and the above tests should run as
configured (you may need to change the endpoint)

!     L6 DB1&0A             DBD,2E   


 
L6 '&  " 
 
          )    
          :   *

539 ' & $"

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10 MOCKING 237

1.10 Mocking
......................................................................................................................................

Web Service Mocking


   AP          $"      ' &
&    )  7$"& 7*   ' &   '&(%     
$"&   3            )7 $";   7*   '&(%
      
 <  3   
     ) * )7 $",   7*
      
        ?      

     $"&     +            
$"&,    "    ) 
       * 

$"
 ' &        

   9
 + $ &     $"&   3 
       
              +
   
  
 
  $ $ & #&   -/ $  0 & 
 
'&(%
        ) 
      
  * 

 $"&             . &      
        
 / $   ,  R "     '&(%      

   
 3 
  
 
  0     $",   . &           . 2 
      
 &;0 <             
 
' &  

539 ?
&   $" ' &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.1 GETTING STARTED 238

1.10.1 Getting Started


......................................................................................................................................

Getting Started with Web Service Mocking


   AP          "         
          
   ?      
      .      
     
9
 ,  ' & 0 
8
      "     '&(% 
        
?
 2  
+ 8   "             
      ) 
           * 2   
          77   ,        4 
  #0  3    
<  
 .  ( ( 8 2    . &   . 2 
  $"&  
 
    
 
 

  
3       "      3 
    "
     ?     "      &    

:       2 2 
 9++ 3+2 2 3N'&(%

Create a MockService

  
   
          <   ,
 "    
  7?  $"&7   9

.    


 
       +       )  
     
  *8

L    

         


 
 '  $"&    
 
                
    .
$"&   $";    
       
    
        $",            (  "  
$"&  7,   A7        
    

 4
           
9

. $"&  ) *               

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.1 GETTING STARTED 239

<  +   
 
 
<            $"&

. $",               ,<    )  + 
 
   8 *   7 7                
  
  "       . 7
,<  7  +    
 <        )    


   *  
  
   

Invoke the MockService from within soapUI

                 


      
  %    :  "
 "       9
A 2" 
      $"&          

+           
)          *
E   $",                     
   3 
<      
      : '  

<          
              

$"&
1 &     <  K  
    
      $",    
<       9

&
 "   $",     
 7
,<  7  +   
     <          $"&       

$";  9

2
    K /               $"&   
 C
      $",      
 <          

       )       $"&*

Customize the MockResponse

%     "


   "         ?   & 
 7,   & 7     $",       
9

?  "   $" ,       


      

5  


<     $",            
 
            

   
8

;J   
         "        9
 
       $";   )  
    * 2 
   
 
  $";   ;   

         )           
 *   
         

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.1 GETTING STARTED 240

 ?           


       $"& 
     
      )            *
 
539 $" ' &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 241

1.10.2 Mock Services


......................................................................................................................................

Mock Web Services


$"&        
    
:  .      
     8
A C  0:     75 $"&7  2     $"&
     
E C  3 
<    
 72  $",  7        
  $"&     <           
$",  
1 C        7?  $"&7  .   
 9

 
            $"&  $";  
 
           -  $";      

    $",            '&(% 
&         
    
<   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 242

;         $";        $"&   
<                         
" L  "         < 

MockService Actions
,
 "
$"&     
      
 9
 ( )$     $"& -  
  &*   +4  $"&      $"&
    $"&
 6( )        $";     $"&
 + )$    $"&
     %#      $"&          
 : .             
   $"& -
 &       $"&
 &$      $"&
      
   3   

MockService Details Tab


.        $"&     
  9
 6& 9      $"&
   9         $"&      
$"&     5 


    $"&    )  *

    $"&    )  *
  
4   
<        &;0 G  
 
$";    $"&
 7" 
   
<   &;0      &;0 
 
$";    $"&
     9    
 <    
,   $
    
<  
 %&   
'&& 
      

<    . 
       
             
 #" "     ; 

'&& 
      $",   
2       $",   
. .  0              $"&

The MockService Editor


(  "
$"&    
    $"&     
 C
       
 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 243

 .    


  9
 " &   $"&   
 +      <   )  *
  &  
$"&
   %# ;   /.$%
  "       '&(%   
)  *
   ;   $"& ;   
)  *
  ;  
   

.    $";     


   $"& ,
 "
 
$";          "
   $";   

 

   <        
  9
 / -   $"& 

 + 2      

   0     3          


 J    
   "       ) 
 
 4    *

(  "
     
     
 3 
    <   
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 244

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 245

MockService Inspectors

6     $";     D      )  


*9
 (   9             $"&
 0  9  
       $"&
 &  &  9  ? &           
 $"&   
 4   
 & &  9  ? &        
 $"&      
 
  

MockService Options

. $"& ;   


  
  9
 0         
 0      
 /   3  0       )   '&(% 0  
*
 /  ;      0      0
 (                ?-. <    
$"& 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 246

 C  ;   $";        &;0 C  


    
$"&

MockService execution

'  
 $"& 
 ,              ) 
   
  $"&* 
   $"& ;   
 .   
     
 9

&;0 ,<                  7 7 ' & 

<          
$"& + $";      
  
  ,<   ( 
 '  $"&   
      
+ $";    $",     .            
  
     $"&     <       $"&     

   

 

      


<    
&;0 C       3     

  <                      

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 247

$"& $";  9

WSDL Publishing

'  
$"&   
'&(%     )'&(%  #&( *
               +       
        
      $"&

. 
   $"-
        
$"& 9

&
$"&       "  9

&
              9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2 MOCK SERVICES 248

  
         9

.  '&(%  )           *     


    

    EO         $"&   7N'&(%7      "
'&(%      '&(%  
"        '&(%  
    '&(%   

539 $"& 2




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2.1 COVERAGE 249

1.10.2.1 Coverage
......................................................................................................................................

MockService Coverage
'  
2
  $"&              4 "
<          
   2
 0  .   
E
  9
 2 2
 9      '&(%           

 $" 2
 9          $"    "

' 

  $"&  2
 0          
 2
 .    
$"&   $";   8    $";  
   3 
 
  

           0         ' &   
 

.        <  .           




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.2.1 COVERAGE 250

539 $" ;  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.3 MOCK OPERATIONS 251

1.10.3 Mock Operations


......................................................................................................................................

Web Service Mock Operations


 $";                  :    
  
<           &;0   
   $";  
        $",            
     
  ( 
 <     $",              


MockOperation Actions
,
 "
$";       
  $"&     
 
 9
   )      $";   -  
   7"       3 
<        
"  
     $"&   .       < "  

$"&       $"&    
 6( )        $",     $";  
 +       
    ;   "   $";  
)  *
 &       $";  
 &$      $";  
      
   3   

MockOperation Details Tab


.        $";       
  9
 6& 9      $";  
   9         $";         
$";       5 

        ;      
"
   ,   
<     $";     

Change Operation

.      


  ;   "   $";     
 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.3 MOCK OPERATIONS 252

.  
    9
 6&  
      $";  
 %#     
      "
         "
       $",       $";     
    
 +           
  
 9 '   " 3 
+        
   ) 
"   +       +     

The MockOperation Editor

(  "
$";      
    $";      C
       
 9

 .    


  9
  )   0     $",     $";  
   7"       3 
<        
"  

 # .    
      "
   .      "
  ;  
   

.    $",     


   $";   ,
 "
 
$",           "
   $",   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.3 MOCK OPERATIONS 253

 (  .   


              
)  *

Request Dispatching


<    $";           D   
   
39
  >. 6+     
     <   
  


       


 6      3 
$",  
 
       #0  3             
 $",       
 + %
 ?     
      
 >. ?B +      
<    <      

$",   )  *
6  #0   &                  
    
     #0     3   ' 
#0   & 
 
           #0  3    ?  
       '  
  0  #0          

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.3 MOCK OPERATIONS 254

#0  & 

Query-Match Dispatching

. R-,!_$.2/       



  9

.           <      
+
+   &

<               
   <      
 9
 #0  9  #0  3      <     $";  
 -3     9      " 
 (  . 9  $",         3           
<  
 (  9       
.       (     
  9

 ( 5   9              <  
 -3  9    #0  3       <      3      
-3  G   
 & 9 ;     0 #0  &     <        
#0    #0  

Groovy Script Dispatching

 
?       
  3     

$";    .       


   9

.       


: 9
 log    
D: %

  


      ? 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.3 MOCK OPERATIONS 255

 context      $", 23              .
3          $";   +$",   
$"&  
  &  :    Map        

?\      )  3     *
 requestContext      $", 23          
   . 3  <            
 <       
 $";                    

$",   &  :    Map         


?\
     )  3     *
 MockRequest      ' $",<       <     : 
 
 
/ &,<  +/ &,   :
 MockOperation      ' $";         
$";   :
.            $",             
        $",     7,   A7

539 $" ,   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.4 MOCK RESPONSES 256

1.10.4 Mock Responses


......................................................................................................................................

Mock Responses
 $",                $"&     
       $";   .            
 

                


 )
3               3   *

$",      $";          ,<  
 +   7  $"&7 + 

MockResponse Actions
,
 "
$",       
    $";     
   
 9
   )       $",   -  
   7"          3 
<     $",  
$";         
   +      
$",   &  . 2 
 +  7"    . 2      $",   . &
 +      $",  
 &       $",  
 &$      $",  
      
   3   

MockResponse Details Tab


.        $",       
  9
 6&      $",  
           $",  
  *   4        
  )    *
   
       $",   

 "  9  :  ; 

'&& 
         
  
 /  %   $.;$+  
 $",   
  
      ,<    
 !       $.;$ "
          $.;$

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.4 MOCK RESPONSES 257

     
 / "               $    
  & 9 .               

'&(%    3        Q6   36 


    9 &  

          3  
<     
 &$ & , + 9 ,    +     

   
 *
  9 -4 3      
   
8" 9 )  *       
   , 9 '           
   
 8  9   +    


The MockResponse Editor

(  "
$",      
  $";       $",  
  9

.             <          


  
      $",    
 .    <         <  
    $",    
 /..0 /     

. ,        #$% &    /..0 /        
  ,<   - )     *   7,   & 7        
   ?      
       3    
  
    )   *

MockResponse Editor Toolbar

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.4 MOCK RESPONSES 258

.        $",       


 )  
*9
   7" ;    3 
<            $";    
$"&   
  <               
    0          
    
'&(%+& 
 + & ,   0        &;0    

 + 
!" 0        &;0 C       
"
               
       8
  ," 

      +        - %   


         3   

Response Scripts

. 7,   & 7       ?         3   
 
 
    
  
            
             

  

.       


: 9
 log    
D: %

  


     
 

 context      $", 23              .
3          $";   +$",   
$"&  
  &  :    Map        

?      )  3     *
 requestContext      $", 23          
   . 3  <            
 <       
 $";                    

$",   &  :    Map         


?\
    

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.4 MOCK RESPONSES 259

 mockRequest      ' $",<       <     : 
 
 
/ &,<  +/ &,   :
 mockResponse      ' $",         
$",   : ) 3             *
. ,                   
 3   
     3 )  $"&   
*      . $",<     
      <      

0     3      


     3        
3    
 9

context.randomValue = Math.random()

  7 G  7        7 7    



  9

<detail>${randomValue}</detail>

WS-A Properties

. '&           


'&     $",   

'&  
 
-  '&   
$                   
         '& 9      
      
 <  +"                   
  '& 9  "      '&(%  
    

        '&      "
 " 3   

                  


      
'& 9.      .      <  +"    . ;0.;5% 
       .   ,  . ;0.;5%        
,  .       '&  &
)  0 *     ,  . 
"         9++1
+EBBO+BM+  
+     
,   .  ;0.;5%         ,   .     
  '&  &
)  0 *     ,   .   "      
  9++1
+EBBO+BM+  
+     C ;0.;5%  
      C   C . ;0.;5%         C .
  , . ;0.;5%         , .   ? 
$
(    
     
  $
( ;0.;5% 
       $
(        " 3  " 
  $
(  
   ,<  ,     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.10.4 MOCK RESPONSES 260

539 &;0 $

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.11 SOAP MONITORING 1

1.11 SOAP Monitoring


......................................................................................................................................

SOAP Monitor
  EB    &;0 $
   
       &;0
       3 
   .          
  
. 2   $"&     0  )3 * 2
   

     4     '&(%  ) *

&   &;0 $   0:     7%  &;0 $7 9

&                   9
 
', 9      /..0 03 ' 
   
 
   9   3            3  9  

  

 
" 9     /..0 .          9  
  )      ,%   . 7  7         
        :       <        
"   "          + ),   ),
 (         

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.11 SOAP MONITORING 2

. 
,<  +,   '&& 
     
'&& 
  
   
   
 
         
  
   
 

,  <        /..0           <    <    "


     

Main Window

. &;0 $       


   )  *9
 .          
+  
+ 

 &;0 $
 .       )7.  %
7  72
7    0*
    
       <    . 2   $"&     

      


   <         

 .   
   
     

  7$
 27              
     
    <  +           

;            


    
        
,<     
   +;         
:     
       
     
     $

2  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.11 SOAP MONITORING 3

6    


 "  ABB    
      :    &;0 $
   
       

Using Captured Messages

. 1                        

 9
 + 7" 9   <      
       <   
   

 + + 9      . 2  )    3 


*   

. ,<    


     <       

 + )$ 9      $"& )    3 


*   

$";    $",    


     <      


.       E                
     
  
 

539 &;0 $ 2




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.11 SOAP MONITORING 4

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.11.1 COVERAGE 1

1.11.1 Coverage
......................................................................................................................................

SOAP Monitor Coverage


'  
'&(% 2
  &;0 $             4
 <      
   2
 0  .          
 3  9
     
                       

&;0 $   4    
          4       
  
 
' 

  &;0 $  2
 0         
   2
 .   . &  +. 2      
    8

539 ' & .  


 & 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.11.1 COVERAGE 2

           0         ' &   
 

.        <  .           




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12 USAGE SCENARIOS 3

1.12 Usage Scenarios


......................................................................................................................................

Web Service Test Usage Scenarios


.         
       

 9

Scenario Description

Data Driven Web Service Testing Shows how to use a combination of TestSteps or Groovy Scripts to
allow test data (query parameters, username/password, etc) to be
provided from an external source

Template Driven Web Service Testing Extends Data Driven testing to show how to read a series for test
values from an external source and run the entire TestCase for each
row of values.

Interactive Testing Shows how to use Groovy scripts to create an input dialog for a
TestCase and for displaying the result.

Surveillance Testing Describes how to use a scheduling tool in conjunction with soapUI to
set up ongoing test processes that continuously validate functionality
and performance.

    

   <          "K

539 (  ( ' & . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.1 DATA DRIVEN TESTING 4

1.12.1 Data Driven Testing


......................................................................................................................................

Data Driven Web Service Testing in soapUI


(  (  
                3     3  
         .             
3  

      (  ( . 
 . 2    
9
 2   ,<           
 2  0  &            3   
 2  0  .   &               
 5         
  3             
70  & 7             3      

? &             
   
0  &  6        
6    3      
  4 &  &  

     3   "   !     :    
 4 '&(%
) 9++    4+'&-2&+'&-2& * 





Create The TestCase and TestRequest

2   . 2     ,<   &  


 
<  9

<soapenv:Envelope
xmlns:ns="http://webservices.amazon.com/AWSECommerceService/2006-02-15"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns:ItemSearch>
<ns:SubscriptionId>?</ns:SubscriptionId>
<ns:Request>
<ns:SearchIndex>Books</ns:SearchIndex>
<ns:Author>?</ns:Author>
</ns:Request>
</ns:ItemSearch>
</soapenv:Body>
</soapenv:Envelope>

 7& 2  7            7&;0 C 7     
3   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.1 DATA DRIVEN TESTING 5

Create Properties and Property Transfer

  70  & 7   E     7&   (7  7 7 
 
           70  .  7    E        

        


 <   !      
"  
 9

    7, 7     0  .   -     ,<       
<       
"  
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.1 DATA DRIVEN TESTING 6

)                  <  *

Reading the properties from an external properties file

           


             
0  & -       3            
 
 
9

SubscriptionID=.. your subscription id ..


Author=Douglas Coupland

&    7      7         0  & -9

!   K ;   . 2       . 2      ,<   -   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.1 DATA DRIVEN TESTING 7

  9

Setting the properties with Groovy

     
           
  7   7 
3        . ? &      3       

   :    ? &   7  7          

6
   
? &     

  . 2    
 ? & 
- -  
 9

// init properties
def props = new Properties();
props.load( new FileInputStream( "test-input.properties" ));

// get target step


def step = testRunner.testCase.getTestStepByName( "Properties" );

// assign all properties


def names = props.propertyNames();
while( names.hasMoreElements() )
{
def name = names.nextElement();
step.setPropertyValue( name, props.getProperty( name ));
}

.          


          
 70  7 & 
'  
   
  3     9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.1 DATA DRIVEN TESTING 8

539 .   ( ' & . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.2 TEMPLATE DRIVEN TESTING 9

1.12.2 Template Driven Testing


......................................................................................................................................

Template Driven Testing


.   (  
  3   (  (  
   . 2     
               3    . 3  
  3 
(  ( . 
3            3    "  3 
     . 2              "  

.       3    (  ( 3    9


 2     ?       3           
. , 23 
   3 
      
 2   ?    
        0  &    . 2   
 2  ?       . 2    "         "  


           
/ 
K

Read external values

. 
3           7   37       
. , 23 -                   
   3   7J
E1B7

def list = []
new File( "testdata.txt" ).eachLine { line -> list.add( line ) }

log.info( "Read " + list.size() + " test values.." )

context.setProperty( "values", list )


context.setProperty( "index", 0 )

  
           . , 23 
   3 

77     

Init properties with test values

.          


       0  & 7 7  

def values = context.getProperty( "values" )


def index = context.getProperty( "index" );

def str = values[index]

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.2 TEMPLATE DRIVEN TESTING 10

def ix = str.indexOf( "," )


def author = str.substring( 0, ix )

def props = testRunner.testCase.getTestStepByName( "Properties" )


props.setPropertyValue( "Author", author )

log.info( "set author to [" + author + "]" )

         0  .    ,<      
9
 .                   <  
 . <     "  
 .              7, 2 7  

Validate and move to next

.  "     


    3              
 ;          3   3     "     3 

def values = context.getProperty( "values" )


def index = context.getProperty( "index" );

def str = values[index]


def ix = str.indexOf( "," )

def props = testRunner.testCase.getTestStepByName( "Properties" )


def resultCount = props.getPropertyValue( "ResultCount" )
def count = str.substring( ix+1 )
def author = props.getPropertyValue( "Author" )

if( count > resultCount )


{
throw new Exception( "not enough hits for author [" + author +
"], expected " + count + ", got " + resultCount )
}
else
{
log.info "got " + resultCount + " hits for [" + author + "], required " + count
if( ++index < values.size() )
{
context.setProperty( "index", index )
testRunner.gotoStepByName( "Init Run" )
}
else
{
log.info "Finished TestCase, tested " + values.size() + " values"
}
}

Running the TestCase

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.2 TEMPLATE DRIVEN TESTING 11

  
   

   3

coupland,150
king,150
shakespeare,150

  


    ? 
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.2 TEMPLATE DRIVEN TESTING 12

. 

    % .      . 2  O         
      AO              

539   ' & . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.2 TEMPLATE DRIVEN TESTING 13

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.3 INTERACTIVE TESTING 14

1.12.3 Interactive Testing


......................................................................................................................................

Interactive Web Service Testing


 
 ? . &                 
       
  3       "                      
   :  
. 2              
  3       . 2       4 6"         
      '   
. & 9
  0  &  
   
  ? &  
    

  0  .                  <  


  ,<   &      
  0  .    
    
   
  ? &    
  

Properties
. 
    9
 " 9       
 "/ % 9    4    
 "+" 9          

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.3 INTERACTIVE TESTING 15

Groovy Input

. 
      "         9

// create dialog
def dialog = com.eviware.soapui.support.UISupport.createConfigurationDialog( "Amazon
Query" );
dialog.addTextField( "Author", "The Author to search on" );

// init values and show


def map = new java.util.HashMap();
map.put( "Author", "" );

if( dialog.show( map ))


{
// get target step
def step = testRunner.testCase.getTestStepByName( "Properties" );

// assign
step.setPropertyValue( "Author", map.get( "Author" ));
}
else testRunner.cancel( "No author to search on!" );

'  
           
          
?  0  & 

Search Args Transfer

. &  


.     E          &   (    
    -        ?  0     &  ,<   

#0  3   C  &   (   9

declare namespace ns='http://webservices.amazon.com/AWSECommerceService/2006-03-08';


//ns:SubscriptionId/text()

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.3 INTERACTIVE TESTING 16

      

declare namespace ns='http://webservices.amazon.com/AWSECommerceService/2006-03-08';


//ns:Author/text()

)&  


,<   &     
 #$%*

Using Property Replacement

    AQ         ${propertyName}  3   


   0  -3     
         7&  
.  7  
     
<  9

<ns:ItemSearch>
<ns:SubscriptionId>${SubscriptionId}</ns:SubscriptionId>
<ns:Request>
<ns:SearchIndex>Books</ns:SearchIndex>
<ns:Author>${Author}</ns:Author>
</ns:Request>
</ns:ItemSearch>

.          &       


    <   :    
 )            <      *

Search Request

. 
  <     9

<soapenv:Envelope
xmlns:ns="http://webservices.amazon.com/AWSECommerceService/2006-03-08"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns:ItemSearch>
<ns:SubscriptionId>?</ns:SubscriptionId>

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.3 INTERACTIVE TESTING 17

<ns:Request>
<ns:SearchIndex>Books</ns:SearchIndex>
<ns:Author>?</ns:Author>
</ns:Request>
</ns:ItemSearch>
</soapenv:Body>
</soapenv:Envelope>

Result Transfer

.  3                  ?  0  7, 2 7
  
 
#0  3  9

declare namespace
ns1='http://webservices.amazon.com/AWSECommerceService/2006-03-08';
//ns1:TotalResults/text()

Groovy Display Result

. 
           9

// get target step


def step = testRunner.testCase.getTestStepByName( "Properties" );
com.eviware.soapui.support.UISupport.showInfoMessage(
"Got " + step.getPropertyValue( "ResultCount" ) + " hits for author [" +
step.getPropertyValue( "Author" ) + "]" );

Running the TestCase

, 
 . 2     
   
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.3 INTERACTIVE TESTING 18

   


 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.3 INTERACTIVE TESTING 19

Summary

. 3                


  3    
       <        )N* 60-%       
     6  
   "      8 *

539 ' & &   . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 20

1.12.4 Surveillance Testing


......................................................................................................................................

Surveillance Testing for Web Services


&    
                    
  
 "   
                 
3       ;  &  % 6    
          
  
                   

Creating the tests


.                  L6 '& ) L6  
 "* .    9
  7
2 7 . 2                     
        " .    
      
E ?  
     % .    % . ##  ##             

   .0&    


  ABB . % .    &  & 
     
    OBBB <   
. 
   
       


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 21

Running Surveillance Test from the command line

6      


    
% 6   :  "      "  
   '           3        

   . 2          :    9

testrunner.bat "C:\Documents and Settings\ole.matzura\My


Documents\jbossws-soapui-project.xml"
-s"Organization Tests" -c"getContactInfo Test" -r

.    


  9

SoapUI SNAPSHOT TestCase Runner


10:47:36,703 INFO [SoapUITestCaseRunner] setting projectFile to [C:\Documents and
Settings\ole.matzura\My Documents\jbossws-soapui-project.xml]
10:47:36,703 INFO [SoapUITestCaseRunner] setting testSuite to [Organization Tests]
10:47:36,703 INFO [SoapUITestCaseRunner] setting testCase to [getContactInfo Test]
10:47:37,284 INFO [WsdlProject] Loaded project from [C:\Documents and
Settings\ole.matzura\My Documents\jbossws-soapui-project.xml]
10:47:38,616 INFO [SoapUITestCaseRunner] Running soapui tests in project [jbossws]
10:47:38,616 INFO [SoapUITestCaseRunner] Running soapui suite [Organization Tests],
runType = SEQUENTIAL
10:47:38,626 INFO [SoapUITestCaseRunner] Running soapui testcase [getContactInfo
Test]
10:47:38,636 INFO [SoapUITestCaseRunner] runing step [Groovy Script - init boss]

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 22

10:47:39,176 INFO [SoapUITestCaseRunner] runing step [Properties]


10:47:39,176 INFO [SoapUITestCaseRunner] runing step [Transfer Values - set boss]
10:47:39,557 INFO [SoapUITestCaseRunner] runing step [request step]
Retrieving document at
'http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization?wsdl'.
10:47:40,398 INFO [SchemaUtils] Loading schema types from
[http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization?wsdl]
10:47:40,398 INFO [SchemaUtils] Getting schema
http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization?wsdl
10:47:40,568 INFO [SoapUITestCaseRunner] Assertion [Schema Compliance] has status
VALID
10:47:40,568 INFO [SoapUITestCaseRunner] runing step [Groovy Script]
10:47:40,689 INFO [log] boss name matched [testsd1143708459106]
10:47:40,689 INFO [SoapUITestCaseRunner] Finished running soapui testcase
[getContactInfo Test], time taken: 1065ms, status: FINISHED
10:47:40,689 INFO [SoapUITestCaseRunner] Skipping testcase [getContactInfo
LoadTests], filter is [getContactInfo Test]
10:47:40,689 INFO [SoapUITestCaseRunner] soapui suite [Organization Tests] finished
in 2073ms

SoapUI SNAPSHOT TestCaseRunner Summary


-----------------------------
Time Taken: 2070ms
Total TestSuites: 1
Total TestCases: 1
Total TestSteps: 5
Total Request Assertions: 1
Total Failed Assertions: 0
Total Exported Results: 0

%"   
 % .     9

loadtestrunner.bat "C:\Documents and Settings\ole.matzura\My


Documents\jbossws-soapui-project.xml"
-s"Organization Tests" -c"getContactInfo LoadTests" -r

0 
 
9

SoapUI 1.5beta2 LoadTestRunner


21:16:07,912 INFO [SoapUILoadTestRunner] setting projectFile to [C:\Documents and
Settings\ole.matzura\My Documents\j..
21:16:07,932 INFO [SoapUILoadTestRunner] setting testSuite to [Organization Tests]
21:16:07,942 INFO [SoapUILoadTestRunner] setting testCase to [getContactInfo
LoadTests]
21:16:09,134 INFO [WsdlProject] Loaded project from [C:\Documents and
Settings\ole.matzura\My Documents\jbossws-soapu
21:16:11,458 INFO [SoapUILoadTestRunner] Skipping testcase [getContactInfo Test],
filter is [getContactInfo LoadTests
21:16:11,458 INFO [SoapUILoadTestRunner] Running LoadTest [LoadTest10]
21:16:11,848 INFO [SoapUILoadTestRunner] LoadTest [LoadTest10] progress: 0.0
21:16:12,850 INFO [SoapUILoadTestRunner] LoadTest [LoadTest10] progress: 0.0144
.. etc ..
21:16:54,399 INFO [SoapUILoadTestRunner] LoadTest [LoadTest10] progress: 0.9452
21:16:55,391 INFO [SoapUILoadTestRunner] LoadTest [LoadTest10] progress: 0.9744
21:16:56,392 INFO [SoapUILoadTestRunner] LoadTest [LoadTest10] finished with status
FINISHED
21:16:56,392 INFO [SoapUILoadTestRunner] Exporting log and statistics for LoadTest

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 23

[LoadTest10]
21:16:56,512 INFO [SoapUILoadTestRunner] Exported 1 log items to
[LoadTest10-log.txt]
21:16:56,512 INFO [SoapUILoadTestRunner] Exported 0 error results
21:16:56,512 INFO [SoapUILoadTestRunner] Exported 2 statistics to
[LoadTest10-statistics.txt]
21:16:56,602 INFO [SoapUILoadTestRunner] Running LoadTest [LoadTest25]
21:16:57,113 INFO [SoapUILoadTestRunner] LoadTest [LoadTest25] progress: 0.0046
21:16:58,135 INFO [SoapUILoadTestRunner] LoadTest [LoadTest25] progress: 0.0348
.. etc ..
21:17:37,742 INFO [SoapUILoadTestRunner] LoadTest [LoadTest25] progress: 0.9506
21:17:38,773 INFO [SoapUILoadTestRunner] LoadTest [LoadTest25] progress: 0.9748
21:17:39,845 INFO [SoapUILoadTestRunner] LoadTest [LoadTest25] finished with status
FINISHED
21:17:39,865 INFO [SoapUILoadTestRunner] Exporting log and statistics for LoadTest
[LoadTest25]
21:17:40,095 INFO [SoapUILoadTestRunner] Exported 1 log items to
[LoadTest25-log.txt]
21:17:40,095 INFO [SoapUILoadTestRunner] Exported 0 error results
21:17:40,095 INFO [SoapUILoadTestRunner] Exported 2 statistics to
[LoadTest25-statistics.txt]
21:17:40,105 INFO [SoapUILoadTestRunner] soapui suite [Organization Tests] finished
in 88647ms

Setting up the Luntbuild Project

(           & C


  ;     7
  7   

  
9

%
         :9

2     G2& C &    )       :          
3                    *9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 24

2         ,                
      ,  3  73 +27 ,      
 + 

2             


 )  3     

   
              
*

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 25

Run the Surveillance Tests

?  "    
         )  
    
    
  7& 7       
*9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 26

2"     %   6     . &  )          
      . &        *9

.              7  


7 "    
9

?  "    
         "   %   6       
       9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.12.4 SURVEILLANCE TESTING 27

2"             9

Request Step,min,max,avg,last,cnt,tps,bytes,bps,err
request step,3,1189,95.25,76,5000,262.45,2160000,84454,0
Total:,3,1189,95.25,76,5000,262.45,2160000,84454,0

Summary

.     < "      2  . 
    
     
 ' &                 
    
       

539 ' & 2 . 


 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13 TOOL INTEGRATIONS 28

1.13 Tool Integrations


......................................................................................................................................

Tool Integrations
   
       ;  &  ' & . J   
 
8
A + 1  
            3 

'&(%     :


E 8%  
  '&  6  0       
1     .20   
  
    "  
     )L# 0/0 * \      "  
              " 
   3    
   
 
    

Configuration

6    


                   ) 
     *     
   7
  . 7      
 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13 TOOL INTEGRATIONS 29

) 
    
       
  *

539 2 ?  .  ' &

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.1 CODE GENERATION 30

1.13.1 Code Generation


......................................................................................................................................

Code Generation Tools for Web Services


. 

        
           .
      
    9 L6 '& '&.  L6 '& '&2   L# ,02 
L# '&  3 A#  3 E  2#C E#  #C A#  ;    #6  E#  L#6 E#  ?& E#
 5-. EB 
-  
         

  
    

     


      "             
     
)'&(% ,% 5    *   
   

  "
            
      3     '&(% 

  '&(%                    
 
  '&(%   77 '&(%  
     '&(%      3  
'&(%            '&(% 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.1 CODE GENERATION 31

Custom Arguments for Code Generation

 
    72  
7   
      
   "
) *  3                  )   
9 * . 
 
  #C 
      
 :     ' ? 
 9

Running a tool

;    


 <     
 7? 7         

         "    ( 
  3  72 7
         
 

     + 
  
       . 
           
 

      ) 


   * . 

     
         L'&(0 '&2  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.1 CODE GENERATION 32

JBossWS WSTools Integration

Tool Version(s) Documentation Installation / Usage

JBossWS wstools versions 1.0.X JBossWS User Guide Install the latest JBossWS stack
and install/configure as required.
Specify the directory containing
the wstools script in the Tool
Integrations settings dialog. The
dialog has a "Show Config"
button that displays the wstools
config file generated for the
current settings.

JBossWS WSConsume Integration

Tool Version(s) Documentation Installation / Usage

JBossWS wstools versions 1.0.X JBossWS User Guide Install the latest JBossWS 1.2 or
newer stack and install/configure
as required. Specify the directory
containing the WSTools script in
the Tool Integrations settings
dialog. The dialog has a "Show
Config" button that displays the
WSTools config file generated for
the current settings.

JWSDP JAX-RPC/wscompile Integration

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.1 CODE GENERATION 33

Tool Version(s) Documentation Installation / Usage

JWSDP JAX-RPC / WSCompile , tested with versions 1.6 and 2.0 WSCompile Install the desired JWSDP
tested with versions 1.6 and 2.0 version and install/configure as
required. Specify the directory
containing the WSCompile script
in the Tool Integrations settings
dialog.

JWSDP JAX-WS WSImport

Tool Version(s) Documentation Installation / Usage

JWSDP JAX-WS / WSImport , tested with versions 1.6 and 2.0 WSImport Install the desired JWSDP
tested with versions 1.6 and 2.0 version and specify the jaxWS /
bin directory in the soapUI Tool
Integrations settings

Apache Axis 1.X

Tool Version(s) Documentation Installation / Usage

Apache Axis 1.X tested with versions 1.2.1, 1.3 wsdl2java Install Axis 1.X and specify the
and 1.4 installation directory in the
soapUI Tool Integrations settings

Apache Axis 2

Tool Version(s) Documentation Installation / Usage

Apache Axis 2 tested with 0.9X and 1.0 wsdl2java Install Axis 2 and specify the
installation directory in the
soapUI Tool Integrations settings

Apache CXF 2.X

Tool Version(s) Documentation Installation / Usage

Apache CXF 2.0 tested with 2.0.1 wsdl2java Install CXF and specify the
installation directory in the
soapUI Tool Integrations settings

XFire 1.X

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.1 CODE GENERATION 34

Tool Version(s) Documentation Installation / Usage

XFire 1.X WsGen tested with 1.X WsGen Install XFire 1.X and specify the
installation directory in the
soapUI Tool Integrations settings

Oracle wsa

Tool Version(s) Documentation Installation / Usage

Oracle wsa.jar tested with latest JDeveloper Oracle Web Services (PDF) Install JDeveloper and specify
release <jdeveloper-root>/webservices/lib
in soapUI Tool Integrations
settings

XMLBeans 2.x

Tool Version(s) Documentation Installation / Usage

XMLBeans 2.X tested with 2.2.0 scomp Install XmlBeans 2.X and specify
the installation directory in the
soapUI Tool Integrations settings

JAXB 2.x

Tool Version(s) Documentation Installation / Usage

JWSDP JAXB 2.0 tested with JWSDP 2.0 xjc Install JWSDP as required and
specify the jaxb\bin installation
directory in the soapUI Tool
Integrations settings

GSoap 2.X

Tool Version(s) Documentation Installation / Usage

GSoap 2.X tested with GSoap 2.7 on win32 wsdl2h , soapcpp2 Install GSoap as required and
specify the installation directory in
the soapUI Tool Integrations
settings

.NET 2.0

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.1 CODE GENERATION 35

Tool Version(s) Documentation Installation / Usage

.NET 2.0 .NET 2.0 wsdl.exe Install Visual Studio and .NET 2.0
and specify the directory
containing wsdl.exe in the soapUI
Tool Integrations settings

539   .20$

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.2 APACHE TCPMON 36

1.13.2 Apache TCPMon


......................................................................................................................................

Apache TcpMon Integration for testing Web Services


.   . $       7  7   /..0    
    &;0
<       
  (      . $        
         
  . &


   E   
      9
A C    .    :    . $     
E C    $           3    
   .
 
 
 
9

.  
   
  9
     
     . $   "
 
        . $     
              
    . $
3
% 
   
   . $   
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.2 APACHE TCPMON 37

                     " . $   
    )         *9

 
       &;0 <   
7 37 
 . $    
 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.13.2 APACHE TCPMON 38

539 2  % .

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14 COMMANDLINE TOOLS 39

1.14 CommandLine Tools


......................................................................................................................................

soapUI CommandLine tools


       
      
. 2   % . 

Tool Description

SoapUITestCaseRunner Runs specified TestCases and reports/exports results as configured



SoapUILoadTestRunner Runs specified LoadTests and reports/exports results as configured

SoapUIMockServiceRunner Runs specified MockServices

SoapUIToolRunner Runs any of the configured Code Generation tools for specified
project and interface

soapUI Maven 1.X/2.X plug-ins Allows execution of the above two from within a Maven 1.X/2.X build
environment

539 & . 2 ,       

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 40

1.14.1 TestCase Runner


......................................................................................................................................

SoapUITestCaseRunner
.       com.eviware.soapui.tools.SoapUITestCaseRunner  
 "       :   
         9

switch description

e The endpoint to use when invoking test-requests, overrides the


endpoint set in the project file

h The host:port to use when invoking test-requests, overrides only the
host part of the endpoint set in the project file

s The TestSuite to run, used to narrow down the tests to run

c The TestCase to run, used to narrow down the tests to run

u The username to use in any authentications, overrides any username
set for any TestRequests

p The password to use in any authentications, overrides any password
set for any TestRequests

w Sets the WSS password type, either 'Text' or 'Digest'

d The domain to use in any authentications, overrides any domain set
for any TestRequests

r Turns on printing of a small summary report (see below)

f Specifies the root folder to which test results should be exported (see
below)

j Turns on exporting of JUnit-compatible reports, see below

a Turns on exporting of all test results, not only errors

o Opens the generated report in a browser (soapUI Pro only)

i Enables soapUI UI-related components.

t Sets the soapui-settings.xml file to use

x Sets project password for decryption if project is encrypted

v Sets password for soapui-settings.xml file

D Sets system property with name=value

G Sets global property with name=value

P Sets project property with name=value

g Sets the output to include Coverage HTML reports ( soapUI Pro only )

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 41

.              


       3  8

testrunner.bat -hlocalhost:8080 -a -fresults c:\projects\my-soapui-project.xml

             :3 


       3    
    7  7  )        *

Launch Dialog

C

              7%  % . , 7
     0: . &   . 2    9

.                       :   
       )         *  '  
 
. ,           
         9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 42

.                 


       
      3   

JUnit Integration

       "         L   8

public void testRunner() throws Exception


{
SoapUITestCaseRunner runner = new SoapUITestCaseRunner();
runner.setProjectFile( "src/dist/sample-soapui-project.xml" );
runner.run();
}

. runner.run()      3                

  +   
  . 2        9

public void testTestCaseRunner() throws Exception


{
WsdlProject project = new WsdlProject( "src/dist/sample-soapui-project.xml"
);

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 43

TestSuite testSuite = project.getTestSuiteByName( "Test Suite" );


TestCase testCase = testSuite.getTestCaseByName( "Test Conversions" );

// create empty properties and run synchronously


TestRunner runner = testCase.run( new PropertiesMap(), false );
assertEquals( Status.FINISHED, runner.getStatus() );
}

Reporting and Exporting Functional Web Service Tests

. & . 2 ,      


     
     
L   3   
 :       
3   
 
             9

testrunner.bat jbossws-soapui-project.xml -stest -ctesting -r -a -fmyresults

   


  9

SoapUI 1.5beta2 TestCase Runner


12:33:10,042 INFO [SoapUITestCaseRunner] setting projectFile to
[jbossws-soapui-project.xml]
12:33:10,042 INFO [SoapUITestCaseRunner] setting testSuite to [test]
12:33:10,042 INFO [SoapUITestCaseRunner] setting testCase to [testing]
12:33:10,583 INFO [WsdlProject] Loaded project from [jbossws-soapui-project.xml]
12:33:11,915 INFO [SoapUITestCaseRunner] Running soapui tests in project [jbossws]
12:33:11,915 INFO [SoapUITestCaseRunner] Running soapui suite [test], runType =
SEQUENTIAL
12:33:11,925 INFO [SoapUITestCaseRunner] Running soapui testcase [testing]
12:33:11,935 INFO [SoapUITestCaseRunner] runing step [Groovy Script - init boss]
12:33:12,335 INFO [SoapUITestCaseRunner] runing step [Properties]
12:33:12,335 INFO [SoapUITestCaseRunner] runing step [Transfer Values - set boss]
12:33:12,716 ERROR [SoapUITestCaseRunner] Transfer Values - set boss failed,
exporting to [myresults\test\testing\Transfer-FAILED.txt]
12:33:12,716 INFO [SoapUITestCaseRunner] runing step [request step] Retrieving
document at 'http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization?wsdl'.
12:33:13,407 INFO [SchemaUtils] Loading schema types from
[http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization?wsdl]
12:33:13,407 INFO [SchemaUtils] Getting schema
http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization?wsdl
12:33:13,787 INFO [SoapUITestCaseRunner] Assertion [Schema Compliance] has status
VALID
12:33:13,807 INFO [SoapUITestCaseRunner] Finished running soapui testcase [testing],
time taken = 1882ms
12:33:13,807 INFO [SoapUITestCaseRunner] Skipping testcase [testcase2], filter is
[testing]
12:33:13,807 INFO [SoapUITestCaseRunner] Skipping testcase [Copy of testing], filter
is [testing]
12:33:13,807 INFO [SoapUITestCaseRunner] Skipping testcase [Copy of Copy of
testing], filter is [testing]
12:33:13,807 INFO [SoapUITestCaseRunner] soapui suite [test] finished in 1892ms

SoapUI 1.5beta2 TestCaseRunner Summary


-----------------------------
Time Taken: 1895ms
Total TestSuites: 1

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 44

Total TestCases: 1
Total TestSteps: 4
Total Request Assertions: 1
Total Failed Assertions: 0
Total Exported Results: 4

6       3        3   -a    3    
   C 3      ,<   . &    ) 
   *9

Status: OK
Time Taken: 55
Size: 448
Timestamp: Sun Mar 12 12:45:57 CET 2006
TestStep: request step
----------------------------------------------------
Encoding: UTF-8
Endpoint: http://lpt-olma:8080/ws4ee-samples-server-ejb/Organization
Username: asd
Password: dfsdfdsf
Domain: asdasd
---------------- Request ---------------------------
<soapenv:Envelope xmlns:sam="http://org.jboss.test.webservice/samples"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<sam:getContactInfo>
<String_1>testsd1141581163341</String_1>
</sam:getContactInfo>
</soapenv:Body>
</soapenv:Envelope>
---------------- Response --------------------------
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:getContactInfoResponse
xmlns:ns1="http://org.jboss.test.webservice/samples">
<result>The 'testsd1141581163341' boss is currently out of office, please
call again.</result>
</ns1:getContactInfoResponse>
</soapenv:Body>
</soapenv:Envelope>

-3         Y. & S Y. 2 S Y. &
5 S Y2 S Y&  S3         3      7. & 
A . 2  A ,<   & A B ;J37 )      . &    "   
     . 2 *     APO         3   
Y. & S Y. 2 S Y. & 5 S Y2 S   Y 2 SY-3 S
  3               )      *

JUnit Reports


 :    3           3    L   "
  3     2     . &     "
  . 2  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 45

  . 2   C 3    


 
9

testrunner.bat -j -ftestresults sample-soapui-project.xml

  7.-&. .  & 37          .       
   
  :    "9

<junitreport todir="./testresults">
<fileset dir="./testresults">
<include name="TEST-*.xml"/>
</fileset>
<report format="frames" todir="./testresults/html"/>
</junitreport>

'        9

-    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.1 TESTCASE RUNNER 46

' 

    
  1E     9

<target name="soapui-report">

<exec dir="C:\\Program Files\\eviware\\soapUI-1.7.5\\bin"


executable="cmd.exe">
<arg line="/c testrunner.bat -j -fg:\\reports
g:\\projects\\sample-soapui-project.xml"/>
</exec>

<junitreport todir="g:\\reports">
<fileset dir="g:\\reports">
<include name="TEST-*.xml"/>
</fileset>
<report format="frames" todir="g:\\reports\\html"/>
</junitreport>

</target>

539 & % . ,   ' & %  . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.2 LOADTEST RUNNER 47

1.14.2 LoadTest Runner


......................................................................................................................................

SoapUILoadTestRunner
. & % . ,         % .           
    
  34
   
 .         % .    
        % .       

.       com.eviware.soapui.tools.SoapUILoadTestRunner  


 "       :   
 % .           9

switch description

e The endpoint to use when invoking test requests, overrides the


endpoint set in the project file

h The host:port to use when invoking test requests, overrides only the
host part of the endpoint set in the project file

s The TestSuite to run, used to narrow down the tests to run

c The TestCase to run, used to narrow down the tests to run

l The LoadTest to run, used to narrow down which LoadTests to run

m Overrides the limit value set for the specified LoadTest(s)

n Overrides the thread-count value set for the specified LoadTest(s)

u The username to use in any authentications, overrides any username
set for any TestRequests

p The password to use in any authentications, overrides any password
set for any TestRequests

d The domain to use in any authentications, overrides any domain set
for any TestRequests

r Turns on exporting of a LoadTest statistics summary report (see
below)

f Specifies the root folder to which test results should be exported (see
below)

w Sets the WSS password type, either Text or Digest

t Sets the soapui-settings.xml file to use

x Sets project password for decryption if project is encrypted

v Sets password for soapui-settings.xml file

D Sets system property with name=value

G Sets global property with name=value


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.2 LOADTEST RUNNER 48

switch description

P Sets project property with name=value

.               


       
3  8

loadtestrunner.bat -ehttp://localhost:8080/services/MyService
c:\projects\my-soapui-project.xml

     % .        :3 


      

Launch Load Test Dialog

C

       % . ,      7%  ( 
7 
    0:+% .    9

.                       :   
       )         *  '  
 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.2 LOADTEST RUNNER 49

% . ,           


         9

.                 


       
      3   

Reporting and Exporting load tests

. & % . ,     


      
3   
 
 
            % .      % . 
%
   3  - ,    % .  %
  3  "    
    . 2   

loadtestrunner -stest -ctestcase4 -l"LoadTest 1" -r "C:\Documents and


Settings\ole.matzura\My Documents\jbossws-soapui-project.xml"

   


  9

SoapUI 1.5beta2 LoadTestRunner


15:31:50,397 INFO [SoapUILoadTestRunner] setting projectFile to [C:\Documents and
Settings\ole.matzura\
My Documents\jbossws-soapui-project.xml]
15:31:50,517 INFO [SoapUILoadTestRunner] setting testSuite to [test]
15:31:50,517 INFO [SoapUILoadTestRunner] setting testCase to [testcase3]
15:31:52,901 INFO [WsdlProject] Loaded project from [C:\Documents and
Settings\ole.matzura\My Documents\
jbossws-soapui-project.xml]
15:31:59,941 INFO [SoapUILoadTestRunner] Skipping testcase [testing], filter is
[testcase3]
15:31:59,941 INFO [SoapUILoadTestRunner] Skipping testcase [testcase2], filter is

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.2 LOADTEST RUNNER 50

[testcase3]
15:31:59,941 INFO [SoapUILoadTestRunner] Running LoadTest [LoadTest1]
15:32:00,141 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 0.0025
15:32:01,153 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 0.019533332
15:32:02,154 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 0.036383335
15:32:03,155 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 0.053066667
..etc..
15:32:57,944 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 0.9662167
15:32:58,956 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 0.9830833
15:32:59,977 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress: 1.0001
15:33:00,979 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] finished with status
FINISHED
15:33:00,979 INFO [SoapUILoadTestRunner] Exporting log and statistics for LoadTest
[LoadTest1]
15:33:01,039 INFO [SoapUILoadTestRunner] Exported 2 log items to [LoadTest
1-log.txt]
15:33:01,039 INFO [SoapUILoadTestRunner] Exported 0 error results
15:33:01,119 INFO [SoapUILoadTestRunner] Exported 2 statistics to [LoadTest
1-statistics.txt]
15:33:01,119 INFO [SoapUILoadTestRunner] Skipping testcase [Copy of Copy of
testing], filter is [testcase3]
15:33:01,119 INFO [SoapUILoadTestRunner] soapui suite [test] finished in 61178ms

. 3         3     % .  -  "  9

Request Step,min,max,avg,last,cnt,tps,bytes,bps,err
request step,1,407,17.63,26,11591,283.49,5192768,86696,0
Total:,1,407,17.63,26,11591,283.49,5192768,86696,0

539 & $",   ' & &  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.3 MOCKSERVICE RUNNER 51

1.14.3 MockService Runner


......................................................................................................................................

SoapUIMockServiceRunner
.       com.eviware.soapui.tools.SoapUIMockServiceRunner 
  "       :   
 $"&       9

switch description

m The name of the MockService to run



p The local port to listen on, overrides the port configured for the
MockService

a The local path to listen on, overrides the path configured for the
MockService

b Turns off blocking when mockRunner has been started, which is
required when wanting to run the MockServiceRunner with (for
example) nohup or as a Windows Service

s The soapui-settings.xml file to use

x Sets project password for decryption if project is encrypted

v Sets password for soapui-settings.xml file

D Sets system property with name=value

G Sets global property with name=value

P Sets project property with name=value

f Sets the output folder to export results to ( soapUI Pro only )

o Opens the Coverage Report in a browser (with the -g option) ( soapUI
Pro only )

g Sets the output to include Coverage HTML reports ( soapUI Pro only )

.      "        
$"&    
 3  8

mockservicerunner.bat -m"IOrderService MockService" "C:\Documents and Settings\Ole


Matzura\My Documents\demo2-soapui-project.xml"

     $"&  9

SoapUI SNAPSHOT MockService Runner


15:08:15,515 INFO [SoapUI] Added
[file:/C:/workspace/core/ext/mysql-connector-java-5.0.4-bin.jar] to classpath

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.3 MOCKSERVICE RUNNER 52

15:08:16,375 INFO [SoapUI] initialized soapui-settings from [soapui-settings.xml]


15:08:16,406 INFO [WsdlProject] Loaded project from [C:\Documents and Settings\Ole
Matzura\My Documents\demo2-soapui-project.xml]
15:08:17,609 INFO [SoapUIMockServiceRunner] Running MockService [IOrderService
MockService] in project [demo]
15:08:17,609 INFO [SoapUIMockServiceRunner] Press any key to terminate
15:08:17,953 INFO [MockEngine] Started mockService [IOrderService MockService] on
port [8081] at path [/mockIOrderService]
15:08:17,953 INFO [SoapUIMockServiceRunner] MockService started on port 8081 at
path [/mockIOrderService]
Progress: 1 - Loading definition from cache
15:09:18,625 DEBUG [WsdlContext] Loading definition from cache
15:09:18,640 DEBUG [WsdlLoader] Returning baseInputSource
[http://evitop:8080/OrderServiceImpl?wsdl]
15:09:18,687 DEBUG [WsdlLoader] Returning baseURI
[http://evitop:8080/OrderServiceImpl?wsdl]
Retrieving document at 'http://evitop:8080/OrderServiceImpl?wsdl'.
15:09:18,796 DEBUG [WsdlContext] Loaded definition: ok
15:09:18,812 INFO [SchemaUtils] Added default schema from
/C:/workspace/core/target/classes/xop.xsd with targetNamespace
http://www.w3.org/2004/08/xop/include
15:09:18,890 INFO [SchemaUtils] Added default schema from
/C:/workspace/core/target/classes/XMLSchema.xsd with targetNamespace
http://www.w3.org/2001/XMLSchema
15:09:18,890 INFO [SchemaUtils] Added default schema from
/C:/workspace/core/target/classes/xml.xsd with targetNamespace
http://www.w3.org/XML/1998/namespace
15:09:18,890 INFO [SchemaUtils] Added default schema from
/C:/workspace/core/target/classes/swaref.xsd with targetNamespace
http://ws-i.org/profiles/basic/1.1/xsd
15:09:18,890 INFO [SchemaUtils] Added default schema from
/C:/workspace/core/target/classes/xmime200505.xsd with targetNamespace
http://www.w3.org/2005/05/xmlmime
15:09:18,890 INFO [SchemaUtils] Added default schema from
/C:/workspace/core/target/classes/xmime200411.xsd with targetNamespace
http://www.w3.org/2004/11/xmlmime
15:09:18,890 WARN [SchemaUtils] Failed to open schemaDirectory
[C:\workspace\soapui-pro\schemas]
15:09:18,890 INFO [SchemaUtils] Loading schema types from
[http://evitop:8080/OrderServiceImpl?wsdl]
15:09:18,890 INFO [SchemaUtils] Getting schema
http://evitop:8080/OrderServiceImpl?wsdl
15:09:18,906 INFO [SchemaUtils] schema for [http://www.example.org/OrderService/]
contained [{}] namespaces
15:09:19,359 INFO [SoapUIMockServiceRunner] Handled request 1; [purchase] with
[MockResponse 1] in [9ms] at [2007-04-03 15:09:17.968]
15:09:20,734 INFO [SoapUIMockServiceRunner] Handled request 2; [purchase] with
[MockResponse 2] in [0ms] at [2007-04-03 15:09:20.734]
15:09:21,296 INFO [SoapUIMockServiceRunner] Handled request 3; [purchase] with
[MockResponse 1] in [0ms] at [2007-04-03 15:09:21.296]
15:09:21,937 INFO [SoapUIMockServiceRunner] Handled request 4; [purchase] with
[MockResponse 2] in [0ms] at [2007-04-03 15:09:21.937]
15:09:22,343 INFO [SoapUIMockServiceRunner] Handled request 5; [purchase] with
[MockResponse 1] in [0ms] at [2007-04-03 15:09:22.343]

'     "        .       


  
"          9

15:20:30,703 INFO [MockEngine] Stopping connector on port 8081

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.3 MOCKSERVICE RUNNER 53

15:20:30,703 INFO [MockEngine] No more connectors.. stopping server


15:20:30,703 INFO [SoapUIMockServiceRunner] MockService stopped, handled 7 requests
15:20:30,703 INFO [SoapUIMockServiceRunner] time taken: 733117ms

539 & .,  


 
  '&(%

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.4 TOOL RUNNER 54

1.14.4 Tool Runner


......................................................................................................................................

SoapUIToolRunner
. & .,          
  2 ?      
     
   

.       com.eviware.soapui.tools.SoapUIToolRunner    " 


     :   
     
        

  9

switch description

i the interface for which the tool should be run



t the tool(s) to run, a comma-separated list with the following tokens;
axis1, axis2, dotnet, gsoap, jaxb, wstools, wsconsume, ora, wsi,
wscompile, wsimport, cxf, xfire or xmlbeans

s the soapui-settings.xml file to use (usually the one in the soapUI bin
directory)

x Sets project password for decryption if project is encrypted

v Sets password for soapui-settings.xml file

D Sets system property with name=value

G Sets global property with name=value

.             


      
3  8

toolrunner.bat -iAWSECommerceServicePortType -taxis1


G:\test\Amazon-soapui-project.xml

     3 A# 


            

  9

SoapUI 1.6 beta1 Tool Runner


02:27:02,386 DEBUG [SoapUI] initialized soapui-settings from [soapui-settings.xml]
02:27:02,506 INFO [WsdlProject] Loaded project from
[G:\test\Amazon-soapui-project.xml]
02:27:08,765 INFO [SoapUIToolRunner] Running tools for project [Amazon]
directory: C:\java\axis-1_4\lib
command: java -cp
activation.jar;axis-ant.jar;axis.jar;bsf.jar;castor-0.9.5.2.jar;commons-codec-1.2.jar;
commons-discovery-0.2.jar;commons-httpclient-3.0-rc2.jar;commons-logging-1.0.4.jar;commons-net-1.0.0-dev.
httpunit.jar;ibmjsse.jar;javax.jms.jar;jaxrpc.jar;JimiProClasses.jar;junit-3.8.1.jar;log4j-1.2.8.jar;

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.14.4 TOOL RUNNER 55

mailapi_1_3_1.jar;saaj.jar;servlet.jar;wsdl4j-1.5.1.jar
org.apache.axis.wsdl.WSDL2Java -v -W -s -a
-H -T 1.2 -o g:\test\amazon
C:\DOCUME~1\OLE~1.MAT\LOCALS~1\Temp\tempdir8304.tmp\AWSECommerceService.wsdl
Parsing XML file:
C:\DOCUME~1\OLE~1.MAT\LOCALS~1\Temp\tempdir8304.tmp\AWSECommerceService.wsdl
Generating
g:\test\amazon\com\amazon\webservices\AWSECommerceService\_2006_05_17\CartGetRequest.java
...
Generating
g:\test\amazon\com\amazon\webservices\AWSECommerceService\_2006_05_17\deploy.wsdd
Generating
g:\test\amazon\com\amazon\webservices\AWSECommerceService\_2006_05_17\undeploy.wsdd
SoapUIToolRunner: Execution finished successfully
02:27:14,593 INFO [SoapUIToolRunner] time taken: 5814ms

.  3 A#


       
     9

539   J   

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15 IDE/TOOL PLUGINS 56

1.15 IDE/Tool Plugins


......................................................................................................................................

soapUI IDE and Tool Plugins


    
   
 + (-

Tool or IDE Functionality

Maven 1.X/2.X Provides goals/properties corresponding to each of the soapUI


command-line tools and its arguments

NetBeans 5.5/6.0 Provides full soapUI functionality from within the NetBeans IDE

IntelliJ IDEA 6+ Provides full soapUI functionality from within IntelliJ IDEA

Eclipse 3.2+ Provides full soapUI functionality from within Eclipse plus a soapUI
Project Nature for integrated browsing/viewing of eclipse/soapUI
projects in the Project Explorer.

JBossWS/JBossIDE 2.0.0+ Provides the same functionality as the standard Eclipse plug-in plus a
number of JBossWS-related wizards/dialogs/actions.

&  (-      + "  


       
0 +  &
     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1 MAVEN PLUGINS 57

1.15.1 Maven Plugins


......................................................................................................................................

soapUI maven plugins


    
   
' &       A3    E3 
 
  C      . &  + . 2   ' & % .   
 
     
        
  "     
  
       3   3   

,  9
   A# 

   E# 

539   A# 


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.1 MAVEN 1.X PLUGIN 58

1.15.1.1 Maven 1.X Plugin


......................................................................................................................................

soapUI maven 1.X plugin

Download soapUI Maven Plugin

0    
     
              
        

(          


   
   (        
   9

maven plugin:download -DgroupId=eviware -DartifactId=maven-soapui-plugin


-Dversion=1.6 -Dmaven.repo.remote=http://www.soapui.org/repository

            :38

<dependency>
<groupId>eviware</groupId>
<artifactId>maven-soapui-plugin</artifactId>
<version>1.7.6</version>
<type>plugin</type>
</dependency>

     


                  :   8

maven.repo.remote=http://www.ibiblio.org/maven,http://www.soapui.org/repository

soapUI Maven Plugin Usage

(       
    6     "    : 
  ${pom.artifactId}-soapui-project.xml       
 
maven.soapui.project  

,       

maven soapui:test

     

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.1 MAVEN 1.X PLUGIN 59

maven soapui:loadtest

. 
      :      . 2       . &      
     . &  +. 2  +% .      
maven.soapui.test.testsuite maven.soapui.test.testcase 
maven.soapui.test.loadtest        

      
               
. ,<     3  . 2         maven.soapui.test.XX   
 3  

maven soapui:test
-Dmaven.soapui.test.endpoint=http://somehost.com:8080/services/MyService

6             . ,<   3   
     
 . 2            . 2   
    

C 3       E . &      


      :       
 8

maven soapui:test -Dmaven.soapui.test.testsuite=TestSuite1


-Dmaven.soapui.test.endpoint=http://somehost.com:8080/services/MyService1

 

maven soapui:test -Dmaven.soapui.test.testsuite=TestSuite2


-Dmaven.soapui.test.endpoint=http://someotherhost.com:8080/services/MyService2

.                 & . 2 ,  
& . 2 ,      maven.soapui.report.XX   

Sample Outputs from the Maven plugin

/   3        


       
     

   :        9

maven soapui:test -Dmaven.soapui.project=sample-soapui-project.xml


__ __
| \/ |__ _Apache__ ___
| |\/| / _` \ V / -_) ' \ ~ intelligent projects ~
|_| |_\__,_|\_/\___|_||_| v. 1.0.2

build:start:

soapui:test:
[echo] Running soapUI project sample-soapui-project.xml with endpoint []
[java] SoapUI 2.5.1 TestRunner

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.1 MAVEN 1.X PLUGIN 60

[java] 23:57:56,258 INFO [SoapUITestCaseRunner] setting projectFile to


[sample-soapui-project.xml]
[java] 23:57:56,838 INFO [WsdlProject] Loaded project from
[sample-soapui-project.xml]
[java] 23:57:57,219 INFO [SoapUITestCaseRunner] Running soapui tests in project
[Sample Project]
[java] 23:57:57,219 INFO [SoapUITestCaseRunner] Running soapui suite [Test
Suite]
[java] 23:57:57,219 INFO [SoapUITestCaseRunner] Running soapui testcase [Test
Conversions]
[java] 23:57:57,219 INFO [SoapUITestCaseRunner] runing step [SEK to USD Test]
[java] Retrieving document at
'http://www.webservicex.net/CurrencyConvertor.asmx?WSDL'.
[java] 23:57:59,893 INFO [SchemaUtils] Loading schema types from
[http://www.webservicex.net/CurrencyConvertor.asmx?WSDL]
[java] 23:57:59,893 INFO [SchemaUtils] loading schema types from
http://www.webservicex.net/CurrencyConvertor.asmx?WSDL
[java] Assertion [Schema Compliance] has status VALID
[java] Assertion [XPath Match - check for less than 0.2] has status VALID
[java] Assertion [XPath Match - check for more than 0.1] has status VALID
[java] Assertion [SOAP Fault Assertion] has status VALID
[java] 23:58:01,025 INFO [SoapUITestCaseRunner] runing step [USD to SEK Test]
[java] Assertion [Schema Compliance] has status VALID
[java] Assertion [XPath Match - check for less than 8] has status VALID
[java] Assertion [XPath Match - check for more than 7] has status VALID
[java] Assertion [SOAP Fault Assertion] has status VALID
[java] 23:58:01,495 INFO [SoapUITestCaseRunner] Finished running soapui
testcase [Test Conversions], time taken = 4276ms
[java] 23:58:01,505 INFO [SoapUITestCaseRunner] Running soapui testcase [Test
XMethods Query]
[java] 23:58:01,505 INFO [SoapUITestCaseRunner] runing step [Test
getAllServiceNames]
[java] Assertion [XPath Match - check for Anagram Service] has status VALID
[java] 23:58:03,488 INFO [SoapUITestCaseRunner] runing step [Transfer values]
[java] 23:58:03,688 INFO [SoapUITestCaseRunner] runing step [Test
getServiceDetail]
[java] Assertion [XPath Match] has status VALID
[java] 23:58:03,949 INFO [SoapUITestCaseRunner] Finished running soapui
testcase [Test XMethods Query], time taken = 2444ms
[java] 23:58:03,959 INFO [SoapUITestCaseRunner] soapui suite [Test Suite]
finished in 6740ms
BUILD SUCCESSFUL
Total time: 10 seconds
Finished at: Sun Oct 02 23:58:04 CEST 2005

        9

maven soapui:loadtest -Dmaven.soapui.test.loadtest=LoadTest1


-Dmaven.soapui.report.folder=results
__ __
| \/ |__ _Apache__ ___
| |\/| / _` \ V / -_) ' \ ~ intelligent projects ~
|_| |_\__,_|\_/\___|_||_| v. 1.0.2

Attempting to download swingx-SNAPSHOT.jar.


build:start:

soapui:loadtest:
[echo] Running soapui project jbossws-soapui-project.xml with endpoint []

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.1 MAVEN 1.X PLUGIN 61

[java] SoapUI 2.5.1 LoadTestRunner


[java] 22:48:13,116 INFO [SoapUILoadTestRunner] setting projectFile to
[jbossws-soapui-project.xml]
[java] 22:48:13,116 INFO [SoapUILoadTestRunner] setting testSuite to [test]
[java] 22:48:13,116 INFO [SoapUILoadTestRunner] setting testCase to [testcase3]
[java] 22:48:13,647 INFO [WsdlProject] Loaded project from
[jbossws-soapui-project.xml]
[java] 22:48:14,818 INFO [SoapUILoadTestRunner] Skipping testcase [testing],
filter is [testcase3]
[java] 22:48:14,818 INFO [SoapUILoadTestRunner] Skipping testcase [testcase2],
filter is [testcase3]
[java] 22:48:14,818 INFO [SoapUILoadTestRunner] Running LoadTest [LoadTest1]
[java] 22:48:14,878 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.0
[java] 22:48:15,870 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.038
[java] 22:48:16,871 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.102
[java] 22:48:17,873 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.14
[java] 22:48:18,884 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.204
[java] 22:48:19,876 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.274
[java] 22:48:20,887 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.35
[java] 22:48:21,889 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.424
[java] 22:48:22,890 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.488
[java] 22:48:23,891 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.564
[java] 22:48:24,893 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] progress:
0.642
[java] 22:48:25,894 INFO [SoapUILoadTestRunner] LoadTest [LoadTest1] finished
with status FAILED
[java] 22:48:25,894 INFO [SoapUILoadTestRunner] Exporting log and statistics
for LoadTest [LoadTest1]
[java] 22:48:25,944 INFO [SoapUILoadTestRunner] Exported 36 log items to
[results\LoadTest1-log.txt]
[java] 22:48:26,265 INFO [SoapUILoadTestRunner] Exported 33 error results
[java] 22:48:26,265 INFO [SoapUILoadTestRunner] Exported 3 statistics to
[results\LoadTest1-statistics.txt]
[java] 22:48:26,265 INFO [SoapUILoadTestRunner] Skipping testcase [testcase4],
filter is [testcase3]
[java] 22:48:26,265 INFO [SoapUILoadTestRunner] soapui suite [test] finished in
11447ms
[java] 22:48:26,265 INFO [SoapUILoadTestRunner] 1 load tests failed:
[java] 22:48:26,265 INFO [SoapUILoadTestRunner] LoadTest1: Maximum number of
errors [30] exceeded for step [Groovy Script]
[java] 22:48:26,265 ERROR [SoapUILoadTestRunner]
com.eviware.soapui.support.SoapUIException: LoadTests failed

BUILD FAILED
File...... C:\Documents and
Settings\ole.matzura\.maven\cache\maven-soapui-plugin-1.5beta1\plugin.jelly
Element... ant:java
Line...... 104
Column.... 105
Java returned: 1
Total time: 18 seconds
Finished at: Sun Mar 12 22:48:26 CET 2006

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.1 MAVEN 1.X PLUGIN 62

539   A# 



 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.2 MAVEN 2.X PLUGIN 63

1.15.1.2 Maven 2.X Plugin


......................................................................................................................................

soapUI maven 2.X plugin

soapUI Maven Plugin Usage

0  
 
       E        :  
38

<pluginRepositories>
<pluginRepository>
<id>eviwarePluginRepository</id>
<url>http://www.eviware.com/repository/maven2/</url>
</pluginRepository>
</pluginRepositories>

.     
    3

<plugins>
<plugin>
<groupId>eviware</groupId>
<artifactId>maven-soapui-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<projectFile>sample-soapui-project.xml</projectFile>
<host>http://127.0.0.1:8181</host>
</configuration>
</plugin>
</plugins>

,       

mvn eviware:maven-soapui-plugin:test

   

mvn eviware:maven-soapui-plugin:loadtest

 $"& 

mvn eviware:maven-soapui-plugin:mock

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.1.2 MAVEN 2.X PLUGIN 64

. 
      :      . 2       . &      
     . &  +. 2  +% .       testSuite testCase 
loadTest        

Integrated Tools

  
    
  
             :
   "  
     

mvn eviware:maven-soapui-plugin:tool

    
     E      
     9

<plugins>
<plugin>
<groupId>eviware</groupId>
<artifactId>maven-soapui-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<projectFile>sample-soapui-project.xml</projectFile>
<testSuite>OleTest</testSuite>
<iface>IOrderService</iface>
<tool>wsi,axis1,axis2</tool>
<settingsFile>C:\workspace\core\soapui-settings.xml</settingsFile>
</configuration>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>

&                 3        '& 


   
 
    3 A  3 E      
  
       
  '&  

539   E# 



 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2 NETBEANS PLUGIN 65

1.15.2 NetBeans Plugin


......................................................................................................................................

soapUI NetBeans Plugin


.   56  0
           56  OO+QB

 
      
  ' &  :   &   EB
 
     : :     56  :         7  
5 
7         :   
 "   56  : 
/     9

Getting Started with WS Testing in Netbeans

(   56$  & C


   (     56  0
  
  
    & C
                & 
                   3 
?
& 
        56  0
     ?   .       
      ( "        56        

Creating a soapUI Project

     :   


    56  :  .   
  :   5 0: S &; S ' & . 
0:  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2 NETBEANS PLUGIN 66

 
7537          : 
    9
 & 
   '&(%   
 ? 
. &  + $"&    '&(%
 & 
 3 
  0:        

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2 NETBEANS PLUGIN 67

( 
              
    <  
    ;  :               56 
70: 7               5 
   
   
    9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2 NETBEANS PLUGIN 68

Log and Property Views

.      %
         'F   %
    
            56   " 9

.                        
     
 56  0  '   '  

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2 NETBEANS PLUGIN 69

Demonstration Movies

  56  QB $> + ; -&6 EB    56  


      ; -&6 
       9++   :  +(  _; -&6_ _56Q  .

            
        " 
56  9
   56  ( $ A        '&(%       
'&(%  60-%                 
   56  ( $ E        '&(%   $"
      '&(%         :         
$"             '&(%  60-%  
   56  ( $ 1        L# '& ' & 
 +        
539   
  56  0


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2 NETBEANS PLUGIN 70

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2.1 INSTALLATION 71

1.15.2.1 Installation
......................................................................................................................................

Installing the NetBeans Plugin in NetBeans 6.0


/   " 
          0
  56  QB8
 &    
      & C
     
 6     3 
        
       C    
    "       + 3   
 &  56     7. + 0
 7  
 &   7( 7      7 0
 7         
 

 ;      56           9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2.1 INSTALLATION 72

 5   7  7      56       
     
 
        
 
 L   72 7  
    
9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2.1 INSTALLATION 73

 . 
              7  7  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2.1 INSTALLATION 74

   ;J      


               
. +    8             
 "9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.2.1 INSTALLATION 75

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.3 INTELLIJ PLUGIN 76

1.15.3 IntelliJ Plugin


......................................................................................................................................

soapUI IntelliJ Plugin


.   L 0
           L (- 

 
      
  ' &  L  

-3 
   "         
  .' 9
  7   5 
7 .'         '"  5 
  ( 
. 
  7   %
7 .'        %
.    
   ( " 0            (-        
 /     9

2   
     7 A7 
     77 "

  
    L 

soapUI Intellij Plugin Installation

& L M  "    


   L 
       . +' &
          & C
  
 L 
  
    

     L 0?   
 <       8   

  3          3  9

-Xms128m
-Xmx512m
-XX:MaxPermSize=128m
-ea

Getting Started soapUI Tutorial

. 3 


?
&       L 0
     ?   .   
          ( "        L     
 

539 '"
   56  0


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4 ECLIPSE PLUGIN 77

1.15.4 Eclipse Plugin


......................................................................................................................................

soapUI eclipse-plugin
.     
                7   7
  EO       
     :          
                . 
  "   
&'._'. 
 
               
  
 
 
                "
;J ) "
 *

2     


         & C
 (  0
  

        9++  
+ +  + 3 )  *

0     


     
   

soapUI eclipse Update Site

             9++  


+ +  + 3    
    
   
 9
A & 7/ 7+7&     7+7C    7
E &  7&          7  
1 0  75 , &7           
   

D & C       
         
,   ?
&             ?  


K

The soapUI Perspective


;         0   
    '+;  0 +;

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4 ECLIPSE PLUGIN 78

2   
7  7     .      E  8
  7   5 
7      
  5 
  (    
      
  7   %
7      
  
         
5 
+  "                 
   "     +"   

;                


 '+&
G+; 2   
       
 

soapUI Preferences

$    &
         '+0  
   
8

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4 ECLIPSE PLUGIN 79

539   5     -  0




©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4.1 SOAPUI NATURE 80

1.15.4.1 soapUI Nature


......................................................................................................................................

soapUI Nature
.   5    
             L 
:

. 
3    " 
 7 7  9

Step 1: Enable soapUI Nature

&    


   L  :   
   5     :   9

  

     7&  ' & 7    :9

'    -  0: -3  G     "      :
  
 "    7  7      :  9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4.1 SOAPUI NATURE 81

Step 2: Create or Import a WSDL or WADL


!         '&(%  '(%    : ) 
 3     
' . 0: '&(% -*  :        : 
      7
'&(%7  7 '(%7  
'  
 '&(%  '(%    : 
 "      7   S  
  0:7

;    '&(%  '(%   7   7       
7   ' & 7 9

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4.1 SOAPUI NATURE 82

Step 3: Generate Code

5   
      7?  S 3 A#   7     
           

&              L        :

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4.1 SOAPUI NATURE 83

&  7? 7     " 3 ) 
  70 S   S

  . 7*           9

.
          L     )   K*

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.15.4.1 SOAPUI NATURE 84

).     "     3       :   .   
            *

Step 4: Implement, Deploy and Test your Web Services

  
  
  ' &             

  <   7 7


  "K

539 '"
 L6 '& . 

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.16 KEYBOARD SHORTCUTS 85

1.16 Keyboard shortcuts


......................................................................................................................................

Keyboard Shortcuts in soapUI


      "        "     

Global Actions

. 
            9

Keyboard Shortcut Functionality

F1 Shows online help.



Delete Deletes the selected item.

F2 Renames the selected item.

F9 Copies or Clones the selected item.

Enter Show the associated editor.

Main Menu Actions

. 
           8

Keyboard Shortcut Functionality

Ctrl N Creates a new soapUI project in the workspace.



Ctrl I Imports an existing project into the workspace.

Ctrl Tab Select next. Selects next window in the soapUI desktop.

Ctrl Alt P Preferences.

Ctrl Q Saves the entire workspace and exits soapUI.

Ctrl Alt Q Exits soapUI without saving anything.

Desktop Actions

. 
       "
     " 8

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.16 KEYBOARD SHORTCUTS 86

Keyboard Shortcut Functionality

Ctrl F4 Close Current. Closes the active window in the soapUI desktop

Ctrl Alt O Close Others. Closes all windows but the active window in the soapUI
desktop.

Ctrl Alt L Close All. Closes all windows in the soapUI desktop.

Ctrl Tab Select next. Selects next window in the soapUI desktop.

Project Actions

. 
       0:      5 


Keyboard Shortcut Functionality

Ctrl U Adds a new WSDL from an URL



Ctrl F Adds a new WSDL from a local File

Ctrl T Creates a new TestSuite

Ctrl S Saves the project

Ctrl Shift S Prompts to save the project to a new file

Interface Actions

. 
              5 


Keyboard Shortcut Functionality

Ctrl E Shows the Interface Endpoints dialog.



Ctrl W Validate the interface with the WS-I validation tools

Ctrl P Saves the entire WSDL and included and imported files to a local
directory

F5 Reloads the definition for this interface and its operations

Operation Actions

. 
       ;        5 


Keyboard Shortcut Functionality

Ctrl N Creates a new request for the Operation.

©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.16 KEYBOARD SHORTCUTS 87

Request Actions

. 
       ,<        5 


Keyboard Shortcut Functionality

Ctrl Alt A Adds the request to a TestCase

Working with Requests and Responses

. 
  
     "
  ,<   -8

Keyboard Shortcut Functionality

Alt Enter Submits the request to the specified endpoint.



Alt X Cancels a running submit.

Alt left/right arrow Move between element values

Alt O Changes the orientation of the request/response splitter

Ctrl Alt Tab Shift focus between request/response area.

Alt V Validate the contained messages' XML and against its operations
message definition.

Alt W (in the response editor) Validate the current request/response messages against the WS-I
Basic Profile (requires a response).

Ctrl D Delete line. Deletes the current Line in the XML Editor.

F3 Shows the Find/Replace Dialog.

Alt F Pretty-Prints the current XML

Ctrl S Prompts to save the contents of the editor to a file.

TestSuite Actions

. 
      . &       5 


Keyboard Shortcut Functionality

Ctrl N Creates a new TestCase.

TestCase Actions

. 
      . 2       5 


©2005 EVIWARE.COM • ALL RIGHTS RESERVED


1.16 KEYBOARD SHORTCUTS 88

Keyboard Shortcut Functionality

Ctrl N Creates a new LoadTest.



Ctrl Shift O Shows the LoadTest Options.

Working with TestCases

. 
  
     "
  . 2  -8

Keyboard Shortcut Functionality

Ctrl Up/Down Move a TestCase up or down in the TestCase Editor.

Working with Groovy Scripts

. 
  
     "
  ? -8

Keyboard Shortcut Functionality

Ctrl Enter Executes the current groovy script.

6 "     ;

©2005 EVIWARE.COM • ALL RIGHTS RESERVED

You might also like