Software Testing Career

More

Software Testing Jobs & Resume

More

Software Testing Skills

More
7
Apr
2015
0

Types of Testing

There are many types of testing which a tester can choose to perform based on the requirements. All testing types falls under two categories, White Box and Black Box. Here’s the diagrammatic representation of types of software testing :

testing_types_image

[Figure: Types of Software Testing]

1. Black Box Testing: is a type of testing that is concerned about the output generated in response to a set of input and execution conditions. It is not bothered about the internal mechanism of a system.

1.1 Functional & System Testing: Functional testing is performed to ensure that the functionality specified in the requirement specification document is working correctly.

System testing involves testing the product in different conditions to ensure the program works in typical customer environments.

It is conducted on a complete system to evaluate it’s conformity with the standards and specified requirements.

Because system test is done with a full system implementation and environment, following types of testing can be done to determine non-functional properties of the system:

1.1.1 Stress Testing: Stress testing is conducted to evaluate a system behavior at or beyond the allowed limits.

1.1.2 Performance Testing: Performance testing is conducted to evaluate how well the system is doing what it is intended to do, it evaluates compliance of a system with agreed upon performance requirement

1.1.3 Usability Testing: Usability Testing is performed to check the user friendliness of the system. It evaluates how well user can learn to operate and interpret outputs of a system.

1.2 Acceptance Testing: This testing is primarily a testing performed for the user.

Objective is to check if the product is helping the business by doing what it is intended to do and there was no misinterpretation along the ways.

It is a formal testing conducted to determine whether or not product satisfied the acceptance criteria set by the customer.

1.3 Beta Testing: When the software package is ready and available, the development organization can offer it for free to potential users or beta testers.

These users use it report any errors encountered during usage back to the development organization

 

Also Read: Test LifeCycle, What is Software Testing?, Software Development Modals

 

2. White Box Testing: is a type of testing that takes into account the internal mechanism of a system or component. Other Names for White Box Testing are Open Box Testing, Clear Box Testing, Glass Box Testing, Transparent Box Testing, Structural Testing, Logic Driven Testing, and Design Based Testing.

2.1 Unit Testing: Unit testing is the testing of individual software units or groups of related units.

This is usually done by the developer, who has implemented the independent solution to verify the code does what it is intended to do at the un-integrated level.

2.2 Control Flow Testing: It is a testing strategy that uses the program’s control flow as a model to test various conditions and verifies simpler paths over complicated but fewer paths.

Control flow testing is more effective for unstructured code rather than structured code because wrong behavior are more likely in unstructured code that could be caught by control flow testing.

2.3 Branch Testing: It is also known as conditional testing or decision testing.

It makes sure that each possible outcome from the condition is tested at least once.Branch testing has the objective that every control statement is tested for both possible outcomes i.e. truth and fallacy.

2.4 Path Testing: Based on the design base set of test cases is designed outlining the execution path. These test cases execute every statement at least once. Basic path testing makes sure that each independent path is covered.

2.5 Data Flow Testing: looks at how data moves within a program. In data flow testing the control flow graph is drawn depicting how the program variables are defined and used

2.6 Loop Testing: Loop testing is another type of white box testing which verifies the validity of loop constructs. For example how many passes through the loop, nested loops, concatenated loops etc.

A test type is focused on a particular test objective. Depending on its objectives, testing is organized differently.

3. Combination of White and Black Box

3.1 Integration Testing: Integration test is performed to evaluate the interaction between the various components. Objective is to verify that all units work together when they are assembled together.

It uses both black box and white box techniques. Testers refer to standard specifications and design documents and internal structures of the code to prepare the test cases.

3.2 Regression Testing: The purpose of running the regression test cases is to examine whether the new code works properly and has not damaged any previously-working functionality by introducing unintended side effects.

Regression tests are a subset of the original set of test cases. These test cases are re-run after any changes because of defect fixes or feature enhancements are made to the code.

It is very important to start preparing the regression test suite right from the start and keep on updating it to maintain the relevancy.

Since they are run throughout the development cycle, there can be white box regression tests at the unit and integration levels and black box tests at the integration, function, system, and acceptance test levels.

This is not an exhaustive list of types of testing but it is enough for you to start working as a Software Tester. Please share your feedback !!


Comments 0

  • HERE IS WHAT YOU’LL RECEIVE

    • Get Articles on Upcoming Training, Seminars and Workshops1
    • Get Tips and Tricks for Resume, Coverletter and Interview Prepration
    • Latest Industry Updates
    • Your Details are safe with us
  • Other Training Courses

    JMeter is an open source Java application designed to load test, functional behavior and effective performance testing tool for QA. This course is designed for QA to familiarize with JMeter load test tool. The main focus is to practically use of…

    More

    Software Testing Intensive(STI) is designed to assist newcomers to join the software testing field and gain intermediate to advanced level software testing skills. The candidates will be able to manage to perform testing throughout the test life cycle. This course also helps the intermediate testers to gain the absolute confidence in software testing field in web as well as mobile application.

    More

    This course include includes an intensive workshop where you are learning all the mental barriers you need to avoid and the game plan you should be creating. You will also be practically doing and updating all the necessary marketing collateral for your job applications with confidence by using world class material and resources this course provides to all its students.

    More

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Appium as a tool for mobile test automation is getting very popular in the market for mobile automation testing not only it is an open source but also is absolutely free for open discussions in communities to get quicker solutions.

    More

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    This course include includes an intensive workshop where you are learning all the mental barriers you need to avoid and the game plan you should be creating. You will also be practically doing and updating all the necessary marketing collateral for your job applications with confidence by using world class material and resources this course provides to all its students.

    More

    .Net Developer Advanced Training

    This course is about to gain understanding of advanced level knowledge of Microsoft .Net framework. It will cover advance development using ASP.NET, Data Binding and Web Configuration, C# Advance features, Web Service Implementation and many more advanced topics.

    More

    .Net Developer Training

    This course is about to gain understanding of current IT industry and prepare yourself for Microsoft .Net Developer Position. In this course, you will learn various Microsoft .Net tools and technologies. It will help you to build and deploy website from scratch using .Net framework. At the end of this course, you will be able to give web solutions using .Net technologies to the businesses, and able to attend interview for .Net developer position.

    More

    Advanced LinkedIn For Job Seekers

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    Agile Testing Intensive (AgTI)

    Understanding of Fundamentals Software Testing

    More

    AJS1: AngularJS Development Level 1

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    AJS2: AngularJS Development Level 2

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Automation Testing Intensive Level 2(ATI2)

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Blockchain Fundamentals 101 Training

    The Blockchain Fundamentals 101 training course provides and excellent platform to learn the basics of the blockchain. This course is for the professionals who want to understand background of the development of the blockchain, what are the major players and the full ecosystem around blockchain. You’ll also learn various business use cases for the Blockchain and the industries using it.

    More

    Oracle Training

    The Oracle well known, widely used Database is an object-relational database management system produced by Oracle Corporation. This is the ideal course for any tech savvy programmer, DBA, SQA…

    More

    Ruby Scripting Training

    Ruby is a scripting language designed by Yukihiro Matsumoto, also known as Matz. It runs on a variety of platforms, such as Windows, Mac OS, and the various versions of UNIX. Ruby Scripting language is dynamic and object oriented. In a sense, it’s a purist’s language for those who love object-oriented languages. Everything, without exception, is automatically an object, whereas in other programming languages this isn’t true. It is simple enough for beginning programmers to use while also powerful enough for experienced programmers to have all the tools they’d need.

    More

    SQL for Testers Training

    If you are new to software testing or looking for a career change to become a software tester Understanding the relational data model behind an application enables you to design additional tests…

    More

    SQL Training

    SQL (Structured Query Language) is a programming language intended for managing data held in relational database management systems (RDBMS). SQL expertise are advantageous in a number of professions such as database developers, report writers, business analysts, computer programmers, web developers, testers and data analysts. SQL has a shorter learning curve compared to other skills like business analysis or computer programming or testing.

    More

    VB Scripting Training

    VB Script is a subset of Visual Basic 4.0 language. It was developed by Microsoft to provide more processing power to Web pages. VB Script can be used to write both server side and client side scripting.

    More

    Front End Web Development

    Front End Web Development (FED) is a training which will allow candidates to understand about HTML5, CSS3 and JavaScript, Ajax along with a few key frameworks such as Bootstrap and jQuery. This course also helps you work on creating your own basic application throughout the course.

    More

    FWD2: Frontend Web Development Level 2

    Automation Testing Intensive (ATI) is an advanced Selenium Automation Training which will allow candidates to understand how test automation is done in a proper structured manner so that candidates are able to create and manage the selenium automation scripts from scratch and be confident building test cases based on a solid framework.

    More

    Interview Like a Pro

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    ISTQB Certification Training

    ISTQB foundation course allows you to learn from the very core fundamentals to advance level software testing concepts. The course is intended for anyone who is new to testing or has been in the testing and wants to learn more in details…

    More

    Java Development

    Skiva is a leading IT consulting firm based in Sydney, Australia. Our team of dedicated developers and experienced IT professionals allows us to develop every kind of software application required for improving and max imising the functionality of both new and existing websites. Our sole aim is to help you grow your business, by developing an informative and dynamic website that produces effective and profitable conversion rates for website traffic.

    More

    Java Fundamentals Training

    Fundamentals of Java is a very comprehensive yet simple course on java programming which concentrates on basic concepts of Java. This course is great because it covers just the right amount of Java which is needed for automation, but this course does not cover Selenium WebDriver or any other type of automation tool. Java is one of the most and useful programming languages to learn. You will get the best in class support from the instructor for any question you have related to the course.

    More

    LoadRunner Training

    One of the most crucial test tool to load test the application and measure the performance. Why to load test application, Is application scalable to withstand concurrent number of users? All such answers and application performance…

    More

    Mobile App Testing

    Mobile App testing consists of several of the same processes as other software testing. Application software which has been created, or enhanced for any portable devices, is checked to ensure that it is consistent in results, usable, and functions as it was intended to. Mobile applications may be factory installed or installed from a software distribution platform, while the growth of the number of mobile devices has been matched by the opportunities for new smartphone and other apps.

    More

    Mobile Test Automation With Appium

    Appium as a tool for mobile test automation is getting very popular in the market for mobile automation testing not only it is an open source but also is absolutely free for open discussions in communities to get quicker solutions.

    More

    Psychology & Mindset For Job Seekers

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    QTP Test Automation Training

    QTP (Quick test professional) course series designed for beginner automation QA to advanced level QA for automation. This course covers all concepts and basics fundamental with complete in depth examples…

    More

    Rockstar Resume & Compelling Cover Letter That Sells

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    Salary Negotiation to Probation and Promotion

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    Software Testing Training Career Package

    Software Testing course allows you to learn from the very core fundamentals to advance level testing course which is intended for anyone who is new to testing or have been in the testing and want to learn more in details.

    More

    Ultimate Job Search Strategies To Find Hidden Job Market

    Getting a professional job in Australia can be challenging for professionals looking to get started or changing their jobs or careers. Cultural barriers, lack of branding or promoting your profile makes it harder to present yourself well and get connected so that you can get the job you deserve.

    More

    User Acceptance Testing

    User Acceptance Testing is normally the pre-production testing that is done by Users or probably the Product Owners in Agile terms.

    More