Wednesday 8 May 2019

What is Mobile Testing? Mobile App Testing Tools and Types | W3Sofetch

Mobile Testing

Mobile Testing can be defined as the process of testing the mobile devices to check the performance of developed software application usability, functionality and consistency. The Mobile App Testing can be done through either manually or automatically.

Mobile Testing Types:

Mobile Application Testing can be divided into two types namely Software Testing and Hardware Testing

Software Testing:

The process of testing the software application developed for mobile devices is known as Mobile Software Testing or Mobile Application Testing. Again this testing is divided into three parts
Native Apps: Native apps are apps created for general purpose usage on mobile platforms and tablets.
Mobile Web Apps: These apps are called server-side apps developed to access websites on mobile using various browsers such as Firefox, Chrome, etc.,
Hybrid Apps: These are the combination of the above two apps which can run on offline as they are developed using HTML5 and CSS

Hardware Testing:

This testing is used to perform on hardware parts of devices like internal processors, screen sizes, resolution, RAM, ROM, camera, Bluetooth, FM Radio, etc.,

Differences between Native Apps and Mobile Web Apps:

Native AppsMobile Web Apps
It has a single platform affinityIt has a cross-platform affinity
These are written in SDK formatThese are written in HTML, CSS, PHP, etc.,
Only downloadable from play store or app storeOnly accessible through the internet
It requires installation compulsoryNo need for any installation
Can be updated from play store or app storeThese are centralized updates
Most of the native apps don’t need an internet connectionFor all mobile web apps, the internet is compulsory
Works fasterWorks based on web technology used

Types of Mobile Testing:

Depending on the mobile testing types, below are the testing types which are used to perform on mobile devices

Usability Testing:

The name itself says that it is used to check the user experience of the developed mobile application. It should satisfy the user in terms of usability, flexibility and friendliness

Compatibility Testing:

This testing is usually performed on mobile devices to make sure that whether the developed mobile application is comfort with the device. To check that the developed app is compatible with mobile’s screen resolution, OS Versions, etc.,

Interface Testing:

Interface Testing helps to determine the performance of user interface like menu buttons, history, settings, bookmarks, etc.,

Interrupt Testing:

Interrupt Testing is the process of testing an application which may undergo interruption while using the mobile app. In simple words we can say that testing the developed mobile app while there may come interruptions like SMS, Calls, Web notifications, on/off the media player, etc.,

Memory Leakage Testing:

It helps to determine the optimization of the mobile app under limited memory. Thus, each developed application should work without making any memory leakage and satisfy the user.

Performance Testing:

Testing the performance of a mobile application which may go under various changes like data changes from mobile to wifi, low battery power consumption, network coverage, etc., Here testers need to perform testing on both sides of application such as server-side client side.

Operational Testing:

Operational Testing is the process of testing a mobile application’s backup or recovery functions if the user upgraded an app from a store.

Installation Testing:

Whenever a user is able to install, uninstall or upgrade the developed app this testing came into existence. The mobile app should satisfy the user while performing any of the above steps without interrupting.

Security Testing:

Security Testing is the process of testing to determine the security of the mobile app without losing any data. Here testers need to check the app whether it is working under given security guidelines and protecting the data.
Mobile-Testing-Types-Tools-W3Softech
Mobile Testing Types - W3Softech

Differences between Mobile App Testing and Desktop Testing:
Mobile App TestingDesktop Testing
The developed software application can be tested on mobile devices like Samsung, Apple, Nokia, etc.,Here the application is tested on a Central Processing Unit (CPU)
Mobile devices consist of low screen resolutionDesktop consists of high screen resolution
Mobile devices contain less internal memoryThe desktop contains a large amount of internal memory
Here they use network connections like 2G, 3G, 4G or Wi-FiWhereas desktop use dial-up or broadband connections
Automation Tool may not work properly on mobile appsAutomation Tool will work properly on desktop testing

Mobile App Testing Tools:

These are the top 16 mobile app testing tools

  1. Appium
  2. Appium Studio
  3. Calabash
  4. Frank
  5. FrogLogic
  6. KIF
  7. KMAX
  8. Kobiton
  9. MonkeyRunner
  10. MonkeyTalk
  11. Robotium
  12. SeeTest
  13. Selendroid
  14. SmartBear
  15. Testdroid
  16. WebLoad

Tuesday 7 May 2019

What is Automation Testing? Types, Tools and Benefits | W3Sofetch

Automation Testing

   It is a type of software testing used to execute the test case and compare the output results with the expected results. Manual Testing is performed manually with the help of human hand whereas Automation Testing is performed automatically by using test scripts or automation testing tools.
   Test Automation is majorly used to automate repetitive tasks and other testing tasks which are unable to perform by manual testing. This testing will support both functional and non-functional testing.

Working Process of Automation Testing:

  • The initial step is to analyze the current system test coverage
  • To identify paths that would benefit from automation
  • To design plan and select test cases for automation
  • To execute the test cases and observes their performance
  • To develop an automation framework and global functions
  • Finally, review the test cases under automation

Advantages of Automation Testing:

  • This testing increases the test execution speed
  • It helps in the maximum coverage of test cases
  • It costs less compared to manual testing
  • Automation Testing saves time and money while compared to manual testing
  • It feels challenging and interesting while performing test execution whereas manual testing feels boring

Disadvantages of Automation Testing:

  • The major disadvantage is debugging the test script
  • Requires more proficiency to write the test scripts
  • If test script tests a number of screens then the maintenance is difficult
Automation-Testing-Blog-W3Softech
Automation Testing
Types of Automation Testing Frameworks:
Automation Testing Types mainly divides into frameworks which are of 6 types shown below.
Here framework defines as a set of rules which can follow in a programmatic way to achieve the expected results.
  • Behavior Driven Development Framework
  • Data Driven Testing Framework
  • Hybrid Testing Framework
  • Keyword Driven Testing Framework
  • Linear Scripting Framework
  • Modular Testing Framework

Automation Testing Tools:

Here is the list of some test automation tools
  • Acunetix
  • Appium
  • Burp Suite
  • Coded UI
  • Cucumber
  • Cypress
  • EggPlant
  • FitNesse
  • IBM Rational Functional Tester
  • Jmeter
  • Katalon Studio
  • LambdaTest
  • Load Runner
  • Micro Focus QC
  • Micro Focus UFT
  • NeoLoad
  • Perfecto Mobile
  • QMetry Automation Studio
  • QTP
  • Qualibrate
  • Ranorex
  • Rational Robot
  • Robotium
  • Selenium
  • SilkTest
  • SoapUI
  • Test Anywhere
  • Test Studio
  • TestComplete
  • TestingWhiz
  • Testsigma
  • Tosca Testsuite
  • Visual Studio Test Professional
  • WAPT by SoftLogica
  • WatiN
  • Watir
  • WebLOAD
From the above list, we can find functional and non-functional automation test tools

Most popular tools for functional automation

  • Coded UI
  • Quick Test Professional (QTP)
  • Rational Robot
  • Selenium

Most popular tools for non-functional automation

  • Acunetix
  • Burp Suite
  • Jmeter
  • Load Runner

Benefits of Automation Testing

  • Super faster while compared to manual testing
  • Wide range of test coverage will be done
  • Improves accuracy and reliability in test execution
  • More efficient in performing test execution
  • It saves time and money
  • Reduces the human workload by providing reusable test scripts

Monday 6 May 2019

What is Manual Testing? Types, Tools and Concept | W3Softech

Manual Testing is a type of software testing usually done by testers manually to perform test cases and find out the bugs or errors in a software system. Any software application before going under automation testing must be tested manually.
The major role of this testing is to ensure that the system is defect-free and working properly then let it go for the next step in the development life cycle. Name itself says that this testing is done by manually without using any automation tools.

Working Process of Manual Testing:

  • The initial step is to study and analyze completely the project give
  • To execute the test cases based upon the business requirements
  • Perform testing manually to find out any bugs or defects in the software application and fix them
  • Perform retesting by testers to find out any missing bugs in the system and fix them
  • Finally, the project will go for the further step after successful completion of testing
Manual-Testing-Types-Tools-Blog-W3Softech
Manual Testing

Advantages of Manual Testing:

  • This Testing can be done through either functional or non-functional
  • Any kind of software application or system can be tested manually

Disadvantages of Manual Testing:

  • It requires human intervention
  • It requires highly skilled testers and longtime process
  • Based upon the above things it costs high
  • The testing process will become repetitive so that may get boring

Manual Testing Types:

Actually, any type of software testing can be executed through manually or automatically but below shows the major types of manual testing.
Manual-Testing-Types-Blog-W3Softech
Manual Testing Types

Manual Testing Tools:

Different kind of Manual Testing Tools
  • Appium (Mobile Testing)
  • AutoIT (Language Automation)
  • Bugzilla (Defect Tracking & Collaboration)
  • FileZilla (FTP Solution)
  • Firebug / Firepath (Online Debugging)
  • GitHub (Project & Source Code Hosting)
  • Jenkins (Continuous Testing)
  • JMeter (Load Testing)
  • Mantis (Bug-Tracking & Project Management)
  • Notepad++ (Source code Editor)
  • PhantomJS (Headless Browser)
  • Postman (API Testing)
  • RazorSQL (Database Query Tool)
  • Selenium (Web Application Testing)
  • TestLink (Test Management)
  • UI Automator (Android Testing Framework)

Friday 3 May 2019

Levels of Testing | Software Testing Levels | W3Softech

There is a total of four levels of testing available in software testing. Here levels can be defined as the process of each and every component of a system is being tested. These four software testing levels are designed to determine any missing errors or functions of a software application in the development of software testing lifecycle.

The Four Levels of Testing in Software Testing:

  1. Unit Testing
  2. Integration Testing
  3. System Testing
  4. Acceptance Testing

Unit Testing:

It is the first level of testing in Software Testing also one of the types of functional testing. A unit of a software system is being tested to check the performance of the system is said to be Unit Testing. The main function of unit testing is to test each unit or component of a software application separately.
However, it is impossible to test each and every unit of a software system as there is a limitation for a number of scenarios.

Integration Testing:

It is one of the levels of testing in software testing also comes under functional testing types. It is quite opposite to the unit testing. Integration Testing is a combination of different units or modules. To make a group and perform testing to check the performance of a system. The main aim of this testing is to recognize the interface between the modules.
Levels-of-Testing-in-Software-Testing-W3Softech
Software Testing Levels

System Testing:

It helps to determine the compliance of a software system which also meets the specific requirements and quality standards. System Testing involves load testing, performance testing, reliability testing and security testing. It also comes under functional testing types and black box testing technique.
However, it is impossible to perform testing on the whole system so that it uses some of the automation testing tools.

Acceptance Testing:

It is the final level of testing in software testing which also comes under one of the functional testing types. Acceptance Testing or User Acceptance Testing (UAT) helps to determine whether the software application is ready to deliver. It plays a major role in checking whether the system meets expected business requirements and quality standards and ready to deliver.

Thursday 2 May 2019

Methods of Software Testing | Advantages and Disadvantages | W3Softech

Methods of Software Testing:

There are three methods of software testing available namely Black Box Testing, White Box Testing and Grey Box Testing.

Black Box Testing:

Black Box Testing is a method of Software Testing also called Behavioral Testing. The main function of black box testing is to test the interior design/implementation of an item which cannot be known to the tester. The name itself says that the tester who is going to test the product will give input and examine the output results without having the prior knowledge of source code.

Black Box Testing helps to determine the following aspects:

  • Finding errors at the initial and final stage
  • Optimizing the interface errors
  • Checking errors or missing functions
  • To check and verify the errors in the external database

Advantages of Black Box Testing:

  • More Efficient and Suitable for large code segments
  • No need for any Coding or Programming knowledge
  • A large number of testers can test the software application without prior knowledge on programming or operating system
  • Design of Test Cases

Disadvantages of Black Box Testing:

  • Only limited coverage of application as the tester cannot target specific code segment
  • Test cases are difficult to design as the tester doesn’t have prior knowledge on specifications and coding
  • Some possible inputs will only be tested

White Box Testing:

White Box Testing is one of the methods of software testing also known as Open Box Testing, Transparent Box Testing or Glass Box Testing. It is defined as a testing method in which the tester can able to test the internal functions of a product with prior programming knowledge under specific conditions. The major role of this testing is to study the whole internal structure of a software product and need to find out the inappropriate unit code.

Advantages of White Box Testing:

  • It helps to optimize the whole internal source code as the tester is having programming knowledge
  • Almost all paths of a software product will be covered
  • As the tester is having programming knowledge it will be easy to find out the inappropriate unit code

Disadvantages of White Box Testing:

  • Requires highly skilled testers and debugging tools
  • Results will be more efficient but according to resources it may become expensive
  • Even though all paths of the source code will be covered there may be a chance of missing to find out hidden errors
Methods-of-Testing-W3Softech
Methods of Software Testing

Grey Box Testing:

It comes from the combination of the black box and white box testing. Grey Box Testing is also one of the methods of software testing. It helps to test the partial or limited paths of the internal structure of a software application. It is known as Gray Box or semi-transparent box testing. The name itself says that the tester can access limited paths of the application.

Advantages of Grey Box Testing:

  • The main advantage is that the tester can perform either black box technique or white box technique even both
  • Testers don’t need to rely on the source code
  • As there is a limitation of software testing, the tester can able to design perfect test cases or scenarios

Disadvantages of Grey Box Testing:

  • As there is no full access of source code, the tester can able to cover a limited area of the software application
  • There may be a chance of occurring redundant if the designer already starts the test case
  • The major disadvantage is that software product cannot be tested fully as there are limitations