Showing posts with label white box testing. Show all posts
Showing posts with label white box testing. Show all posts

Thursday, 23 May 2019

What is Unit Testing? Unit Testing Tools and Types | W3Softech

Unit Testing

The process of testing the individual units of software is called Unit Testing. It will be done during the development of a software application. According to the programming procedure, a unit may be an individual function of the software.
Unit Testing is one of the levels of software testing and usually done by the developer. It is the first level of testing. Developers or QA Engineers will handle this testing.

Working Process of Unit Testing

  • With the help of this testing, we can fix bugs or errors during the development cycle
  • It enables developers to make changes quickly and saves cost
  • It helps to get a good quality software product
Software-Testing-Levels-Unit-Testing-W3Softech

Unit Testing Types

It is of two types namely Manual or Automated.
Most probably performed by manually but developers always prefer to do automation testing. It is a white box testing technique comes under following test coverage techniques
  • Branch Coverage
  • Condition Coverage
  • Decision Coverage
  • Statement Coverage

Using White box testing methods

  • Test cases can be derived that all independent paths within a module have been exercised at least once.
  • Exercise all logical decisions on their true and false sides.
  • Executes all loops at their boundaries.
  • Exercise internal data structures to assure their validity.

Unit Testing Tools

  • JTest
  • JUnit
  • NUnit
  • JMockit
  • EMMA
  • PHPUnit
  • xUnit.net
  • TestNG
  • QuiltHTTP
  • HTMLUnit
  • EmbUnit
  • SimpleTest
  • ABAPUnit
  • TypeMock
  • LRDA
  • Cantata
  • Karma
  • Jasmine
  • Mocha
  • Parasoft

Advantages

  • Developers will be able to understand the functionality of the Unit API
  • It helps the developers to rewrite and modify the code anytime and ensure the unit works as usual
  • It helps to test each and every unit of the software application so that named as Unit Testing

Disadvantages

  • It is very complicated to test each and every unit in large scale programs as it takes a lot of time
  • There may be a chance of missing units or paths of code in trivial programs
  • It allows testing only certain units or paths of code so that we are unable to grab the integration errors

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