Automation Testing

Automated testing or test automation is a method in software testing that makes use of special software tools to control the execution of tests and then compares actual test results with predicted or expected results.We are using Automated scripts mainly for Regression testing and also for Functional testing, Usability testing, Compatibility testing and Integration testing to verify and validate both Web and Mobile applications

Tools and Technologies, we are using:
  • Selenium v3.5.3
  • Java 1.8
  • Maven
  • Junit / TestNG
  • Eclipse IDE
  • SVN
  • Automation frameworks we are using:
  • Data Driven
  • Keyword Driven
  • Hybrid (Data Driven + Keyword Driven)
  • Behavior Driven Development (BDD) using Cucumber
  • Types of Automation Testing

    Functional Testing:

    In functional testing, we are verifying and validating all the functionalities of an application. By performing functional testing, we can ensure that the application performs correctly and covers all the functionalities based on the Requirement documents.Quite simply, functional testing looks at what software is supposed to do and makes sure it actually does that.

    We are performing functional testing through Manual resources and also with Automated scripts.

    Usability Testing:

    The purpose of usability testing is to ensure that the application is user-friendly. To ensure the application is user friendly, we are performing the usability testing from the end-users’ perspective. We are considering the following points during the usability testing:

  • How easy it is to use the software.
  • How easy it is to learn the software.
  • How convenient is the software to end user.
  • We are performing usability testing through Manual resources and also with Automated scripts.

    Compatibility Testing:

    The purpose of Compatibility Testing is to ensure that the application works as expected in different environments, operating systems, browsers and mobile devices. We are performing compatibility testing to ensure the following:

  • The application can be installed or launched and works perfectly on different environments.
  • The application works perfectly on different browsers like Firefox, Chrome, IE and Safari.
  • The application works perfectly on different operating systems like Window, Linux and Mac OS.
  • The application works perfectly on minimum hardware configuration.
  • We are performing usability testing through Manual resources and also with Automated scripts.

    Integration Testing:

    We are performing Integration testing to ensure that the application works as expected after integrating separate modules or units in to one group. We are performing integration testing using the following approaches:

    Bottom up approach:

    The Integration testing starts from the lowest module and gradually progresses towards the upper modules of the application. This integration continues till all the modules are integrated and the entire application is tested as a single unit.

    Top down approach:

    In this approach, testing starts from the top most module and gradually progress towards the lower modules. Only the top module is unit tested in isolation. After this, the lower modules are integrated one by one. The process is repeated until all the modules are integrated and tested.

    We are performing usability testing through Manual resources and also with Automated scripts.

    Regression Testing:

    The purpose of regression testing is to ensure that changes made in the fixes or any enhancement changes are not impacting the previously working functionality. We used to perform regression testing after bug fixes or an enhancement in the application. Since regression testing is typically done after every deployment, it is easy enough to automate all regression tests, so we used to perform the regression testing through automated scripts.