The specific definition, which does not aim to assure 'good quality' by
the more general definition, but rather to ensure that an organization
or product is consistent, can be considered to have four main
components: quality planning, quality control, quality assurance and quality improvement. Quality management is focused not only on product/service quality,
but also the means to achieve it. Quality management therefore uses
quality assurance and control of processes as well as products to
achieve more consistent quality.
Wednesday, 26 September 2012
Change Managment
Once requirements are finalized and frozen the work starts on any
project. If after that customer wants to add or change requirements, it
is called a "change request". Managing change requests is called change
management.
Tuesday, 25 September 2012
Difference between Inspection and Audit
Inspection A formal evaluation technique in which software
requirements, design, or code are examined in detail by person or group
other than the author to detect faults, violations of development
standards, and other problems.
Audit - An independent examination of a work product or set of work
products to assess compliance with specifications, standards,
contractual agreements, or other criteria.
requirements, design, or code are examined in detail by person or group
other than the author to detect faults, violations of development
standards, and other problems.
Audit - An independent examination of a work product or set of work
products to assess compliance with specifications, standards,
contractual agreements, or other criteria.
Saturday, 8 September 2012
How to Test Banking Applications
Banking applications are considered to be one of the most complex
applications in today’s software development and testing industry. What makes Banking application so complex?
What approach should be followed in order to test the complex workflows
involved? In this article we will be highlighting different stages and
techniques involved in testing Banking applications.
The characteristics of a Banking application are as follows:
Banking applications have multiple tiers involved in performing an operation. For Example, a banking application may have:
Test Case Preparation:
In this stage Test Cases are derived from Business Scenarios, one Business Scenario leads to several positive test cases and negative test cases. Generally tools used during this stage are Microsoft Excel, Test Director or Quality Center.
Test Case Review:
Reviews by peer QA Engineers
Test Case Execution:
Test Case Execution could be either manual or automatic involving tools like QC, QTP or any other.
In this stage the major task involves in the whole application scan which is carried out using tools like IBM Appscan or HP WebInspect (2 Most popular tools).
Once the Scan is complete the Scan Report is published out of which False Positives are filtered out and rest of the vulnerability are reported to Development team for fixing depending on the Severity.
Other Manual tools for Security Testing used are: Paros Proxy, Http Watch, Burp Suite, Fortify tools Etc.
Apart from the above stages there might be different stages involved like Integration Testing and Performance Testing.
In today’s scenario majority of Banking Projects are using: Agile/Scrum, RUP and Continuous Integration methodologies, and Tools packages like Microsoft’s VSTS and Rational Tools.
As we mentioned RUP above, RUP stands for Rational Unified Process, which is an iterative software development methodology introduced by IBM which comprises of four phases in which development and testing activities are carried out.
Four phases are:
i) Inception
ii) Collaboration
iii) Construction and
iv) Transition
RUP widely involves IBM Rational tools.
In this article we discussed how complex a Banking application could be and what are the typical phases involved in testing the application. Apart from that we also discussed current trends followed by IT industries including software development methodologies and tools.
The characteristics of a Banking application are as follows:
- Multi tier functionality to support thousands of concurrent user sessions
- Large scale Integration , typically a banking application integrates with numerous other applications such as Bill Pay utility and Trading accounts
- Complex Business workflows
- Real Time and Batch processing
- High rate of Transactions per seconds
- Secure Transactions
- Robust Reporting section to keep track of day to day transactions
- Strong Auditing to troubleshoot customer issues
- Massive storage system
- Disaster Management.
Banking applications have multiple tiers involved in performing an operation. For Example, a banking application may have:
- Web Server to interact with end users via Browser
- Middle Tier to validate the input and output for web server
- Data Base to store data and procedures
- Transaction Processor which could be a large capacity Mainframe or any other Legacy system to carry out Trillions of transactions per second.
- Total coverage of all banking workflows and Business Requirements
- Functional aspect of the application
- Security aspect of the application
- Data Integrity
- Concurrency
- User Experience
1) Requirement Gathering:
Requirement gathering phase involves documentation of requirements either as Functional Specifications or Use Cases. Requirements are gathered as per customer needs and documented by Banking Experts or Business Analyst. To write requirements on more than one subject experts are involved as banking itself has multiple sub domains and one full fledge banking application will be the integration of all. For Example: A banking application may have separate modules for Transfers, Credit Cards, Reports, Loan Accounts, Bill Payments, Trading Etc.2) Requirement Review:
The deliverable of Requirement Gathering is reviewed by all the stakeholders such as QA Engineers, Development leads and Peer Business Analysts. They cross check that neither existing business workflows nor new workflows are violated.3) Business Scenario Preparations:
In this stage QA Engineers derive Business Scenarios from the requirement documents (Functions Specs or Use Cases); Business Scenarios are derived in such a way that all Business Requirements are covered. Business Scenarios are high level scenarios without any detailed steps, further these Business Scenarios are reviewed by Business Analyst to ensure all of Business Requirements are met and its easier for BAs to review high level scenarios than reviewing low level detailed Test Cases.4) Functional Testing:
In this stage functional testing is performed and the usual software testing activities are performed such as:Test Case Preparation:
In this stage Test Cases are derived from Business Scenarios, one Business Scenario leads to several positive test cases and negative test cases. Generally tools used during this stage are Microsoft Excel, Test Director or Quality Center.
Test Case Review:
Reviews by peer QA Engineers
Test Case Execution:
Test Case Execution could be either manual or automatic involving tools like QC, QTP or any other.
5) Database Testing:
Banking Application involves complex transaction which are performed both at UI level and Database level, Therefore Database testing is as important as functional testing. Database in itself is an entirely separate layer hence it is carried out by database specialists and it uses techniques like- Data loading
- Database Migration
- Testing DB Schema and Data types
- Rules Testing
- Testing Stored Procedures and Functions
- Testing Triggers
- Data Integrity
6) Security Testing:
Security Testing is usually the last stage in the testing cycle as completing functional and non functional are entry criteria to commence Security testing. Security testing is one of the major stages in the entire Application testing cycle as this stage ensures that application complies with Federal and Industry standards. Security testing cycle makes sure the application does not have any web vulnerability which may expose sensitive data to an intruder or an attacker and complies with standards like OWASP.In this stage the major task involves in the whole application scan which is carried out using tools like IBM Appscan or HP WebInspect (2 Most popular tools).
Once the Scan is complete the Scan Report is published out of which False Positives are filtered out and rest of the vulnerability are reported to Development team for fixing depending on the Severity.
Other Manual tools for Security Testing used are: Paros Proxy, Http Watch, Burp Suite, Fortify tools Etc.
Apart from the above stages there might be different stages involved like Integration Testing and Performance Testing.
In today’s scenario majority of Banking Projects are using: Agile/Scrum, RUP and Continuous Integration methodologies, and Tools packages like Microsoft’s VSTS and Rational Tools.
As we mentioned RUP above, RUP stands for Rational Unified Process, which is an iterative software development methodology introduced by IBM which comprises of four phases in which development and testing activities are carried out.
Four phases are:
i) Inception
ii) Collaboration
iii) Construction and
iv) Transition
RUP widely involves IBM Rational tools.
In this article we discussed how complex a Banking application could be and what are the typical phases involved in testing the application. Apart from that we also discussed current trends followed by IT industries including software development methodologies and tools.
Friday, 17 August 2012
Telecom Testing
Telecom testing is an automated, controlled method of verifying
operation of your products before they go to market. Any product that
connects to the PSTN (public switched telephone network) or a telecom
switch (PBX) can be tested with a telephone line simulator, bulk call
generator, or similar telecom test platform. Telecom testing is ideal
for all telephony applications and equipment, including:
IVR systems
Switching systems
CTI applications
VoIP gateways
IADs
Why use a telecom testing solution?
A telecom test platform minimizes costs and simplifies engineering, QA, and production testing, as well as integration and pre-installation testing. A test solution can simulate telephony protocols and functions for:
Feature and performance testing
Load and stress testing
Bulk call generation
Quality of service testing
Equipment demos and product training
An automated telecom test solution provides comprehensive, consistent testing that can be customized for your specific application. In addition, thorough testing will provide peace-of-mind for you and guaranteed reliability for your customers.
IVR systems
Switching systems
CTI applications
VoIP gateways
IADs
Why use a telecom testing solution?
A telecom test platform minimizes costs and simplifies engineering, QA, and production testing, as well as integration and pre-installation testing. A test solution can simulate telephony protocols and functions for:
Feature and performance testing
Load and stress testing
Bulk call generation
Quality of service testing
Equipment demos and product training
An automated telecom test solution provides comprehensive, consistent testing that can be customized for your specific application. In addition, thorough testing will provide peace-of-mind for you and guaranteed reliability for your customers.
Difference between mobile testing and web testing
Mobile Application Testing:
As Wireless Application Protocol (WAP) is used in mobile
phones for internet connections the browser tested here is
WAP BROWSER.
Testing is done to ensure that only wml languages are
accessed using wap browsers.And also there are automation
tools for checking mobile application testing.
application is works as per the given requirements.it is the basic definition of mobile application testing. to go more details: testing each application in mobile like phonebook, message, gallery, camera,games etc deeper to make sure that all the requirements are meets.
WEB TESTING:
For web application testing,the developed webpage is tested
in various browsers and OS and the protocol used here is IP.
Difference between Desktop Testing and Client-Server Testing
Desktop application runs on personal computers and
work stations, so when you test the desktop application you are focusing
on a specific environment. You will test complete application broadly
in categories like GUI, functionality, Load, and backend i.e DB.
In client server application you have two different components to test. Application is loaded on server machine while the application exe on every client machine. You will test broadly in categories like, GUI on both sides, functionality, Load, client-server interaction, backend. This environment is mostly used in Intranet networks. You are aware of number of clients and servers and their locations in the test scenario.
In client server application you have two different components to test. Application is loaded on server machine while the application exe on every client machine. You will test broadly in categories like, GUI on both sides, functionality, Load, client-server interaction, backend. This environment is mostly used in Intranet networks. You are aware of number of clients and servers and their locations in the test scenario.
Difference between client-server and web based testing
What is the difference between client-server testing and web
based testing and what are things that we need to test in such
applications?
Ans:
Projects are broadly divided into two types of:
This type of testing usually done for 2 tier applications (usually developed for LAN)
Here we will be having front-end and backend.
The application launched on front-end will be having forms and reports which will be monitoring and manipulating data
E.g: applications developed in VB, VC++, Core Java, C, C++, D2K, PowerBuilder etc.,
The backend for these applications would be MS Access, SQL Server, Oracle, Sybase, Mysql, Quadbase
The tests performed on these types of applications would be
- User interface testing
- Manual support testing
- Functionality testing
- Compatibility testing & configuration testing
- Intersystem testing
WEB TESTING
This is done for 3 tier applications (developed for Internet / intranet / xtranet)
Here we will be having Browser, web server and DB server.
The applications accessible in browser would be developed in HTML, DHTML, XML, JavaScript etc. (We can monitor through these applications)
Applications for the web server would be developed in Java, ASP, JSP, VBScript, JavaScript, Perl, Cold Fusion, PHP etc. (All the manipulations are done on the web server with the help of these programs developed)
The DBserver would be having oracle, sql server, sybase, mysql etc. (All data is stored in the database available on the DB server)
The tests performed on these types of applications would be
- User interface testing
- Functionality testing
- Security testing
- Browser compatibility testing
- Load / stress testing
- Interoperability testing/intersystem testing
- Storage and data volume testing
A web-application is a three-tier application.
This has a browser (monitors data) [monitoring is done using html, dhtml, xml, javascript]-> webserver (manipulates data) [manipulations are done using programming languages or scripts like adv java, asp, jsp, vbscript, javascript, perl, coldfusion, php] -> database server (stores data) [data storage and retrieval is done using databases like oracle, sql server, sybase, mysql].
The types of tests, which can be applied on this type of applications, are:
1. User interface testing for validation & user friendliness
2. Functionality testing to validate behaviors, i/p, error handling, o/p, manipulations, services levels, order of functionality, links, content of web page & backend coverage’s
3. Security testing
4. Browser compatibility
5. Load / stress testing
6. Interoperability testing
7. Storage & data volume testing
A client-server application is a two tier application.
This has forms & reporting at front-end (monitoring & manipulations are done) [using vb, vc++, core java, c, c++, d2k, power builder etc.,] -> database server at the backend [data storage & retrieval) [using ms access, sql server, oracle, sybase, mysql, quadbase etc.,]
The tests performed on these applications would be
1. User interface testing
2. Manual support testing
3. Functionality testing
4. Compatibility testing
5. Intersystem testing
Some more points to clear the difference between client server, web and desktop applications:
Desktop application:
1. Application runs in single memory (Front end and Back end in one place)
2. Single user only
Client/Server application:
1. Application runs in two or more machines
2. Application is a menu-driven
3. Connected mode (connection exists always until logout)
4. Limited number of users
5. Less number of network issues when compared to web app.
Web application:
1. Application runs in two or more machines
2. URL-driven
3. Disconnected mode (state less)
4. Unlimited number of users
5. Many issues like hardware compatibility, browser compatibility, version compatibility, security issues, performance issues etc.
As per difference in both the applications come where, how to access the resources. In client server once connection is made it will be in state on connected, whereas in case of web testing http protocol is stateless, then there comes logic of cookies, which is not in client server.
For client server application users are well known, whereas for web application any user can login and access the content, he/she will use it as per his intentions.
So, there are always issues of security and compatibility for web application.
Ans:
Projects are broadly divided into two types of:
- 2 tier applications
- 3 tier applications
This type of testing usually done for 2 tier applications (usually developed for LAN)
Here we will be having front-end and backend.
The application launched on front-end will be having forms and reports which will be monitoring and manipulating data
E.g: applications developed in VB, VC++, Core Java, C, C++, D2K, PowerBuilder etc.,
The backend for these applications would be MS Access, SQL Server, Oracle, Sybase, Mysql, Quadbase
The tests performed on these types of applications would be
- User interface testing
- Manual support testing
- Functionality testing
- Compatibility testing & configuration testing
- Intersystem testing
WEB TESTING
This is done for 3 tier applications (developed for Internet / intranet / xtranet)
Here we will be having Browser, web server and DB server.
The applications accessible in browser would be developed in HTML, DHTML, XML, JavaScript etc. (We can monitor through these applications)
Applications for the web server would be developed in Java, ASP, JSP, VBScript, JavaScript, Perl, Cold Fusion, PHP etc. (All the manipulations are done on the web server with the help of these programs developed)
The DBserver would be having oracle, sql server, sybase, mysql etc. (All data is stored in the database available on the DB server)
The tests performed on these types of applications would be
- User interface testing
- Functionality testing
- Security testing
- Browser compatibility testing
- Load / stress testing
- Interoperability testing/intersystem testing
- Storage and data volume testing
A web-application is a three-tier application.
This has a browser (monitors data) [monitoring is done using html, dhtml, xml, javascript]-> webserver (manipulates data) [manipulations are done using programming languages or scripts like adv java, asp, jsp, vbscript, javascript, perl, coldfusion, php] -> database server (stores data) [data storage and retrieval is done using databases like oracle, sql server, sybase, mysql].
The types of tests, which can be applied on this type of applications, are:
1. User interface testing for validation & user friendliness
2. Functionality testing to validate behaviors, i/p, error handling, o/p, manipulations, services levels, order of functionality, links, content of web page & backend coverage’s
3. Security testing
4. Browser compatibility
5. Load / stress testing
6. Interoperability testing
7. Storage & data volume testing
A client-server application is a two tier application.
This has forms & reporting at front-end (monitoring & manipulations are done) [using vb, vc++, core java, c, c++, d2k, power builder etc.,] -> database server at the backend [data storage & retrieval) [using ms access, sql server, oracle, sybase, mysql, quadbase etc.,]
The tests performed on these applications would be
1. User interface testing
2. Manual support testing
3. Functionality testing
4. Compatibility testing
5. Intersystem testing
Some more points to clear the difference between client server, web and desktop applications:
Desktop application:
1. Application runs in single memory (Front end and Back end in one place)
2. Single user only
Client/Server application:
1. Application runs in two or more machines
2. Application is a menu-driven
3. Connected mode (connection exists always until logout)
4. Limited number of users
5. Less number of network issues when compared to web app.
Web application:
1. Application runs in two or more machines
2. URL-driven
3. Disconnected mode (state less)
4. Unlimited number of users
5. Many issues like hardware compatibility, browser compatibility, version compatibility, security issues, performance issues etc.
As per difference in both the applications come where, how to access the resources. In client server once connection is made it will be in state on connected, whereas in case of web testing http protocol is stateless, then there comes logic of cookies, which is not in client server.
For client server application users are well known, whereas for web application any user can login and access the content, he/she will use it as per his intentions.
So, there are always issues of security and compatibility for web application.
Testcases for Mobile Testing
TEST
1 — Installation
|
|
TEST STEPS
|
|
Before starting the test round,
use a file manager to note the free user space available on the phone. You
will need this information in test 8.
|
|
1
|
Install the application being
tested.
The application must install
without error.
|
2
|
During installation note the version
number presented to the user.
The version number must match
that specified during submission.
|
3
|
Verify that the application has
successfully installed on the device by navigating to the area on the
phone where new applications are installed.
The application should present
one or more icon(s) on the phone.
|
Notes
|
|
For any submissions which do not
appear obviously once installed, the submitter must include details in the
submission statement of how successful installation can be verified.
If the content does not appear
obviously on the device once installed, and specific instructions are lacking
in the submission statement, then this test will be failed.
|
TEST
2 — Application start/stop behaviour
|
|
TEST STEPS
|
|
1
|
Start the application by selecting
the icon or following the steps outlined in the submission statement
Navigate to the Task Manager
and check that the application appears there.
|
2
|
Close the application from the
Task Manager.
Exit the Task Manager, and
re-launch the Task Manager.
The application must no longer
appear in the Task Manager.
|
3
|
Start the application as in
Step 1.
Go to the Task Manager to verify
that the application is running.
The application must appear in
the task manager.
|
4
|
Close the application from
within the application UI and then return to the Task Manager.
The application must no longer
be running and must no longer appear in the task manager.
|
5
|
Restart the application as in
Step 1.
Navigate to the Task Manager.
The application must once again
appear in the Task Manager.
|
Notes
|
|
An application which must run in
the background does not need to appear in the Task Manager or present a UI
so long as the developer justifies this behaviour during submission.
All applications must have some
way of verifying that they are running on the device, though, and the
developer should provide this information.
|
TEST
3 — Application credentials
|
|
TEST STEPS
|
|
1
|
With the application running,
check the name of the application displayed on the phone.
The application must display
the same name on the phone as stated during submission.
|
2
|
Note the functionality of the
application as it runs on the device.
The basic functionality of the
application must match that declared during submission.
|
Notes
|
|
Step 1 does not apply to applications
which do not have a UI
VoIP applications must
present a UI in order to pass this test.
|
TEST
4 — No disruption to voice calls
|
|
TEST STEPS
|
|
1
|
With the application installed
and running use a second phone to call the test device.
The incoming call must be indicated
to the user on the test device.
|
2
|
Answer the call on the test
device.
You must be able to conduct a conversation
with the other party without interference from the application being
tested.
|
3
|
End the call in the normal way on
the test device.
The voice call must be ended.
|
4
|
From the test device, make a call to
a second phone. Answer the call from the other device.
The call must be indicated on
both devices, and you must be able to conduct a conversation with the
other party without interference from the application being tested.
|
5
|
End the voice call from the second
device.
The call must be ended on both
devices.
|
6
|
Place a test call to the emergency
112 number from the device.
*Please check in your territory
for the approved way to make test calls to the emergency services.
|
Notes
|
|
If the application being tested
has the MultimediaDD capability, and has audio functionality, then that
functionality must be in use whilst this test is performed. Particularly,
it should be checked that the audio from the application is faded down to
allow the user to hear the telephone call.
VoIP applications will need this
test running using both the handset held to the user’s ear and using a headset.
The test should be run with a VoIP call in progress, and the incoming GSM
call should be announced with call waiting tones.
|
TEST
5 — No disruption to text messages
|
|
TEST STEPS
|
|
1
|
With the application installed
and running, send a text message to the test device.
The incoming text message must
be notified to the user as per their alert settings.
|
2
|
Read the text message on the test
device and choose to reply. Send the reply.
The reply must be received at the
second device.
|
3
|
From the standby screen on the
test device, navigate to the “new text message” option and create a new
message. Send the message to the second device.
The message must be received at
the second device.
|
TEST
6 — Auto-start behaviour
|
|
TEST STEPS
|
|
1
|
With the application running,
find the settings for the application — either within the application
itself or from the settings option on the device.
There must be an option which
allows the user to enable/disable auto-start functionality.
|
2
|
Ensure that the setting for
auto-start behaviour is disabled, and restart the device.
The application must not start
on device boot.
|
3
|
Now change the setting so that auto-start
behaviour is enabled for the application and restart the phone.
The application must start when
the phone boots.
|
Notes
|
|
If the application does not have
auto-start functionality, then this test does not need to be run.
|
TEST
7– No disruption to key device applications
|
|
TEST STEPS
|
|
1
|
Ensure that the contacts, messaging
and calendar applications are populated with data and start the application
as in Test 2.
After the application has been
installed and used, the data entered into those applications must not be
altered in any way without the user being aware.
|
2
|
With the application running,
navigate to the messages application and create a new message.
Save that message to the drafts
folder and then open and edit it.
Finally, delete the message from
the drafts folder and delete a message from the inbox.
All of the above actions should be
possible without interference from the installed application.
|
3
|
Navigate to the contacts
application.
Create a contact, then edit that
contact and then delete it.
The application should not interfere
with any of the actions above without notifying the user and giving them
option to avoid the change.
|
4
|
Navigate to the calendar
application.
Create an appointment in the calendar.
Edit the appointment and then delete it.
The application should not interfere
with any of the actions above without notifying the user and giving them
option to avoid the change.
|
5
|
Use the web browser on the device
to go to a web page which is known to work on the network being used.
It must be possible to create a
data connection and to access the web page selected.
|
Notes
|
|
If the application, as part of
stated functionality, makes changes to user data then an exception can be
claimed here. The functionality must be described in the documentation
with the application and all data other than that mentioned in the user
guide must remain untouched as described in the test case.
The data used in this test case is
also needed for Test 8, so leave the data on the device when proceeding
straight into Test 8.
|
TEST
8 — Un-install
|
|
TEST STEPS
|
|
1
|
Stop the application as
described in Test 2 and uninstall the application using the system
installer.
The application must be uninstalled
without error.
|
2
|
Following the same steps as in
Test 1, navigate to where you would expect to see the application icon.
The application icon must not
longer be present on the device.
If you used another method to verify
successful installation in Test 1 then use this method to ensure that the
application has been uninstalled.
|
3
|
Check the contacts, messages and
calendar applications to ensure that that the data present in Test 7 is
still present in those applications.
|
4
|
Using the same file manager as at
the start of Test 1 check that the amount of user space available on the
device is either the same as that found in step 1 or that any difference
between the space available before and after fulfils the following
criteria.
a) Excluding user-generated and
downloaded content, the application leaves no more than 100Kb of data on
the phone after uninstall
b) Any data left on the device
after install matches the explanation given during the submission
process
|
Notes
|
|
You should start this test with
the application data from Test 7 still in place on the device.
|
TEST
9 — Device adaptation
|
|
TEST STEPS
|
|
Note: The following test steps should
be run on the list of devices corresponding to the UIDs specified in the
.pkg file.
The lead device list can be found
at http://tiny.symbian.org/devicetable
|
|
1
|
Install the application onto the
device
The application should install
on the device or present an error message to explain that it cannot install
onto that device.
|
2
|
Launch the application.
The application should run on
the device or present an error message to explain that it cannot run on
that device.
|
3
|
Briefly examine the application
whilst running.
UI elements should be functional
and text should be readable in the main screen of the application.
|
4
|
If the device on which the application
is currently being tested supports portrait and landscape screen modes,
start the application and then switch between the screen modes.
The application should continue
to be functional, and usable, in both screen orientations of the device,
whether or not the application rotates in response to the screen mode
change.
|
5
|
Close the application from the
application UI
The application should stop
running.
|
6
|
Uninstall the application from the phone.
The un-installation should happen
without error and the application must be un-installed.
|
Notes
|
|
Applications which do not
present a UI to the user in normal usage do not need to run this test.
On the primary device — on which
all of the other test cases have been run — only step 4 of this test should
be performed as all of the other steps of this test case are covered
elsewhere.
|
Note that Test 3 and Test 4 both contain
additional notes which apply to the testing of VoIP applications. Please
read and apply these notes when running those tests on VoIP applications.
Test
10 — Additional emergency call testing for VoIP apps
|
|
TEST STEPS
|
|
Note: These test steps should be
performed twice — once with a SIM card in the device and once without.
|
|
1
|
With the VoIP application running
in the background, but with no VoIP call in progress, initiate an emergency
call in the usual way.
The emergency call must be placed
over the GSM/CDMA network successfully.
|
2
|
With the VoIP application running
in the background with a VoIP call in progress, initiate an emergency
call in the usual way.
The emergency call must be placed
over the GSM/CDMA network successfully and the VoIP call should be terminated
or placed on hold.
|
3
|
With the VoIP application in the
background, and an emergency call active make a VoIP call to the device.
The incoming VoIP must be
rejected, and the emergency call must not be interrupted.
|
No.
|
Module
|
Sub-Module
|
Test Case Description
|
Expected Result
|
1
|
Installation
|
Verify that application can be Installed Successfully.
|
Application should be able to install successfully.
|
|
2
|
Uninstallation
|
Verify that application can be uninstalled successfully.
|
User should be able to uninstall the application successfully.
|
|
3
|
Network Test Cases
|
Verify the behavior of application when there is Network
problem and user is performing operations for data call.
|
User should get proper error message like “Network error.
Please try after some time”
|
|
4
|
Verify that user is able to establish data call when Network
is back in action.
|
User should be able to establish data call when Network is back
in action.
|
||
5
|
Voice Call Handling
|
Call Accept
|
Verify that user can accept Voice call at the time when application
is running and can resume back in application from the same point.
|
User should be able to accept Voice call at the time when application
is running and can resume back in application from the same point.
|
6
|
Call Rejection
|
Verify that user can reject the Voice call at the time when
application is running and can resume back in application from the
same point.
|
User should be able to reject the Voice call at the time when
application is running and can resume back in application from the
same point.
|
|
7
|
Call Establish
|
Verify that user can establish a Voice call in case when application
data call is running in background.
|
User should be able to establish a Voice call in case when application
data call is running in background.
|
|
8
|
SMS Handling
|
Verify that user can get SMS alert when application is
running.
|
User should be able to get SMS alert when application is
running.
|
|
9
|
Verify that user can resume back from the same point after reading
the SMS.
|
User should be able to resume back from the same point after reading
the SMS.
|
||
10
|
Unmapped keys
|
Verify that unmapped keys are not working on any screen of
application.
|
Unmapped keys should not work on any screen of application.
|
|
11
|
Application Logo
|
Verify that application logo with Application Name is
present in application manager and user can select it.
|
Application logo with Application name should be present in
application manager and user can select it.
|
|
12
|
Splash
|
Verify that when user selects application logo in application
manager splash is displayed.
|
When user selects application logo in application manager
splash should be displayed.
|
|
13
|
Note that Splash do not remain for fore than 3 seconds.
|
Splash should not remain for fore than 3 seconds.
|
||
14
|
Low Memory
|
Verify that application displays proper error message when
device memory is low and exits gracefully from the situation.
|
Application should display proper error message when device
memory is low and exits gracefully from the situation.
|
|
15
|
Clear Key
|
Verify that clear key should navigate the user to previous
screen.
|
Clear key should navigate the user to previous screen.
|
|
16
|
End Key
|
Verify that End Key should navigate the user to native OEM
screen.
|
End Key should navigate the user to native OEM screen.
|
|
17
|
Visual Feedback
|
Verify that there is visual feedback when response to any
action takes more than 3 seconds.
|
There should be visual feedback given when response time for any
action is more than 3 second.
|
|
18
|
Continual Keypad Entry
|
Verify that continual key pad entry do not cause any problem.
|
Continual key pad entry should not cause any problem in
application.
|
|
19
|
Exit Application
|
Verify that user is able to exit from application with every
form of exit modes like Flap,Slider,End Key or Exit option in application
and from any point.
|
User should be able to exit with every form of exit modes like
Flap,Slider,End Key or Exit option in application and from any point.
|
|
20
|
Charger Effect
|
Verify that when application is running then inserting and
removing charger do not cause any problem and proper message is displayed
when charger is inserted in device.
|
When application is running then inserting and removing
charger should not cause any problem and proper message should be displayed
when charger is inserted in device.
|
|
21
|
Low Battery
|
Verify that when application is running and battery is low
then proper message is displayed to the user.
|
When application is running and battery is low then proper
message is displayed to the user telling user that battery is low.
|
|
22
|
Removal of Battery
|
Verify that removal of battery at the time of application
data call is going on do not cause interruption and data call is completed
after battery is inserted back in the device.
|
Removal of battery at the time of application data call is
going on should not cause interruption and data call should be completed
after battery is inserted back in the device.
|
|
23
|
Battery Consumption
|
Verify that application does not consume battery
excessively.
|
The application should not consume battery excessively.
|
|
24
|
Application Start/ Restart
|
1. Find the application icon and select it 2. “Press a button”
on the device to launch the app. 3.Observe the application launch In the
timeline defined
|
Application must not take more than 25s to start.
|
|
25
|
Application Side Effects
|
Make sure that your application is not causing other applications
of device to hamper.
|
Installed application should not cause other applications of
device to hamper.
|
|
26
|
External incoming communication – infrared
|
Application should gracefully handle the condition when
incoming communication is made via Infra Red [Send a file using Infrared
(if applicable) to the device application presents the user]
|
When the incoming communication enters the device the application
must at least respect one of the following: a) Go into pause state, after
the user exits the communication, the application presents the user
with a continue option or is continued automatically from the point it
was suspended at b) Give a visual or audible notification The application
must not crash or hung.
|
Subscribe to:
Posts (Atom)