18
INDIUM SOFTWARE An Independent Software Testing Firm MOBILE API TEST APPROACH “Business Assurance through Quality Assurance”

Mobile api test approach

Embed Size (px)

Citation preview

Page 1: Mobile api test approach

INDIUM SOFTWAREAn Independent Software Testing Firm

MOBILE API TEST APPROACH

“Business Assurance through Quality Assurance”

Page 2: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

2

Define API

API stands forApplication ProgrammingInterface

An API is a software-to-software interface, not a user interface.

With APIs, applications talk to each other without any user knowledge or intervention.

Implemented by writing function calls in the program.

API s has libraries from the Providers.

Page 3: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

3

How It Works ?

Google Maps has one of the most popular APIs on the internet and provides a good example of their power.

Face book allows developers through an

API to create ‘apps’ that have become one

of the main sources of entertainment on

Face book.

APPLICATION BAPIAPPLICATION

A

Request data

Retrieve data

Page 4: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

4

Mobile API

A mobile application will talk to its backend APIs via standard protocols.

Principles- HTTP and REST with Data Format- XML and JSON respectively

APIs may either be your own or from any number of 3rd parties

which can be integrated by calling them directly from your application, or indirectly via your API backend

Page 5: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

5

Architecture

Cloud Server

DBApplication Log

Web Application

Third Party SDK Android/IOS SDK

Application Development

Page 6: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

6

Test Environment Setup

Mobile Apps

Web Apps

Cloud Server

Page 7: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

7

Process Flow in Our PracticesAPI

OS to be tested

1. ADT2. Android Simulator SDK3. Android Real Device

1. Xcode2. Iphone Simulator3. Iphone 5 Real Device

Testing Carried out

Boundary Analysis

Functionality Exceptional Return value based on input condition

Does not return anything

Test Log

If OS = ‘Android’ If OS = ‘IOS'

Page 8: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

8

Challenges

Challenge 1: No proper documents

were providedSolution :

Based on the KT session, gathered the information to

work on the application

Challenge 2: Timelines

Solution:

Individually shared the platform

Challenge 3: New feature Guidelines were not provided

Solution: Get the knowledge

of new features from the

developers through skype

Challenge 4: Verifying and validating the

output in different system is little

difficult for testers.

Solution: In-depth understanding of

functional behavior and sharing among the team to have

deeper understand of same

functionality on different system.

Challenge5: Exception

handling function needs to utilized

and used properly.

Solution:Based of Documentation,

various exception s has been handled

with its own exception handling

methods.

Page 9: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

9

Types of Testing

Return the expected responses for both expected and unexpected input.

Functionality works as expected even with multiple concurrent clients

APIs aren’t vulnerable to common attacks

Functional Testing

Performance Testing

Security Testing

Page 10: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

10

System Requirements

General

• Server - Cloud server• Integrated Third party application - Face book, Twitter applications• Development language - Android, Objective-c,HTML5

IOS

• Operating System :Mac OS X 10.8.4• Developer Tools - Xcode 4.6.3, Iphone Simulator, Iphone 5(ios-

6.1.4) Real Device.

Android

• Operating System: Windows XP, 7 and 8.• Developer Tools - Eclipse - ADT (v22.0.1), Android Simulator SDK

(15 or higher), Android Real Device (15 or higher).

Page 11: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

11

In Our Practice

Understand the exact business requirement and priorities it. Requirement traceability Matrix is created to provide Input Parameters . The Low Level and High Level test cases are documented. The Testing Process is carried out once the test case is signed off by Client.

Page 12: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

12

Input Provided

• Acts as both a unique identifier and a secret token for authentication

• unique to each userAPI Key

• Interact with the Google Cloud Storage API

• Each project can be identified by their unique project ID

Project ID

public class GlobalVariables {       public static String apiKey = "ZGoweEpuVTlOVEl5T1RkbE5URmxOR0l3TXpSa09UWmhOakF3WW1JMEptRTljM0J5YVc1ME9HbHZjMkZ3Y0NZ";       public static String projectId = "720196781908";}

Page 13: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

13

Android Manifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.netmera.androidpushdemo"    android:versionCode="1"    android:versionName="1.0" >    <uses-sdk        android:minSdkVersion="8"        android:targetSdkVersion="15" />    <!-- Used to connect Netmera Services -->    <uses-permission android:name="android.permission.INTERNET" />      <application        <activity            android:name=".MainActivity"            android:label="@string/app_name" >              </application></manifest>

Page 14: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

14

IOS XCODE

Page 15: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

15

Pass ScreenShot

Page 16: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

16

Failure ScreenShot

Page 17: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

17

Key Take AwayWhat is API

and How do we Test

It ?

Challenges Faced

Process Followed in

Our Practice.

Tools used in Different Platform

Input & Output

Page 18: Mobile api test approach

© 2014 Indium Software

ENHANCING SOFTWARE QUALITY

18

Thank You

USA: [email protected]

EMEA & APAC: [email protected]@indiumsoft.com

INDIA: [email protected]

SunnyvaleSuite 210, 1250 Oakmead ParkwaySunnyvale, CA – 94085.Phone: +1(408) 501-8844Fax: +1(408) 501-8808

Atlanta Crown Office Suites1870 The Exchange, Suite 100 Atlanta, GA 30339Phone: +1 (678) 608-0809, +1(770) 989-7302

New DelhiF-1/5 Okhla Industrial Area Phase-I, New Delhi – 110 020.Phone: +91-11-6613 0400

BengaluruSRS Plaza, No. 246, 2nd & 3rd Floor13th Cross, Indira Nagar 2nd StageBengaluru – 560 038.Phone: +91-80-4914 7777

ChennaiVDS House41, 2nd Floor, Cathedral RoadChennai – 600 086.Phone: +91-44-2811 6330Fax: +91-44-4210 4033