What is Software Testing?

What Software Testing?

1) What is Software Testing?

Software Testing (Computer Software, Mobile Software) is a process of executing a Program or Application with respect to Software Requirements and with the intent of finding the defects. 

2) How to conduct Software Testing?

Software Testing can be done in 2 ways,

i) Manual Testing

ii) Test Automation or Automated Testing

3) What is Manual Testing?

Testing Computer Software, Mobile Software manually without using any Software Test Tool or Automation Program,

4) What is Test Automation or Automated Testing?

Testing Computer Software, Mobile Software using any Software Test Tool or Automation program.

5) What is the difference between Software Testing and Manual Testing?

Software Testing: Testing Computer Software, Mobile Software either Manually or using any Software Test Tool.

Manual Testing: It is one of the way to conduct Software Testing, another possibility is Test Automation or Automated Testing.

Note: We can use both Manual Testing and Test Automation (Some part of the Testing Manually, other part of the Testing using any Test Tool) to Test Software Applications.

6) What are the different levels of Testing?

Software Testing can be done in different levels,

If it is Standalone Application we have 4 levels of Testing,

i) Unit Testing/Component Testing

ii) Integration Testing

iii) System Testing

iv) Acceptance Testing

For Business Distributed Applications (Ex: Internet Banking Application) we have 5 levels of Testing,

i) Unit Testing/Component Testing

ii) Component Integration Testing

iii) System Testing

iv) System Integration Testing

v) Acceptance Testing

7) Who conduct Unit/Component Testing?

Usually Developers/Programmers conduct Unit / Component Testing using White box Test design techniques.

8) Who conduct System Testing?

Independent Testers conduct System Testing using Black box Test design techniques or using Experience based techniques.

9) Who conduct Acceptance Testing?

We have some sub sets of Acceptance Testing,

i) User Acceptance Testing

Testers are End users / Customers.

ii) Operational Acceptance Testing

Testers are System Administrators / Network Administrators.

iii) Certification Testing

Testers are Certified Testers   

Note: 
Certified Testers means not ISTQB or CSTE etc.. Testers, 
Who knows Industry Standards and Local Government rules regarding Software called as certified Tester.

10) What is Functional Testing?

Functional Testing is a Test Type, Verifying a component or System's Functionality with respect to Functional Requirements.

11) When we conduct Functional Testing?

Functional Testing is Test Type, it can be conducted in all Levels of Testing.

Example:

i) Developers conduct Functional Testing in Unit or Component Testing Level.

ii) Independent Testers conduct Functional Testing in System Test Level. 

iii) End Users / Customers conduct Functional Testing in Acceptance Testing Level.

12) How we conduct Functional and System Testing (Functional Testing in System Testing Level)?

We can conduct Functional testing (in System Testing Level) either Manually (Manual Testing) or using any Test Tool(Test Automation).

13) What are the Popular Software Testing Tools for Functional Testing in System Testing Level?

i) UFT - Unified Functional Testing (formerly QTP) from HP

It supports Functional & Regression Testing of Computer Applications (Desktop Applications and Web Applications) and Mobile Software Applications (Some type of Mobile software, not all types).

ii) Selenium (Open source Tool)

It supports Functional & Regression Testing of Computer Applications (Web Applications only) and Mobile Software Applications (Web Apps, not Mobile Native Applications and Hybrid Applications). 

iii) RFT - Rational Functional Tester From IBM

iv) SilTest - (From Micro Focus)
 etc...

14) What is Non-Functional Testing?

Verifying a System's Quality Attributes (Ex: Speed, Ease of use etc...) with respect to Non Functional Requirements.

System: System has several meanings, general meaning is Computer Hardware & Software, but in our Scenario (Software Testing) System means AUT (Application Under Test).

15) What are the import types of Non Functional Testing(Sub sets of Non-Functional Testing)?

i) Performance Testing/Load Testing/Stress Testing.

ii) Usability Testing

iii) Reliability Testing

iv) Recovery Testing

v) Localization Testing/Internationalization Testing

Etc...

16) What is the difference between Performance Testing and Load Testing?

Load Testing, Stress Testing, Spike Testing, Endurance Testing, Data Volume Testing all are Sub sets of Performance Testing?

17) What is the difference between Functional Testing and Database Testing?

Database Testing is a Sub set of Functional Testing, not only Sub set of Functional Testing, it is also sub set of Performance Testing.

18) How to conduct Performance Testing?

Manual Testing is impractical for Performance Testing, using Performance Test Tools we can conduct performance Testing.

Note: Test Automation is only practical for Performance Testing, Manual Testing is impractical.

19) what are popular Performance Test Tools?

i) HP- LoadRunner

ii) IBM - RPT (Rational Functional Tester)

iii) SilkPerformer (Micro Focus)

iv) JMeter (Open Source Tool)

Etc...

20) How to conduct Database Testing?

We can conduct Database Testing Manually or using any Test Tool.

Manual Testing: Connect to Database and using SQL Statements/Commands conduct Database Testing.

Test Automation: Every Functional and Regression Test Tool (Ex: HP UFT/QTP, Selenium, IBM-RFT etc...) supports Database Testing, connect to Database using Database connection string and using SQL commands create Database Tests and execute.
-------------------------------------------------------
What is What?

1) V Model

It is (SDLC) Software Development Life Cycle Model

2) System Testing

It is a Test Level

3) Functional Testing

It is Test Type

4) Decision Table Testing

It is a Black box Test design technique.

5) Sanity Testing

It is a Test Execution Level.

6) Test Plan

It is a Test Document

7) Statement Testing

It is a White box Test design technique

8) Exploratory Testing

It is an Experience based Testing technique

9) Security Testing

It is Test Type, Sub-set of Functional Testing

10) Load Testing

It is a Non Functional Test Type, Sub-set of Performance Testing
----------------------------------------------------

2 comments:

Post a Comment