המושג API מייצג: Application Programming Interface . ה-API מבטא אוסף של פרוצדורות , פונקציות ושאר נקודות גישה לאותה מערכת נבדקת (יכולה להיות אפליקציה , מערכת הפעלה, ספרייה וכו'), נקודות גישה אלו מאפשרות לאותם מפתחים להתממשק אליהם, לספק ולשאוב מידע. בעולם הבדיקות שלנו , נקודות אלו מאפשרות לנו, הבודקים, לשלוח קריאות לאפליקציה ולקבל ממנה תשובות אותן נשמור ונוודא כי הן תואמות את הדרישות.
בדיקות API מזכירות במעט בדיקות GUI אך במקום ממשק ידידותי הבנוי על מערכת חלונאית או וובית (Web) הכוללת כפתורים, שדות טקסט, תפריטים וכו' , נעבוד ב-API על סדרה של קישורים או קריאות לפונקציות היושבות בשכבה נמוכה יותר של מימוש.
ישנן שתי גישות לבדיקות API:
הגישה הראשונה משתמשת בכלי בדיקות המיועד לבצע קריאות ולוודא תגובות מהמערכת הנבדקת.
הגישה השנייה היא מימוש של קוד פנימי (בתוך הצוות) למימוש הקריאות
הגישה הראשונה היא גישה גנרית יותר, כלי חיצוני יכול להתאים את עצמו למגוון מערכות אפליקציות ואילו הגישה השנייה נכתבת לייעוד ספציפי יותר של צרכי החברה והמוצר. על כן, קורס זה מתמקד בעיקרו בגישה הראשונה. ישנם לא מעט כלים שם בחוץ בהם ניתן לבצע בדיקות API , כלים כמו - PostMan , Fiddler , advance REST client , Cocoa Rest Client ועוד...
הקורס יתמקד בכלי הפופולרי ביותר שניתן למצוא כיום בתחום - SoapUI , ובנקודה זו אציין כי קיימות 2 גרסאות של המוצר: הגרסה החינמית (Open Sourse) , וגרסת ה-Pro , ההתמקדות בקורס תהיה בכלי ה-Open Source אשר יודע להציע את הכי הרבה בתמורה למחיר.
- API Automation Testing – Course Overview
- WebServices Concepts:
What are Webservices ?
WSDL Introduction
Soap Protocol Explanation
- Soap UI Basic Features:
SoapUI Installation / Documentation
Creating Testsuites and testcases
Local WebService operations
Local Webservice Installation
Request/Response operations
- Testing Webservices:
Basic Assertions
Advanced Assertions
Xpath assertions in detail
Properties Access
Advanced Properties
Properties Transfer concepts
- Groovy Language Basics:
Groovy operators,DataTypes
Loops,Arrays,List
Basic Programmes
- Automation Testing using Groovy:
Creating Groovy Testcase
Context Variable Scope
Parsing XML's with Evryware API
- Testing REST API and reporting:
REST API concepts
How to test REST API
Google Maps API
Testcases for Google Map API
Reporting Techniques
Jasper Reports and WebRecording