computer science research poster summer 15(1)
TRANSCRIPT
● Web services enable clients i.e. users/machines to interact with servers i.e machines and transfer data over a network.
● Interoperable: Web services allow machines in different platforms to interact with each other (Fig 1).
● APIs (Application Programming Interface) act as a guideline of how to access data of different web services.
Terminologies:
XML/JSON - A markup language used to encode data. Provides standardization. JSON is similar to XML but less bulky.
SOAP- A type of web service where data is transferred using XML enveloped in a SOAP request.
RESTful - A type of web service that uses a URI (Uniform Resource Locator) to send requests and uses both XML and JSON to get the responses.
Why Web Service Testing?
● Allows businesses to connect all their machines despite different platform and geographical location.
● A failure in web service operation might result in huge economic loss for businesses.
● Regression testing ensures that updating web service does not cause break it and/or reduce its efficacy (maintain SLA).
● A user session starts when a unique user starts interacting with a web service and
ends when the user quits
● Authentication Key
● Convert test cases into XML based test cases.
● Fault seeding in our web service → Purposefully
adding faulty cases to see if our test cases can catch
the errors.
● Replay test cases on a fault seeded web service.
● Analyze the efficiency of our test cases:
○ How many faults they are able to identify?
○ Code coverage and function coverage?
○ Time taken to return data?
● Compare with other testing methods and do a relative
comparison.
● Our future work will analyze the reports of our web
service test cases to find patterns in test cases that
fail to identify faults.
● Make better test cases.
● Made our own web application by implementing web services
using Django Framework which uses Python:
https://servo.cs.wlu.edu/animals/
● Used PetFinder API, Twitter API, Reddit API and Cat API(to get cat
pictures!)
● Made our own web service so that people can access our
database, using our API. Used Django-Rest Framework.
● API documentation → Instruction manual
● Used SOAP UI to make test cases. Tested our web application.
● Test Cases included property transfer, Groovy script, assertions,
JSON hierarchy test etc.
● Deployed our API so that anyone and everyone can use it!
INTRODUCTION
This research is supported by Summer Research Scholars and Dr. Sara Sprenkle
METHODS SUMMER WORK
FUTURE WORK
Figure 1: This diagram shows how different clients access data on a database using a web service.Source: http://sharepoint-works.blogspot.com/2012/12/basics-of-web-services.html.
Automated Web Service TestingAzmain Amin, Mina Shnoudah
Dr. Sara SprenkleDepartment of Computer Science
Washington and Lee University
Fig 2: How a web service works.
Fig 3: Research methodology.
Fig 4: RockBridge Pets web application.
Fig 5: Using Soap UI to test our web application.
Fig 6: The top shows an example of a successful test case, and the bottom shows an example of a failed test case.