what is a api testing/

Answer Posted / raj

API TESTING

What is API?

An API (Application Programming Interface) is a collection
of software functions and procedures called API calls, that
can be executed by other software applications.

What is API Testing?

API testing is mostly used for the system which has
collection of API that needs to be tested. The system could
be system software, application software or libraries.API
testing is different from other testing types as GUI is
rarely involved in API Testing. Even if GUI is not involved
in API testing, you still need to setup initial environment,
invoke API with required set of parameters and then finally
analyze the result. Setting initial environment become
complex because GUI is not involved. In case of API, you
need to have some way to make sure that system is ready for
testing. This can be divided further in test environment
setup and application setup. Things like database should be
configured, server should be started are related to test
environment setup. On the other hand object should be
created before calling non static member of the class falls
under application specific setup. Initial condition in API
testing also involves creating conditions under which API
will be called. Probably, API can be called directly or it
can be called because of some event or in response of some
exception.
Test Cases for API Testing:
The test cases on API testing are based on the output.
•Return value based on input condition
Relatively simple to test as input can be defined and
results can be validated. Example: It is very easy to write
test cases for int add(int a, int b) kind of API. You can
pass different combinations of int a and int b and can
validate these against known results.
•Does not return anything
Behavior of API on the system to be checked when there is
no return value.
Example: A test case to delete(ListElement) function will
probably require to validate size of the list or absence of
list element in the list.
•Trigger some other API/event/interrupt
The output of an API if triggers some event or raises some
interrupt, then thoseevents and interrupt listeners should
be tracked. The test suite should callappropriate API and
declarations should be on the interrupts and listener.
•Update data structure
This category is also similar to the API category which
does not return anything.Updating data structure will have
some effect on the system and that should bevalidated.
•Modify certain resources
If API call is modifies some resources, for example makes
update on some database,changes registry, kills some
processes etc, then it should be validated by accessingthe
respective resources

Is This Answer Correct ?    2 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

how to creat 2 test plan in 2 different environment exp:tour and travel

1911


Test Cases For Router&Switch

2050


How does quality control differ from quality assurance?

628


what could be the (realtime)bugs you come across in job portal and health care projects in terms of 1. high severity n low priority 2. high severity n high priority 3. low severity n low priority 4. low severity n low priority? pls its very urgent thanks n in advance n lukin forward for reply

1697


What about the test case if the field only takes a certain number of characters or a minimum number?

670






What is reverse engineering?

738


What is difference in between operating system 2000 and os xp?

664


what are the status have in QC(Test Management Tool). and how you report?

1455


How could we start writing testcases without having the FRS,BRS Docs? My Project has some docs that are related to explain the operations which will be done in the application. It is deployed in UAT server and is a maintainance project. Tell me some technipues or best way to provide the quality to application?

1719


1. what exactly is heuristic checklist approach for unit testing ?

2214


What is a test scenario?

702


hi can anyone tell me about vision plus testing? and what about its future

20900


What does a manual tester need to become proficient with db testing?

692


What is the difference between a bug, a defect and an error?

685


What is a test server?

724