Quality Assurance (QA)

Quality Assurance (QA)

A set of activities to ensure whether a product or service (that is being developed) meets specified requirements.

Types of testing

Load, stress, performance, regressional, functional, security, cross-browser, black-box, etc.

Functional, Regression testing tools

Selenium (browser automation), WebDriver, SoapUI (for API testing), Watir, Watin, QTP, Cucumber.

Load, Stress and Performance testing tools

JMeter, NeoLoad, LoadRunner, LoadUI, Siege, Gatling.

A/B testing

A method of comparing two versions of a webpage/app against each other to determine which one performs better. It uses data & statistics to validate new design changes and improve conversion rates.

Ad Hoc Distribution (Mobile)

Allows developers to beta test apps on a wide range of devices and is somewhat similiar to In-House Distribution.

Appium

An open source test automation tool for mobile apps. Allows to test all the 3 types of mobile apps: native, hybrid and mobile web.

Arquillian

A testing framework that simplifies integration testing for Java middleware, it works with plumbing of container management, deployment, and framework initialization, has three major sections: test runners, containers, and test enrichers. 

AutoIt

An open source BASIC-like script language for automation in Windows.

Automation Testing

A type of software testing used to execute pre-scripted tests on a software application before it is released into production, aims to reduce number of test cases to be run manually.

Baseline testing

A type of software testing used for validation of documents and specifications on which test cases would be designed.

Behat

An open source BDD framework for PHP, which supports you in software delivery that matters through continuous communication, deliberate discovery & test-automation.

Black-box testing

A type of software testing used to examines the functionality of an application based on the specifications, without peering into its internal structures.

BlazeMete

A cloud based performance and load testing tool that is fully compatible with JMeter, it creates script automatically, provides mobile, websites, web-service, database testing.

Calabash

A free and open source cross-platform framework that enables to write and execute automated acceptance tests of Android and iOS native apps.

CasperJS

An open source navigation scripting and testing JavaScript utility for the PhantomJS, it eases the process of defining a full navigation scenario and provides useful high-level functions.

Chai

The browser and BDD/TDD assertion library for Node.js, it aims to be an expressive and easily approachable way to write assertions for JavaScript project testing. 

Charles

A quality assurance tool, an HTTP proxy/monitor that enables a developer to view all of the HTTP traffic between their web browser and the Internet.

Controller

A software testing tool from Hewlett Packard that defines the events that occur during each testing session of LoadRunner, it controls the number of users to emulate, their actions, etc.

Cross-browser testing

A type of software testing that tests web projects across different browsers, maintain different types of code and fixing the problems, popular cross-browser tests are: Browsershots, Browser Sandbox, Webshot, Browsera, etc.

Cucumber

A tool for running automated acceptance tests written in a behavior-driven development style. Allows to execute plain-text functional description as automated tests.

DbUnit

A database testing tool, JUnit extension for database-driven projects, it can pre-load the database for each test based on an XML data set.

E2E-tests

Stands for End-To-End Tests, a testing framework used to test whether the flow of an application is performing as designed from start to finish, from the user endpoint.

EasyMock

A Java-based mocking framework used for unit testing of Java applications, allows to mock interfaces, to test the functionality of a class in isolation.

Endurance Testing

A type of software testing used to analyze the behavior of the system under sustained use and with a load extended over a significant period of time. 

Development by Synergize.digital