Mobile Testing Checklist

Platform

  • Check OS depend on test
  • Check many OS’s we will support (Android / iOS / Windows Phone)?
  • What mobile / tablet device will be used?
  • What mobile / tablet screen size (Inch: 10 / 8)?
  • What will be happened if OS updated?

Device-Specific Features

  • Content – Text size, Content adjustment, Responsive design
  • UI- Touchscreen gestures- swipe, zoom, pinch, multi-touch, shake
  • Pre-install software (Such as for export or import file)?
  • Check if battery down
  • Check making/Receiving voice calls while the app is running
  • Check memory utilise overflow
  • Check resuming App from the same point as left at the time of switching to another app
  • Check data will be saved (SD card / internal memory)
  • Check happened if memory (SD card / internal memory) full and try to export
  • Check in portrait / landscape mode?
  • Check application for empty / large database
  • Check screen off / screen saver off.
  • What are difference real device and emulator?
  • Check minimise app while loading shows

Connectivity and Network Issues

  • Check data connection will be used (Mobile operator / wifi)
  • Check if data connection loss while saving data
  • Check if data connection slow while saving data
  • Check both connection are open; Now, lost wifi connection what will be happen; Vice versa
  • Check both connection are open; Now, slow wifi connection what will be happen; Vice versa
  • Check shows error message if connection failed
  • Check app bandwidth consumption

User Experenice

User Experience

  • Check app logo
  • Check menu logo
  • Check list page are searchable
  • Check list page are sortable
  • Check list page are filterable
  • Check screen resolution?
  • Check how many columns will display in list / details page?
  • Check able to export from list page?
  • Check able to print from list/ details page?
  • Check able to create design custom forms details page?
  • Check able to fill up fields in details page?
  • Check able to click button in list /details page?
  • Check navigation across different screen
  • Check responsiveness of the App Logo and Name
  • Check easy navigation across different screens
  • Check responsiveness of drop down lists
  • Check prompt display of errors and warning messages
  • Check spelling, typo and grammar in all kind of messages and labels
  • Check inactive buttons and active buttons
  • Check date format or date picker
  • Check amount with rounding figure
  • Check currency format
  • Check text field format
  • Check number key pad when number text field
  • Check auto save available
  • Check delete feature
  • Check Custom name feature or behaviour
  • Check sent email from on screen
  • Check description field enough space to enter data
  • Check easy way to ‘collapse or expand’ all data
  • Check all select feature in list page
  • Check user profile settings
  • Check notification feature available (Such as if new project add, delete or modified notification)
  • Check app version

Data Testing

  • Data Sync issue (If data added from mobile app but not showing in web app. Vice versa)
  • API testing
  • Check image / document upload and limitation
  • Check document / image view feature
  • Check list page data count shows or not
  • Check server down time
  • Check xero/ other third party software data sync (if applicable)
  • Check CRUD operation
  • Check concurrency message
  • Check will data save offline mode
  • Check data create/update/delete in offline but what will be happened when its in online
  • Check previous data access cache

Security Testing

  • Check login credential attach with mobile fingerprint
  • Check ‘Remmber me’ feature in login
  • Check app sign out / Sign in feature
  • Check cache clear and run application again
  • Check user logged in but inactive / locked from admin
  • Check non admin user logged in what data s/he can access
  • Check customer’s data security
  • Check customer payment data security
  • Check network protocols security for running application
  • Check user security policy
  • Check one user can see another user data or information
  • Check antivirus related issue

Performance Issue

  • Check time taken to launch the application
  • Check application performance at times of peak load conditions and continual key pad entry
  • Check splash performance check and ensuring it remains on screen for less than 1~2 seconds
  • Check application performance in low device battery and charging conditions
  • Check Integration with the device and other applications without hampering performance
  • Check application install/uninstall successfully within the desired timeframe
  • Check displaying error messages and exits gracefully at times of low memory issues
  • Check app performance at the time of a Network problem and error alert prompts
  • Check application performance when the Network is back in action
  • Check memory Consumption
  • Check hardware Utilisation
  • Check app behaviour if app crashed
  • Check device performance
  • Check server performance
  • Check network performance
  • Check Install or update app feature
  • Check OS based app limitation

Feedback Feature

  • Check ‘Contact Us’ feature
  • Check help guide available
  • Check legal feature available (Such as ‘Term and condition’ and ‘Privacy Policy’)

When search value in all tables under a database

If someone wants to search by specific value in database, it’s difficult to search a value whole database. Below code easy way to find out

DECLARE @SearchStr nvarchar(100)
SET @SearchStr = 'test@test.com.au'
 
CREATE TABLE #Output (TableLocation nvarchar(370), Details_Information nvarchar(3630))
 
SET NOCOUNT ON
 
DECLARE @SearchTableName nvarchar(256), @ColumnName nvarchar(128), @SearchStr2 nvarchar(110)
SET  @SearchTableName = ''
SET @SearchStr2 = QUOTENAME('%' + @SearchStr + '%','''')
 
WHILE @SearchTableName IS NOT NULL
 
BEGIN
    SET @ColumnName = ''
    SET @SearchTableName = 
    (
        SELECT MIN(QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME))
        FROM     INFORMATION_SCHEMA.TABLES
        WHERE         TABLE_TYPE = 'BASE TABLE'
            AND    QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) > @SearchTableName
            AND    OBJECTPROPERTY(
                    OBJECT_ID(
                        QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME)
                         ), 'IsMSShipped'
                           ) = 0
    )
 
    WHILE (@SearchTableName IS NOT NULL) AND (@ColumnName IS NOT NULL)
         
    BEGIN
        SET @ColumnName =
        (
            SELECT MIN(QUOTENAME(COLUMN_NAME))
            FROM     INFORMATION_SCHEMA.COLUMNS
            WHERE         TABLE_SCHEMA    = PARSENAME(@SearchTableName, 2)
                AND    TABLE_NAME    = PARSENAME(@SearchTableName, 1)
                AND    DATA_TYPE IN ('char', 'varchar', 'nchar', 'nvarchar', 'int', 'decimal')
                AND    QUOTENAME(COLUMN_NAME) > @ColumnName
        )
 
        IF @ColumnName IS NOT NULL
         
        BEGIN
            INSERT INTO #Output
            EXEC
            (
                'SELECT ''' + @SearchTableName + '.' + @ColumnName + ''', LEFT(' + @ColumnName + ', 3630) FROM ' + @SearchTableName + ' (NOLOCK) ' +
                ' WHERE ' + @ColumnName + ' LIKE ' + @SearchStr2
            )
        END
    END   
END
 
SELECT TableLocation, Details_Information FROM #Output
 
DROP TABLE #Output

how to get restore history in sql server

SELECT [rs].[destination_database_name],
[rs].[restore_date],
[bs].[backup_start_date],
[bs].[backup_finish_date],
[bs].[database_name] as [source_database_name],
[bmf].[physical_device_name] as [backup_file_used_for_restore]
FROM msdb..restorehistory rs
INNER JOIN msdb..backupset bs
ON [rs].[backup_set_id] = [bs].[backup_set_id]
INNER JOIN msdb..backupmediafamily bmf
ON [bs].[media_set_id] = [bmf].[media_set_id]
ORDER BY [rs].[restore_date] DESC

How to read a CSV file and store the values into an array in C#?

A CSV file is a comma-separated file, that is used to store data in an organized way.

Data.csv
A,B,C

Example

using System;
using System.IO;
using System.Collections.Generic;

   class Program
    {
        public static void Main()
        {
            string FilePath = @"C:\Sample\Data.csv";

            StreamReader reader = null;

            if (File.Exists(FilePath))
            {
                reader = new StreamReader(File.OpenRead(FilePath));

                List<string> listData = new List<string>();

                while (!reader.EndOfStream)
                {
                    var line = reader.ReadLine();

                    var values = line.Split(',');

                    foreach (var item in values)
                    {

                        listData.Add(item);

                    }
                    foreach (var row1 in listData)
                    {

                        Console.WriteLine(row1);

                    }
                }
            }
            else
            {
                Console.WriteLine("File doesn't exist");
            }
            Console.ReadLine();
        }
    }

Output

A
B
C

How to clear database log write script in MS SQL Server

1. Open SQL Query
2. Type below script (Assuming Database name ‘SampleDB’)
USE [SampleDB];
GO
— Truncate the log by changing the database recovery model to SIMPLE.
ALTER DATABASE [SampleDB]
SET RECOVERY SIMPLE;
GO
— Shrink the truncated log file to 1 MB.
DBCC SHRINKFILE (‘SampleDB_log’, 1);
GO
— Reset the database recovery model.
ALTER DATABASE [SampleDB]
SET RECOVERY FULL;
GO

How to check how many users are connected to a SQL Server

You can retrieve information about the number of connected users to a SQL Server. It is also possible to check which users are connected to a particular database.

Few examples in below:

Example 1: To check all users and process connection


select @@servername as server, count(distinct usr) as users, count(*) as processes from

( select sp.loginame as usr, sd.name as db

 from sysprocesses sp join sysdatabases sd on sp.dbid = sd.dbid ) as db_usage

Example 2: To check individual users and process connection

select Users, count(distinct db) as Databases, count(*) as processes from

( select sp.loginame as Users, sd.name as db

 from sysprocesses sp join sysdatabases sd on sp.dbid = sd.dbid ) as db_usage

group by Users

order by Users

Example 3: To check database, user and process connections

select db, users, count(*) as processes from

( select sp.loginame as users, sd.name as db

 from sysprocesses sp join sysdatabases sd on sp.dbid = sd.dbid ) as db_usage

where db like('%')

group by db, users

order by db, users

Database to Single-user Mode in MS SQL Server 2008

Today I will discussed about, how to restrict access to single user.

Why need restrict access database?

* Single-user mode specifies that only one user at a time can access the database and is generally used for maintenance actions.

* When multiple users are connected to the database at the time that you set the database to single-user mode, their connections to the database will be closed without warning.

How to setup database to single user mode.

Step 1: Go to Start menu > All Programs > Microsoft SQL Server 2008 > SQL Server Management Studio and Connect to database server

 

 

 

 

 

 

 

Step 2: Right-click the database and click Properties.

Step 3:  In Database Properties dialog box, click Options page from left menu.

Step 4: Select SINGLE_USER  from the Restrict Access option

Step 5: If other users are connected to the database, an Open Connections message will appear. To change the property and close all other connections, click Yes.

How to setup selenium WebDriver with Nunit and Visual Studio (C#)

Selenium is an open source software tools which supporting tests automation. Now days, Software automation tools are becoming popular. Software automation tools are a time efficient. You will find different kinds of software automation tools, such as Load Runner, QTP, MS Test Manager, Jmeter etc. Selenium webdriver is a one of them. It is most popular automation tools.

 

Today, I am going to discussed about how to run selenium WebDriver with Nunit and Visual Studio (C#)

 

  • Download Nunit (http://www.nunit.org) and install in your system
  • Download selenium web-driver (http://docs.seleniumhq.org/download)
  • Open a new project and Create a Class Library
  • Add reference webdriver dll (selenium-dotnet-2.35.0 > net40) and nunit dll (Where you installed).

Webdriver dll

Nunit Dll

Or you can add Nunit dll from assemblies > Extension

  • When all of this is done and you can start write a code

Point 1:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

using NUnit.Framework;

using OpenQA.Selenium;

using OpenQA.Selenium.Firefox;

using OpenQA.Selenium.Internal;

using OpenQA.Selenium.Support.UI;

 

Point 2:

namespace Automation

{
[TestFixture]
public class framework
{
private IWebDriver driver;
[SetUp]

public void LoadDriver()
{
Console.WriteLine("Check SetUp");
driver = new FirefoxDriver();
// To Maximise browser
 driver.Manage().Window.Maximize();
}

[Test]
public void Login()
{
driver.Navigate().GoToUrl("http://localhost/nopcommerce/login");
Console.WriteLine("Check URL");

// Type UserName
driver.FindElement(By.Id("Email")).SendKeys("admin@yourStore.com");

// Type Password
driver.FindElement(By.Id("Password")).SendKeys("admin");

// Clicked on Login Button
driver.FindElement(By.CssSelector("input.button-1.login-button")).Click();
}

[TearDown]
public void UnloadDriver()
{
Console.WriteLine("TearDown");
driver.Quit();
}
}
}

Above marked area. Just described how you will get id from login page

  • Build your application or press (Ctrl + Shift + B)
  • You have to run Nunit window to run this code.
  • Now, open a project from file menu and choose the project dll file or you can drag and drop the dll.
  • Click on ‘Run’ button to define result pass / fail

How to enable FILESTREAM in SQL Server 2008 (After Install)

If you forgot to enable FILESTREAM when install SQL Server 2008.

Don’t worry about it. You can enable FILESTREAM later.

To enable filestream settings:

1.  Go to Start menu > All Programs > Microsoft SQL Server 2008 > Configuration Tools > SQL Server Configuration Manager.

2.  If asking for user account control then click yes

3. In the list of services, right-click SQL Server Services, and then click Open

4. Now go to Filestream tab and ticked ‘Enable FILESTREAM for Transact-SQL access’.

5. If you want to read and write FILESTREAM data from Windows, click Enable FILESTREAM for file I/O streaming access. Enter the name of the Windows share in the Windows Share Name box.

6. If remote clients must access the FILESTREAM data that is stored on this share, select Allow remote clients to have streaming access to FILESTREAM data

7.  Click Apply

 8. Go to SQL Server Management Studio, click New Query to display the Query Editor

9. In Query Editor, enter the following Transact-SQL code:

EXEC sp_configure filestream_access_level, 2
RECONFIGURE

 

10. Click Execute or Press ‘F5’ button

11. Make File-stream access level full

12. Restart the SQL Server service