Apica YAML is a scripting solution which allows users to monitor scripted web transactions without the use of a GUI-based scripting tool. The intent of the solution is to provide a platform where scripts can be created using specific YAML syntax and to reduce the need for new tool adoption. Users can create Apica YAML scripts within ASM itself:
For users who are familiar with the Apica ZebraTester product, consider Apica YAML to be a GUI-less version of ZebraTester. In fact, Apica YAML scripts are actually compiled into ZebraTester scripts:
The solution allows for a headless method of creating ZebraTester scripts which does not require software to be downloaded to the machine. It also allows for greater automation/code re-usability when creating ZebraTester scripts.
Comparing ZebraTester to ApicaYAML
Feature
ZebraTester
Apica YAML
Graphical User Interface
AlagEO5Hmj35
DevOps API Scripting
eZYUatrDFTOQ
Medium Level Scripting
L07k9gaatgNU
Advanced Scripting
1Tfy2EnFa16J
Streaming Scripts
wlb7pRUhqvcV
WebSocket & MQTT Scripts
gKe6SjkKG3yH
Record Scripts
FDMd2d846vIl
Add Requests Manually
nl5BTtG1RGEH
v26LKVjYgkwW
Run the Script on Your Desktop
fj95Mvr0m06V
Xt0DO8CEkgUm
Script Variables, Extractors, Assigners
8eo2Z5HFNByy
zruu2Z2ORkr9
Parameter File Support
NYSGBjfa64Z9
FJNeCxGgueJI
Inline Code
YLtczDqjcV5a
pEyCpmfqb3cu
Java Plugins
y5mWlEgOnKbt
2Gdt3k1JLNga
Upload Scripts to Apica LoadTest
WXssonMrZoQp
Upload Scripts for Synthetic Monitoring
sjTtkWHdvdoS
Create Scripts Within ASM Portal
1NaH9uKZgILB
LoadRunner Conversion
8an6eTM7q62J
Example Syntax
The following syntax provides an example of an ApicaYAML script which will be compiled into a working ZebraTester script. Refer to the syntax guide for more information.
config:
# production:
target: 'http://ticketmonster.apicasystem.com/ticket-monster'
inputs:
- name: 'production'
default: 'http://ticketmonster.apicasystem.com/ticket-monster'
- name: 'integrationTest'
default: 'http://ticketmonsterdev.apicasystem.com/ticket-monster'
#nextproxy:
# httphost: "zebracli.zebracli.zebracli"
headers:
accept: 'application/json'
content-type: 'application/json'
#externalfiles:
inputfiles:
- path: "users.csv" # This file must be located in the /script subdirectory
fields:
- "username" # 1st column will be used for the variable 'username'
- "password" # 2nd column will be used for the variable 'password'
order: "sequential" # The data vill be picked line for line in sequential order
scope: "loop" # A new line will be read for each test iteration
eof: "close"
scenarios: # we can define multiple scenarios in 1 yml file if we want to
-
name: "TM_OrderTickets_v2"
flow:
- page:
name: "Test"
thinktime: 0
- get:
# url: "{{BASE_URL}}/ticket-monster/"
url: "https://www.google.com"
assert:
- status:
codes:
- 200
- text:
string1: "My Test String"