Friday, 19 April 2013

MOBILE APP TESTING CHECKLIST III

App UI checks

Use at most one action on the screen that is highlighted as the most likely for the user. (Example: in iOS a blue button represents the default or most likely action).

To keep controls as unobtrusive as possible for instance by fading them out if they are not used for a while.

Make it possible for users to go back to a previous screen for instance by adding a back or cancel button

The main function of the app should be apparent immediately. It should speak for itself.

If the app is stopped at an unexpected time, user data should be saved locally and available at start-up.

Do not use standard buttons for other functions then that they are normally used for

Users should be warned of the consequences of deleting a document Keyboard adjusts to expected input (for instance numbers/letters when expected).

Are inactive buttons clearly distinguished from active buttons?

Minimize user actions by using a picker or a table view where users can select a certain choice over a data entry field where users have to type a choice

In an app, the user should not be able to store files locally, outside the app sandbox.

In an app, the user should not be exposed to the permissions of a specific file

Tapable elements should be about 7x7 mm in size, using the pixel density of the target device you can calculate the amount of pixels (chapter documentation contains a link to different devices compared).

Do not redefine gestures in your app that have a standard meaning (example:swiping from top to bottom enables the notification center)

Requirement to login is delayed in the app as long as possible

In case of ‘live’ filtering of data while the user enters his search query, verify the performance.

The appearance of buttons that perform standard actions are not altered in the app (for instance: refresh, organize,trash, Reply, back, etc.)

If there is a long list of data to scroll trough, provide a search option above the list.

If performance is slow, indicate a progress status icon (“Loading…”), preferably with specific message.

The app should respond to all changes in device orientation, as per the design

MOBILE APP TESTING CHECKLIST II


Device specific checks

Can the app be installed on the device?

Does the app behave as designed/desired if there is an incoming call?

Does the app behave as designed/desired if there is an incoming SMS?

Does the app behave as designed/desired if the device is tilted?

Does the app behave as designed/desired if the device is shaken?

Does the app behave as designed/desired if a local message is coming from another app (think of: calendar reminders, to-do task etc.).

Does the app behave as designed/desired if a push message is coming from another app (think of: twitter mentions, whats app message, word feud invitation, etc).

Does the app behave as designed/desired if the charger is connected?

Does the app behave as designed/desired if the charger is disconnected?

Does the app behave as designed/desired if the device goes to sleeping mode

Does the app behave as designed/desired if the device resumes from sleeping mode

Does the app behave as designed/desired if the device resumes from lock screen?

Does the app interact with the GPS sensor correctly (switch on/off, retrieve GPS data)?

Is the functionality of all the buttons or keys on the device defined for this app?

Verify that buttons or keys which have no defined function have no unexpected behaviour on the app when activating.

Does the app behave as designed/desired if the “Battery low” message is pushed

Does the app behave as designed/desired if the sound on the device is turned off?

Does the app behave as designed/desired if the device is in airplane mode?

Can the app be de-installed from the device?

Does the application function as expected after re-installation?

Can the app be found in the app store?

Can the app switch to different apps on the device through multitasking as designed/desired?

Are all touch screen positions (buttons) working when a screen protector is used.

In case there’s a true “back” button available on the device does the “back” button take the user to the previous screen?

In case there’s a true “menu” button available on the device, does the menu button show the app’s menu?

In case there’s a true “home” button available on the device, does the home button get the user back to the home screen of the device?

In case there’s a true “search” button available on the device, does this get the user to some form of search within the app?

MOBILE APP TESTING CHECKLIST

Checklist comprises of below mentioned categories:


  • Network specific checks
  • Device specific checks.
  • App UI checks.
  • App specific checks. (These are related with functionality that is frequently used in an app.)
  • Store specific checks

Network Specific Checks

Does the app behave as per specification if connected to the internet via Wi-Fi?

Does the app behave as per specification if connected to the internet via 2G?

Does the app behave as per specification if connected to the internet via 3G?

How the app behave if out of network reach?

How the app behave if it is in low network reach?

Does the app behave as per specification if navigating through application screens and Airplane mode is activated.

Does the app behave as per specification if while playing media content, Airplane mode is activated.

Does the app behave as per specification if while initiating a call from Device, Airplane mode is activated.

Does the app behave as per specification if while sending a SMS from Device, Airplane mode is activated.

Does the app resume working when it gets back into network reach from outside reach of the network?

Does the update transactions are processed correctly after re-establishing connection. 

Does the app still work correctly when tethering or otherwise connected to another device

What is the behaviour of the app if network switches between  (Wi-Fi, 3G, 2G)

Does the app use standard network ports (Mail: 25, 143, 465, 993 or 995 HTTP: 80 or 443 SFTP: 22) to connect to remote services, ( as some providers block certain ports.)

Thursday, 18 April 2013

Steps for Connecting to the Remote Servers



 Pre-requisite:

1. Download the PuTTYgen and PuTTY from the URL: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
2. Generate the SSH Key Pair (Public Key & Private Key) using PuTTYgen by following the steps mentioned at URL:
3. Save the Public Key and Private Key. Public key needs to be on the server that you want to connect to and Private key is to be used on the system that you are using to connect to remote server.
Settings to be done in Putty: 

1. Sessions Settings
Host Name (or IP Address): builduser@build4.appcentral.com
Port: 22
Connection Type: SSH
2. Then goto Connection >> SSH >> Tunnels
Add new forwarded port:
Source port: 3306
Destination: localhost:3306
Click on the "Local" radio button.
Click "Add"
3. Then goto Connection >> SSH >> Auth
Browse the Private Key in the field: Private Key file for Authentication
4. Go back to Session settings, type a name for Saved session and click "Save". Then click "Open"

From Next time just need to select the saved session and then click on Load then Open OR simply double click on the session name to get connected.

Getting the Logs on the server: 
  1. Navigate to directory: /opt/ac/tomcat/logs/catalina.out
  2. Write a command : ‘tail –n 1000 catalina.out >> Logs’ – (This command will get you the last 1000 lines from Catalina.out and will copy into a file named Logs and save it to the current directory)
  3. Now use command cat <filename> to read the contents of the files. In this case it should be ‘cat Log’
 Other commands that can help : 
  1. To move one folder back: cd ..
  2. To see the files and folders in a particular directory: ls OR ls –l
  3. To get inside a folder: cd <foldername>
  4. To remove the files/folders: rm <file/foldername> 
Using WinSCP for fetching the files from Remote (Linux server) server to your local system. 
  1. Download and Install WinSCP using the URL: http://winscp.en.softonic.com/universaldownloader-launch
  2. Provide the Host Name as Provided in Putty configuration and Upload the Private Key (the one used in Putty configuration)
  3. Then Connect.