Testing Types and Usability Standards Flashcards
What is Black Box Testing?
Black Box Testing is the type of testing where an application is tested based on the inability to access the code and no knowledge of the software’s internal architecture.
Black Box Testing, tests both the functional (if you have to test the functional requirements of a system) as well as non-functional requirements (if you have to test the non-functional requirements; such as performance, scalability, usability) of the application.
How to do Black Box Testing?
Read requirements.
- Based on requirements execute positive steps, valid inputs. It also called “Happy path”.
- Execute negative steps, invalid inputs. It’s also called the “unhappy path”.
- Check results. Compare the actual results with the expected results.
- Create a bug report if something is broken or unexpected.
What is White Box Testing?
White Box Testing is the opposite of black box testing. It is a type of software testing in which the tester has knowledge about the internal application structure and the software code.
The white box testing technique is used by both developers as well as testers. It helps them to understand which line of code is actually executed and which is not.
What is Gray Box Testing?
Gray Box Testing is a technique to test the software product or application with partial knowledge of the internal workings of an application. Gray Box Testing is a software testing method, which is a combination of both White Box Testing and Black Box Testing.
- In White Box Testing internal structure (code) is known
- In Black Box Testing internal structure (code) is unknown
- In Grey Box Testing internal structure (code) is partially known
What is Cross-Browser Testing?
Cross-Browser Testing is simply what the name suggests - test your website or application in multiple browsers - making sure that it works consistently and as intended without any dependencies, or compromise in quality. This technique is applicable to web and mobile applications.
What is Compatibility Testing?
Compatibility Testing is a type of Software Testing to check whether your software is capable of running on different hardware, operating systems, applications, and network environments.
Let’s look into some Compatibility Testing types
- Hardware: It checks that the software is compatible with different hardware configurations.
- Operating Systems: It checks that your software is compatible with different Operating Systems like Windows, Unix, Mac OS, etc.
- Software: It checks that your developed software is compatible with other software. For example, MS Word application should be compatible with other software like MS Outlook, MS Excel, etc.
- Network: Evaluation of the performance of a system in a network with varying parameters such as Bandwidth, Operating speed, Capacity. It also checks an application in different networks with all parameters mentioned earlier.
- Browser: It checks the compatibility of your website with different browsers like Firefox, Chrome, Edge, etc.
- Devices: It checks the compatibility of your software with different devices like USB port Devices, Printers and Scanners, other media devices and Bluetooth.
- Mobile: Checking that your software is compatible with mobile platforms like Android, iOS, etc.
- Versions of the Software: It is verifying that your software application is compatible with different versions of the software. For instance it checks your Microsoft Word is compatible with Windows 7, Windows 8, Windows 10.
What is Positive Testing?
Testing by providing valid data as input. An application does what is supposed to do.
What is Negative Testing?
Testing by providing invalid data as input. An application does not do anything that it is not supposed to do.
What is API (Application Programming Interface)
APIs, or Application Programming Interfaces, are the connection between different systems or layers of an application. Applications often have three layers: a data layer(Server), a service layer (API), and a presentation layer
(UI). The API layer contains the business logic of an application - the rules on how users can interact with services, data, or functions of the app. Because the API or service layer directly touches both the data layer and the presentation layer, it presents the sweet spot of continuous testing for QA and Development teams. While traditional testing has been focused on the UI, the advantages of API testing are becoming well known.
While there are many aspects of API testing, it generally consists of making requests to a single or sometimes multiple API endpoints and validate the response — whether for performance, security, functional correctness, or just a status check.
What is analytics?
Analytics are important for finding out what’s working and what’s not working on your website. In short, they allow you to see user feedback at scale — via users’ actual clicks and movements. This is essential for improving your website’s UX, and in turn, conversions.
And we are going to check the most popular tools for analytics testing.
Let’s start with web analytics. These tools are most effective at measuring key metrics like conversion rates, bounce rates, user demographics, user behavior, most visited web pages and more. We typically use these tools for user research and to identify areas with poor UX, but we can also use them as a diving board for usability testing and A/B testing later on.
- Google analytics
- Adobe Analytics
- Chartbeat
What is Accessibility Testing?
Accessibility Testing is defined as a type of Software Testing performed to ensure that the application being tested is usable by people with disabilities like hearing, color blindness, old age, and other disadvantaged groups. It is a subset of Usability testing.
People with disabilities use assistive technology which helps them in operating a software product. Examples of such software:
- Speech Recognition Software — converts the spoken word to text, which serves as input to the computer.
- Screen reader software — used to read out the text that is displayed on the screen.
- Screen Magnification Software — used to enlarge the monitor and make reading easy for vision-impaired users..
- Special keyboard — made for users who have difficulty with motor control so they can type more easily.
What is Localization testing?
Is the software testing process for checking the localized version of a product for that particular culture or locale. The areas affected by localization testing are UI and content.
What is Globalization testing?
is to ensure that application can function in any culture or locale (language, territory and code page). It is also called Internationalization Testing.
What is Functional Testing?
Functional Testing is a type of software testing that verifies that each function of the software application, operates in conformance with the functional requirements.
Each and every functionality of the system is tested by providing appropriate input, verifying the output, and comparing the actual results with the expected results.
This testing mainly involves black box testing and it is not concerned with the source code of the application.
It also involves checking of User Interface, APIs, Database, security, client/ server applications and functionality of the Application Under Test. The testing can be done either manually or using automation.