Search This Blog

Tuesday, 20 October 2020

Some cloud based Mobile App for Manual as well as Automation Testing

 What do you mean by Device cloud?

In simple word accessing mobile devices from a remote location. here you will get a feel of the virtual device but you are actually accessing real-time devices.

Testing in the cloud brings benefits of easy availability and high scalability. It allows testing on different environments and multiple machines without building own infrastructure.

It allocates the required resources using virtualization and also scales up resources anytime without affecting the entire system. The major advantage of using cloud-based device testing is that it is cost-effective and provides faster results.

Advantages:- 

  • Cheaper - here you need a subscribe it and you can access a good list of devices in both platforms (iOS/Android)
  • Anyone can access those devices by anywhere by using the credentials.
  • You will be getting more no. of devices to do compatibility testing as an organisation getting all devices for the platform is not possible and involve a lot of Money.
  • We can also install the data in the Cloud. 
  • Usually, most of the leading provider lists the latest devices in a span of 15 days to 2 Months (Max.) as per as the need and market share and demand.
  • Tester gets an array of devices, OS platforms, etc. to choose from thereby reducing the overall cost of infrastructure and maintenance.
  • It allows integration with team collaboration tools like JIRA and Slack etc.
  • It supports testing in a real-time environment with real network carriers (Low/high latency, 100% loss, Low network, etc.)
  • Also, it supports parallel testing where you can execute the concurrent test to saves a lot of time during the test cycle.
Disadvantages:- 
  • Data Security - As you are using 3rd party Application so always a concern of security.
  • Performance - You will feel some lag in most of the leading Mobile cloud provider.
  • Connectivity- As you are accessing it through the internet so always need an internet connection. A low connection may result in the delay and you may not able to access the device.
  • Not able to connect external hardware.
  • The device camera gives a black/blank view.
  • Scanning some bar code or something. 
  • Some Mobile cloud provider also not provide support to Push notification and Touch/Face id.

Some Leading Mobile Device cloud Provider
  • BrowserStack
    • BrowserStack is a cloud web and mobile testing platform that enables developers to test their websites and mobile applications across on-demand browsers, operating systems and real mobile devices, without requiring users to install or maintain an internal lab of virtual machines, devices or emulators. They have four primary products- Live, App Live, Automate and App Automate.
    • Pricing Structure
      • $99/ month - 2 Parallel tests up to 5 users for Manual Mobile App Testing
      • $199/ month - 4 Parallel tests up to 10 users for Manual Mobile App Testing
      • $499/ month - 10 Parallel tests up to 25 users for Manual Mobile App Testing
      • $199/ month - 1 Parallel for  Mobile test Automation
      • $399/ month -2 Parallel for  Mobile test Automation
      • $999/ month - 5 Parallel for  Mobile test Automation
    • Free Trial Details
      •  You receive 30 minutes of testing on Live, 
      • 100 minutes of testing on Automate, 
      • 100 Screenshots + Responsive, 
      • 30 minutes of testing on App Live and 
      • 100 minutes of App Automate.
  • AWS Device Farm 
    • The AWS Device Farm is an app testing service that allows you to test and interact with your Android, iOS, and Web Apps on multiple devices in one go and even reproduce the issues on a device in real-time! This device would let you look at videos, screenshots, logs, and performance data to zero in on issues with the app and take care of them before the app is launched.
    • Pricing Structure
      • $0.17/device minute, with first 1,000 minutes free
      • Unlimited testing starts at $250/month
      • The private device starts at $200/month
    • Free Trial Details
      • There is a 150-minute limit to the duration of a remote access session.
      • There is a 150-minute limit to the duration of an automated test run
  • Perfecto
    • Their Continuous Quality Lab helps you to organize your business easily by improving the digital experiences that identify it. They have 14 greatly secure data centres where thousands of real devices have been homed and which can be accessed from any browser and you can easily leave the actual device management in their expert hands. They actually save up millions for their customers simply by eliminating manual testing.
    • Pricing Structure
      • Basic – $99 a month or $1,188 a year
      • Advanced – $299 a month or $3,588 a year
      • Enterprise – where you need to contact the company to get a quote
    • Free Trial Details
      • Your 14-day free trial includes:
      • 240 minutes of free live and automated testing.
      • Instant access to the most popular real mobile devices in our secure, public cloud.
      • Dedicated VMs for cross-browser testing.
      • Seamless integrations with popular DevOps tools and automation frameworks like Selenium and Appium.
  • Kobiton
    • The device, Kobiton is essentially a mobile cloud platform that helps the users carry out both, manual and/or automated testing on physical devices whether they are iOS or Android-based.
    • Pricing Structure
      • Indie – $10 a month or $100 a year
      • Team – $199 a month or $2,000 a year
      • Growing Biz – $499 a month or $5,000 a year
    • Free Trial Details
      • 120 Device Minutes
      • Access to over 30 real devices
      • Unlimited Users
      • Unlimited concurrent sessions
      • Manual or Automated Testing
  • Sauce Labs
    • Sauce Labs let you test your mobile app across iOS & Android physical devices, emulators and simulators on their public cloud or even on dedicated devices on a private cloud. You can even run automated tests in order to speed up their release and carry out manual spot-checking in order to identify the issues promptly. This means that you can easily access hundreds of different devices without having to go through the trouble of locating or maintaining all of them.
    • Pricing Structure
      • Manual – $29 a month
      • Individual – $199 a month
      • Expert – $399 a month
      • Professional – $499 a month
      • Small Team – $699 a month
      • Enterprise – where you need to contact the company to get a quote
    • Free Trial Details
      • 14-day duration of the free trial. 
      • The Customer Support team also cannot extend your free trial.
  • pcloudy
    • Public Cloud is designed to increase the App Testing coverage while saving significant time and cost. It allows access to real devices in a single click by using any Html5 browser. With security being a key factor, pCloudy makes sure that information over secure web sockets is protected.
    • Pricing Structure
      • $369 / monthly-  10 parallel live sessions
      • $599 / monthly -  5 parallel devices for Automation AND  5 parallel live sessions
    • Free Trial Details
      • Free trials are given for 60 minutes.
      • You get access to the platform to evaluate the same. We provide 60 minutes of credit to access the limited set of devices and access to all the features associated with manual testing.

Wednesday, 6 April 2016

How to Install any iPA files through iTunes for apple device?


Installing a iPA file


  •  Ask concern person to create an iPA file or send that iPA to your email id.

  • Download that iPA file from your email id.
  • Connect your phone your system
  • Open iTunes in your system and select the connected phone.


  • Drag and drop iPA files under on my Device.

  • It should get installed in the connected iPhone
  • By any chance if the drag and drop is not working then it's time to check the below settings for syncing the data

.

Tuesday, 5 April 2016

How to debug/Inspect web wrapped/web page in iPAD and iPhone (Apple devices)?


  • Open your URL or web wrapped page in Simulator or in real device.
    • If we open any URL then open it on safari browser.
    • If we are open any web wrapped page or URL in Apple devices then we need to connect devices through cables.

  • Once your expected URL or web wrapped page get load on device/Simulator then open your safari browser in mac. 
  • Click on Safari browser, You will get option of develop under menu bar of safari.
  • Click on Develop >> Simulator /Select connected device (In Case of real device) >> You will get your entered URL (Select this) 




  • Now you will get the details of the web wrapped/ URL.

     

Monday, 4 April 2016

How to Install Android Studio in Mac System?

   

  1. Check Java is installed in your system or not by using a terminal as below.
  2. Open a terminal and use below command
    • java -version 
  3. If it'snot installed then need to install Java JDK from below link:-
  4.  Install JDK by accepting terms and click on next>> Next and Next.
  5. Now need to set up the JAVA_HOME in the environment variable.
  6. Need to follow the below steps:- 
    • Check the JAVA_HOME is set up or not by using below command in terminal
      • echo $JAVA_HOME (If it doesn't give the output then it's not set)
    • If it's not installed then go to your home directory by using below command in terminal
      • cd ~/
    • Now you need to check, in hidden files, you are having a .bash_profile or not for checking this use below command
      • ls -al (It will list all the files including hidden one too)
    • If .bash_profile is not there then we need to create a file by using below command in terminal
      • touch .bash_profile (It will create a file)
      • now again use a command 'ls -al' in the terminal and you will find the '.bash_profile'
    • Now you need to open the .bash_profile in the editor and need to follow below command in terminal 
      • open -e .bash_profile (It will open a file in the editor)
    • Now need to set up the JAVA_HOME in the editor of .bash_profile by below 
      • export JAVA_HOME=$(/usr/libexec/java_home) and save.
    • Now to check either it's set or not quit your terminal and again type the command in new terminal as same as before 'echo $JAVA_HOME' (It will show the location of JAVA_HOME)
  7.  Now need to install Android studio and for the same need to download it from below link
  8. Install it and drag and drop in the Application folder and open Android studio by double click.
  9. If you are upgrading then select 1st Option "Custom Location ...' else for very 1st-time select 'Do not import settings'
  10. Just do Next>>Custom (Option select)>>Next>>Select UI Theme>>Next>> Select the component you want to install (select all option) and Next>>Give memory as recommended>>Next>>Next>>Finish.
  11. Open your Application now or create a new one and follow the steps by providing the project name and next and select as per as you need and GO ON.

Happy Coding

Tuesday, 25 August 2015

UNIX - As a Tester point of view


UNIX - As a Tester point of view 
It covers below points:-
  • UNIX Overview
  • UNIX Types
  • Kernel, Shell and File and Processes.
  • UNIX Commands.
  • UNIX Commands example.
  • IT will contain maximum basics question for software tester related with UNIX Interview.
  • UNIX
UNIX is an operating system which was first developed in the 1960s, and has been under constant development ever since. By Operating system, we mean the suite of programs which make the computer work. It's a stable,multi-user, multi-Tasking system for servers, desktops and laptops.

UNIX systems also have a graphical user interface similar to Microsoft Windows which provides an easy to use environment. However, knowledge of UNIX is required for operations which aren't covered by a graphical program, or for when there is no windows interface available, e.g:- in a telnet session.

Types/Versions of UNIX
There are many different versions of UNIX, although they share common similarities. The most popular varieties of UNIX are Sun Solaris,GNU/Linux, and Mac OSX.

UNIX operating system is made up of three parts i.e:- The Kernel, The Shell and The Programs.


  • The Kernel
 The kernel of UNIX is the hub of the operating system:- It allocates time and memory to programs and handles the file store and communications in response to system calls.
As an illustration of the way that the shell and the kernel work together, suppose a user types rm myfile (which has the effect of removing the file myfile). The shell searches the filestore for the file containing the program rm, and then request the kernel, through system calls, to execute the program rm on myfile. When the  process rm myfile has finished running, the shell ten returns the UNIX prompt % to the user, indicating that it is waiting for further commands.

  • The shell
The shell acts as an interface between the user and the kernel,. When a user logs in, the login program checks the username and password, and then starts another program called the shell. The shell is a command line interpreter. It interprets the commands the user types in and arranges for them to be carried out. The commands are themselves programs: when they terminate, the shell gives the user another prompt (% on our systems).
The adept user can customize hie/her own shell, and user can use different shells on the same machine. Staff and students in school have the tcsh shell by default.
The tcsh shell has certain features to help the user inputting commands.Filename Completion:- By typing part of the name of command, filename or directory and pressing [Tab]key, the tcsh shell will complete the rest of the name automatically. If the shell finds more than one name beginning with those letters you have typed, it will beep, prompting you to type a few more letters before pressing the tab key again.
 History - The shell keeps a list of commands you have typed in. If you need to repeat a command, use the cursor keys to scroll up and down the list or type history for a list of previous commands.
  • Files and Processes
Everything is UNIX is either a file or a process.
A process is an executing program identified by a unique PID (Process Identifier).
A file is a collection of data. They are created by users using text editors, running compilers etc.

Example of files:
  • a document (report, essay etc).
  • the text of a program written in some high-level programming language
  • instruction comprehensible directly to the machine and incomprehensible to a casual user, for example, a collection of binary digits (an executable or binary file);
  • a directory, containing information about its contents, which may be a mixture of other directories (sub-directories) and ordinary files.
The Directory Structure  
All the files are grouped together in the directory structure. The file-system is arranged in a hierarchical structure, like an inverted tree. The top of the hierarchy is traditionally called root (written as a slash)
Some useful UNIX Commands
  • cat                                                         for creating and displaying short files         
  • chmod                                                  change permissions
  • cd                                                         change directory
  • cp                                                         for copying files
  • date                                                      display date
  • echo                                                      echo argument
  • ftp                                                         connect to a remote machine to download or upload files
  • grep                                                      search file
  • head                                                     display first part of file
  • ls                                                          see what files you have
  • lpr                                                         standard print command
  • more                                                     use to read files
  • mkdir                                                    create directory
  • mv                                                        for removing and renaming files
  • ncftp                                                     especially good for downloading files via anonymous ftp.
  • print                                                      custom print command (see also lpr)
  • pwd                                                       find out what directory you are in
  • rm                                                         remove a file
  • rmdir                                                     remove directory
  • rsh                                                         remote shell
  • setenv                                                    set an environment variable
  • sort                                                        sort file
  • tail                                                         display last part of file
  • tar                                                          create an archive, add or extract files
  • telnet                                                     log in to another machine
  • wc                                                         count characters, words, lines
 Examples of UNIX commands
cat
This is one of the most flexible UNIX commands. We can use to create, view and concatenate files. For our first example we create a three-item English-Spanish dictionary in a file called "dict."
%cat > dict
red rojo
green verde
blue azul
<control-D>
<control-D> stands for "hold the control key down, then tap 'd". The symbol >tells the computer that what is typed is to be put into the file dict. To view a file we use cat in different way:
% cat dict
red rojo
green verde
blue azul
%
If we wish to add text to an existing file we do this:
% cat >>dict
white blanco
black negro
<control-D>
%  
Now suppose that we have another file tmp that looks like this:
% cat tmp
cat gato
dog perro
%
Then we can join dict and tmp like this:
% cat dict tmp>dict2
We could check the number of lines in the new file like this:
%wc -l dict2
The command wc counts things --- the number of characters, words, and line in a file.

chmod
This command is used to change the permissions of a file or directory. For exampe to make a file essay.001 readable by everyone, we need to do this:
%chmod a+r essay.001
To make a file, e.g; a shell script mycommand executable, we do this
%chmod +x mycommand
Now we can run mycommand as a command.
To check the permission of a file, use ls-l . For more information on chmod use man chmod.
cd
Use cd to change directory. Use pwd to see what directory you are in.
%cd english
%pwd
% /u/ma/jeremy/english
% ls
novel poem
% cd novel
% pwd
% /u/ma/jeremy/english/novel
% ls
ch1 ch2 ch3 journal scrapbook
% cd..
% pwd
% /u/ma/jeremy/english
% cd poems
% cd
% /u/ma/jeremy
Jeremy began in his home directory, then went to his english sub-directory. He listed this directory using ls , found that it contained two entries, both of which happen to be directories. He cd'd to the directory novel, and found that he had gotten only as far as chapter 3 in his writting. Then he used cd.. to jump back one level. If had wanted to jump back one level, then go to poems he could have said cd../poems. Finally he used cd with no argument to jump back to his home directory.
 cp
Use  cp to copy files or directories.
% cp foo foo.2
This makes a copy of the file foo.
% cp ~/poems/jabber.
 This copies the file jabber in the directory poems to the current directory. The symbol "." stands for the current directory. The symbol "~" stands for home directory.
date
Use this command to check the date and time.
% date

echo
The echo command echoes its arguments. Here are some example.
% echo this
this 
% echo $EDITOR
/usr/local/bin/enmacs
% echo $PRINTER
b129lab1
Things like PRINTER are so called environment variables. This one stores the name of the default printer -- the one that print jobs will go to unless you take some action to change things. The dollar sign before an environment variable is needed to get the value in the variable. Try the following to verify this:
% echo PRINTER
PRINTER  
ftp
Use ftp to connect to a remote machine, then upload or download files. See also: ncftp
Example 1:- We'll connect to the machine fubar.net, then change the director to mystuff, then download the file homework11:
% ftp solitude
connected to fubar.net
220 fubar.net FTP server (version-------date time------) ready.
Name (solitude:carlson): jeremy
331 Password required for jeremy.
Password:
230 User jeremy logged in.
ftp> cd mystuff
250 CWD command successful.
ftp> get homework11
ftp> quit 
Example 2:- We'll connect to the machine fubar.net, then change the director to mystuff, then upload the file collected-letters:
% ftp solitude
connected to fubar.net
220 fubar.net FTP server (version-------date time------) ready.
Name (solitude:carlson): jeremy
331 Password required for jeremy.
Password:
230 User jeremy logged in.
ftp> cd mystuff
250 CWD command successful.
ftp> put collected-letters
ftp> quit
The ftp program sends files in ascii(text) format unless you specify binary mode:

ftp> binary
ftp> put foo
ftp> ascii
ftp> get bar
The file foo was transferred in binary mode, the file bar was transferred in ascii mode.
grep
Use this command to search for information in a file or file. For example, suppose that we have a file dict whose contents are
red rojo
green verde
blue azul
white blanco
black negro 
Then we can look up items in our file like this;
% grep red dict
red rojo
% grep blanco dict
white blanco
% grep brown dict
%
Notice that no output was returned by grep brown. This is because "brown" is not in our dictionary file. 
Grep can also be conbined with other commands. For example, if one had a file of phone numbers named "ph", one entry per line, then the following command would give analphabetical list of all persons whose name contains the string "Fred".
% grep Fred ph | sort
Alpha, Fred:333-6565
Beta, Freddie: 656-0099
Frederickson, Molly: 444-0981
Gamma, Fred-George: 111-7676
Zeta, Frederick:431-0987
The symbol "|" is called "pipe." It pipes the output of the grep command into the input of the sort command.
For more info on grep, consult
% man grep

 

Friday, 22 May 2015

Tips For Writing a Good Bug Report

8 Tips For Writing a Good Bug Report

Unfortunately for developers, defect is an integral part of the software development process. The more efficient bug report, the more chances that defect will be fixed. Reporting a defect is a skill, so to become a pro in testing you need to achieve this skill.
I hope you will gain something after reading next tips.


1) Report the problem immediately

Don’t wait to write bug report late because you can miss the important details. If you found any defects while testing, report it immediately.

2) Clear title

Keep it short. It is very important to grasp the essence of the defect from the title. Also it will help the sys admin to find it through the large database for assigning to the correct developer.

3) One defect per report

No more, no less. A single bug in a report can help to avoid duplication and confusion. If you describe too many defects some of them may be overlooked.

4) Reproduce the bug before writing bug report

Make sure your actions lead to reproducing the bug without ambiguity. The defect should be reproducible.

5) Write a good bug summary


It will be easier for developer to analyze bug nature. Poor defect reports waste testing and development time.

6) Test the same defect occurrence on the few similar modules

Most of developers use the same code for different modules. It gives more chances that defect in one module occurs in other similar modules.

7) Read bug report carefully

Try to read thoughtfully bug report before hitting Submit button. Check if all of the phrases wrote implicit without ambiguity sense to avoid misinterpretation.

8) Don’t be rude

Use polite words in your report. You did really good job – had found the defect, but don’t criticize developer this way.

Most of the testers don’t like to write reports thinking it waste their time. But bug report is very important document and must be written in proper way. It connects tester, developer and manager. Writing a good bug report helps your company to save resources as well as create a good relationship between tester and developer.

Thursday, 21 May 2015

Alpha, Beta and Gamma Testing

What are Alpha, Beta and Gamma Testing?

Alpha Testing:- 
                      Alpha Testing is like performing usability testing, which is normally done by the in-house developers. On rare occasions Alpha Testing is done by the client or an outsider. Once the alpha testing version is released, it’s then called the Alpha Release.Generally we perform all testing types in alpha testing phase. Alpha testing phase ends with a feature freeze, indicating that no more features will be added to the software. Types of testing done by tester in Alpha phase includes Smoke testing, Integration Testing, System testing, UI and Usability testing, Functional Testing, Security Testing, Performance Testing, Regression testing, Sanity Testing and Acceptance Testing.

Beta Testing:-
                   Beta Testing is done by the number of the end users before delivery, the change request would be fixed if user gives the feedback or report defects. The Version Release after beta testing is called beta Release.Beta testing can be considered “pre-release testing”. Beta test versions of software are now distributed to a wide audience on the Web partly to give the program a “real-world” test and partly to provide a preview of the next release.The main objective behind the Beta testing is to get the feedback from the different groups of customers and check the compatibility of the product in different kind of networks and hardware.

Gamma Testing:-
                         Gamma Testing is done when software is ready for release with specified requirements, this testing done directly by skipping all the in-house testing activities. The software is almost ready for final release. No feature development or enhancement of the software is undertaken and tightly scoped bug fixes are the only code.Gamma check is performed when the application is ready for release to the specified requirements and this check is performed directly without going through all the testing activities at home.Gamma testing is the third level of testing, generally for safety. Unfortunately, Gamma testing is becoming a thing of the past, killed off by decreased time cycles, competitive pressure, and the myopic focus on quarterly profits.

Wednesday, 25 March 2015

Setup MonkeyTalk for Android and iOS

Below are the steps through which we can setup Monkeytalk Automation tool on windows and perform automation:-

  1. Download MonkeyTalk for gorilla logic website and unzip it. Download MonkeyTalk
  2. Open Eclipse and convert your project on "Aspectj" (need a plugin aspectj - for eclipse)- Once it get downloaded right click on your app,configure,Convert to aspectj.
  3. Then under your project folder structure search for "libs" folder if it's exist then ok else create it.
  4. Once it get done go to monkeytalk,agents,android,Monkeytalk jar file. Copy it and paste it under libs folder.
  5. Once it done click on "jar" file and right click on it,Aspectj tools,Add to aspect path.
  6. Then go to Androidmanifest.xml file where we have to add some permissions:-
    <Uses-permissions android:name="android.Permission.INTERNET/>
    <Uses-permissions android:name="android.Permission.Get_TASKS/>
  7. Go to project click on it,Right click,properties,Java Build Path,Check the "Aspectj Runtime Library,Ok.
  8. Run your application as a Android application.
  9. Open monkey talk.
  10. Create new project>>Create new script.
  11. Then set the android sdk path under prefences; MonkeyTalk,MonketTalk Prefences,Android SDK path,ok.
  12. Connect to emulator on monkeytalk.
              Now you will be able to record and play in MonkeyTalk.
Some start up code for your reference eg; if we have two textfield username and password and one button submit.
app.input("username").entertext("aakash");
app.input("password").entertext("jaiswal");
app.button("submit").tap();
 
-----------------------------------------------------------------------------------
----------------------------------------------------------------------------------- 

Below are the steps through which we can setup Monkeytalk Automation tool on Mac and perform automation
  1. Download MonkeyTalk and put it on desktop. Download MonkeyTalk
  2. Double click on Monkeytalk zip file.
  3. Open your project on xcode.
  4. Duplicate your project; Right click on Target>>Your project (duplicate only)  
  5. Rename it like (Monkey).
  6. Go to on the upper side of xcode select the app with a extension of copy; Manage schemes
  7. Also rename project + copy as (Monkey).
  8. Go to home Screen>>Add files>>Monkey (not any other app)>>Checkbox.
  9. Go to MonkeyTalk>>Agent>>iOS>>Lib monkey--- click on add.
  10. Add some more files
    • libs SQL 3.0 file
    • Quartz core
    • CF Network
  11. Now go to Build Settings--------------linking>>Other linker flags-- Add
    • -all_load -lstdc++
  12. Run the app and see the output.


How to edit the Accessibility Label
  1. Search for .xib files in Xcode under your project.
  2. Open each xib files.
  3. Once it get open go to 3rd option on left pannel.
  4. Go on Accessibility (Check the checkbox)
  5. write some generic name on label textbox.

Tuesday, 24 March 2015

Eclipse Setup for Android Development

Below are the steps are process to setup eclipse for Android development:-

  1. First user need to install eclipse from Eclipse IDE for Java Developers.
  2. For getting started with android we need to install ADT and SDK.
  •  Installing ADT
  1. Click on Help>>Install New Software >>Give the url of ADT (https://dl-ssl.google.com/android/eclipse/)
  • Need to install below components under Developer Tools
    • DDMS
    • Dev Tools
    • Hierarchy Viewer
    • Trace View
  •  Installing SDK
    1. Click on Android SDK Manager on sub menu of eclipse
    2. Need to install only needed SDK i.e:
      • SDK Platforms Tools
      • Android SDK Tools
      • Build Tools (preferred latest one:- only one build tool work)
      • Android Version
        • SDK Platform
        • System Image
          • for mac - intel86
          • for windows - armeabi
      • Google Play service (In case if you are using Google service in your project) 

    Friday, 20 March 2015

    List of HTTP status codes

     When a browser requests a service from a web server, an error might occur. 

    This is a list of HTTP status messages that might be returned:

    1xx: Information

    Message: Description:
    100 Continue The server has received the request headers, and the client should proceed to send the request body
    101 Switching Protocols The requester has asked the server to switch protocols
    103 Checkpoint Used in the resumable requests proposal to resume aborted PUT or POST requests

    2xx: Successful

    Message: Description:
    200 OK The request is OK (this is the standard response for successful HTTP requests)
    201 Created The request has been fulfilled, and a new resource is created 
    202 Accepted The request has been accepted for processing, but the processing has not been completed
    203 Non-Authoritative Information The request has been successfully processed, but is returning information that may be from another source
    204 No Content The request has been successfully processed, but is not returning any content
    205 Reset Content The request has been successfully processed, but is not returning any content, and requires that the requester reset the document view
    206 Partial Content The server is delivering only part of the resource due to a range header sent by the client

    3xx: Redirection

    Message: Description:
    300 Multiple Choices A link list. The user can select a link and go to that location. Maximum five addresses  
    301 Moved Permanently The requested page has moved to a new URL 
    302 Found The requested page has moved temporarily to a new URL 
    303 See Other The requested page can be found under a different URL
    304 Not Modified Indicates the requested page has not been modified since last requested
    306 Switch Proxy No longer used
    307 Temporary Redirect The requested page has moved temporarily to a new URL
    308 Resume Incomplete Used in the resumable requests proposal to resume aborted PUT or POST requests

    4xx: Client Error

    Message: Description:
    400 Bad Request The request cannot be fulfilled due to bad syntax
    401 Unauthorized The request was a legal request, but the server is refusing to respond to it. For use when authentication is possible but has failed or not yet been provided
    402 Payment Required Reserved for future use
    403 Forbidden The request was a legal request, but the server is refusing to respond to it
    404 Not Found The requested page could not be found but may be available again in the future
    405 Method Not Allowed A request was made of a page using a request method not supported by that page
    406 Not Acceptable The server can only generate a response that is not accepted by the client
    407 Proxy Authentication Required The client must first authenticate itself with the proxy
    408 Request Timeout The server timed out waiting for the request
    409 Conflict The request could not be completed because of a conflict in the request
    410 Gone The requested page is no longer available
    411 Length Required The "Content-Length" is not defined. The server will not accept the request without it 
    412 Precondition Failed The precondition given in the request evaluated to false by the server
    413 Request Entity Too Large The server will not accept the request, because the request entity is too large
    414 Request-URI Too Long The server will not accept the request, because the URL is too long. Occurs when you convert a POST request to a GET request with a long query information 
    415 Unsupported Media Type The server will not accept the request, because the media type is not supported 
    416 Requested Range Not Satisfiable The client has asked for a portion of the file, but the server cannot supply that portion
    417 Expectation Failed The server cannot meet the requirements of the Expect request-header field

    5xx: Server Error


    Message: Description:
    500 Internal Server Error A generic error message, given when no more specific message is suitable
    501 Not Implemented The server either does not recognize the request method, or it lacks the ability to fulfill the request
    502 Bad Gateway The server was acting as a gateway or proxy and received an invalid response from the upstream server
    503 Service Unavailable The server is currently unavailable (overloaded or down)
    504 Gateway Timeout The server was acting as a gateway or proxy and did not receive a timely response from the upstream server
    505 HTTP Version Not Supported The server does not support the HTTP protocol version used in the request
    511 Network Authentication Required The client needs to authenticate to gain network access

    Tuesday, 17 March 2015

    Some Google Chrome Plugins that can reduce your work and time

    Google chrome Developers Tools

    • Clear Cache :- By using it we can clear browser cache in a single click.As during our Testing of any application we often need to clear the Browser's Cache then it will be more easy to clear browser's cache in a single click.
    • Lightshot :- With a single click we can easily drag a screenshot and save it. We always take screenshot and spend time in print screen and save on paint but with this tools it can our time and easily take screenshot of required area only.
    • Speed Tracer :- Identification of the components which can be optimized on the page level to improve the loading time of the page.It gives the complete information of each file used in page with their loading time and can decrease the loading time by optimization of the page.
    • Build Reactor :- Connectivity of Jenkins with Google chrome directly, we don't need to check the mails or Jenkins URL for checking the build status or any activity regarding CI this tool automatically give the status after any activity on Jenkins .
    • User Agent Switcher :- With a single click we can set any browser for testing on different browsers in single browser.
    •  Check my links/ Link Checker :- Links can be verified automatically on a page with the help of this tool.All the dead links can be find out without clicking each link manually.
    • IE Tab :- In Google chrome , IE browser can be operated with all IE versions.
    • Windows Resizer :- In single click we can Resize our window in any resolution for e.g. All smart phone screens and many others resolutions.
    • URL Info :- Display the URL in several lines, so you can quickly check parameters and values.
    • JavaScript Errors Notifier :- Notifies JavaScript errors by icon in address bar or notification popup(optional) we don't need to check the JS error by ctrl+shift+J. We can easily notify the JS error and also open or clear the errors.
    • Image Properties Context Menu :- A simple context menu extension to show the properties of an image , just right click on any image and clicking on Menu we can get all the properties of the image.
    • IP Address and Domain Information :- The Ultimate online investigation tool! See detailed information about every IP Address, Domain Name and Provider by clicking the Icon on tool bar. No need to check any IP address from goggle.
    • Page Load Time:- Display page load time in toolbar without any effort. we don't need to use any other page load time tool or no need to go in Firebug->Network-> measure the load time of page.
    • Security / Penetration Testing Tools :- Test your sites and web applications and perform a security assessment/audit of your work with these handy tools.
    • Tamper Data :- Use it to view and modify HTTP/HTTPS headers and post parameters, to trace and time HTTP response/requests. You can security test web applications by modifying POST parameters.
    • HackBar :- This toolbar will help you in testing sql injections, XSS holes and site security. It is NOT a tool for executing standard exploits and it will NOT teach you how to hack a site. Its main purpose is to help a developer do security audits on his code.
    • XSS Me :- XSS-Me is used to test for reflected Cross-Site Scripting. The tool works by submitting your HTML forms and substituting the form value with strings that are representative of an XSS attack. The tool does not do port scanning, packet sniffing, password hacking or firewall attacks.
    • SQL Inject Me:- SQL Inject Me is used to test for SQL Injection vulnerabilities. The tool works by submitting your HTML forms and substituting the form value with strings that are representative of an SQL Injection attack. The tool sends database escape strings through the form fields. It then looks for database error messages that are output into the rendered HTML of the page.
    • Groundspeed :- Groundspeed allows input validation testing from the top-down, starting at the web application interface level instead from the HTTP protocol. Some of the practical uses of groundspeed include changing hidden fields, select drop down lists and other fields into text fields, removing size and length limitations on input fields and modifying JavaScript event handlers to bypass client side validation without actually removing it.
    • Netsparker Community Edition (Windows) :- This is the free-community edition of the powerful Netsparker which still comes with a bunch of features and also false-positive-free. 1The application can detect SQL Injection + cross-site scripting issues. Once a scan is complete, it displays the solutions besides the issues and enables you to see the browser view and HTTP request/response.
    • Websecurify (Windows, Linux, Mac OS X) :- Websecurify is a very easy-to-use and open source tool which automatically identifies web application vulnerabilities by using advanced discovery and fuzzing technologies. It can create simple reports (that can be exported into multiple formats) once ran. The tool is also multilingual and extensible with the add-on support.
    • Wapiti (Windows, Linux, Mac OS X) :- Wapiti is an open source and web-based tool that scans the web pages of the deployed web applications, looking for scripts and forms where it can inject data. It is built with Python and can detect.
    • N-Stalker Free Version (Windows) :- The free edition performs restricted-yet-still-powerful set of web security assessment checks compared to the paid versions of the application.
    • Scrawlr (Windows) :- Scrawlr is a free software for scanning SQL injection vulnerabilities on your web applications. It is developed by HP Web Security Research Group in coordination with Microsoft Security Response Center.
    • Watcher (Windows) :- It is a plugin for Fiddler (the awesome HTTP debugging proxy) and works as a passive-analysis tool for HTTP-based web applications. Watcher runs silently in the background and interact with the web-application to apply 30+ tests (where new ones can be added) while you browse. It will identify issues like cross-domain form POSTs, dangerous context-switching between HTTP and HTTPS, etc.
    • x5s (Windows) :- x5s is again a plugin for Fiddler just like Watcher which is designed to find encoding and character transformation issues that can lead to XSS vulnerability. It simply tests user-controlled input using special characters like <, >, ', and reviews how the output encodes the special characters.
    • WebScarab (Windows, Linux, Mac OS X) :- WebScarab is actually a proxy to sniff the HTTP(s) traffic and manipulate it. However, it comes with features like "parameter fuzzer (for testing XSS and SQL injection vulnerabilities), or "CRLF injection (HTTP response splitting)" and more.
    • Acunetix Free Version (Windows) :- This is the free and limited-featured version of a paid/pro product. It performs a check on any website and identifies cross site scripting (XSS) vulnerabilities. And, if you are looking to improve yourself in the area of web application security and need to play with an application legally, there is DVWA (damn vulnerable web app.) which is there for just this purpose.
    •  Draw.io :- Draw.io is a free online diagram drawing application for workflow, BPM, org charts, UML, ER, network diagrams. This can also be connected on Google Drive. It works directly on your browser.
    • Giffy :- Professional-quality flowcharts, org charts, UML diagrams, network diagrams, wireframes, technical drawings and more. Gliffy works directly in your browser!
    •  xMind :- XMind is an open source project, which means it's free to download and free to use forever. XMind Plus/Pro with more professional features are also available. Millions of people use XMind to clarify thinking, manage complex information, run brainstorming and get work organized.

    Paid Mobile Automation Tools

    Some Paid Mobile Automation Tools

    • Device Anywhere :-
    Platforms Supported :- Blackberry, iOS and Android         
     Scripting Language:- Java or Visual Script

    • Ranorex :-
    Platforms Supported :- iOS and Android              
      Scripting Language:- C#, VB.Net, and Iron Python
      URl :- http://www.ranorex.com/

    • eggPlant :-
    Platforms Supported :- iOS, Android,WindowsPhone and BlackBerry              
      Scripting Language:- Sense Talk  
      URl :- http://www.testplant.com/eggplant/
    • Silk Mobile :-
    Platforms Supported :- iOS, Android,WindowsPhone and BlackBerry              
      Scripting Language:- Borland's Silk4J, Silk4NET, JUnit, NUnit, Java, C#, VBScript, MSTest, Python, Ruby and Perl  
      URl :- http://www.borland.com/Products/Software-Testing/Automated-Testing/Silk-Mobile
    • SeeTest :-
    Platforms Supported :- iOS, Android,WindowsPhone and BlackBerry              
      Scripting Language:- UFT, TestComplete, RFT, C#,JUnit, Python and Perl
      URl :- http://experitest.com/
    • Perfecto Mobile :-
    Platforms Supported :- iOS, Android,and WindowsPhone and BlackBerry        
     Scripting Language:- Java, Python, C#, Perl and Java Script
    • UserTesting :-
    Platforms Supported :- iOS and Android              
    • ZapFix :-
    Platforms Supported :- iOS, Android,and WindowsPhone and BlackBerry