type of testing

Search

Total Views

Total Views:

Manual Testing Interview Questions and Answers part 04

←Back

Software Testing Fundamentals:

1. What is software their types?

Answer:
Software is a collection of instructions, programs, or data that tells a computer how to work. It allows users to interact with hardware and perform specific tasks.
There are Three types of software: 

1) System software (like Windows, Linux) 

2) Application software (like MS Word, WhatsApp).

3) Programming software (like Compiler, debugger and interpreter)

Example:
Google Chrome is a software used for browsing the internet.

Windows is a system software that manages the computer’s hardware and allows other applications to run.

Eclipse is a programming software used to write, compile, and run Java applications.


2. What is testing?
Answer:
Testing- it is process of finding deviation b/w expected and actual result. 

It ensures the quality, performance, and reliability of the application. The purpose of testing is to find bugs, verify that the software meets the requirements, and deliver a bug-free product to users.

Example:
If a login page accepts the wrong password and still logs in, it means testing is needed to catch and fix this bug.

3. What are the types of layers in software?
Answer:
Most modern software applications follow a 3-layer architecture:

  1. Presentation Layer (UI) – Front-end visible to users (buttons, forms).

  2. Business Logic Layer – Handles rules, logic, and processing.

  3. Data Layer (Database) – Stores and retrieves data from the database.

Example:
In an e-commerce site:

  • UI shows product listings (Presentation),

  • Adding to cart applies discounts (Business Logic),

  • Order info is stored in a database (Data Layer).


✅ 4. What are the types of application software?

Answer: There are several types of application software, each designed to perform specific tasks. Below are the main types with examples:

  1. General-Purpose Application Software
    These are commonly used by all users for general tasks like writing, calculating, or browsing.
    Example: MS Word, Excel, Chrome

  2. Specific-Purpose Application Software
    This type is designed to perform a specific task or serve a particular domain.
    Example: Billing software, Payroll systems, Hospital Management System

  3. Customized Application Software
    It is tailor-made for a specific user or organization according to their requirements.
    Example: Custom CRM for a company

  4. Open-Source Application Software
    These are free to use and the source code is available for modification.
    Example: GIMP, LibreOffice

  5. Freeware
    It is free to use but the source code is not available for editing.
    Example: Skype, Adobe Acrobat Reader

  6. Shareware
    It is distributed for free initially but requires payment after a trial period.
    Example: WinRAR, trial version of antivirus

✅ 5. How will you know the requirements of the application?

Answer:
To understand the application requirements, I follow these steps:

  1. Read the SRS or BRD documents shared by the Business Analyst or client.

  2. Attend requirement meetings or walkthrough sessions to understand the business needs.

  3. Go through user stories if it’s an Agile project.

  4. Ask questions whenever something is unclear — I prefer to clarify early.

  5. Check prototypes or wireframes if available, to understand the UI and flow.

  6. Explore the application (if accessible) to get a better idea of its behavior.

  In short: I use documents, meetings, and discussions to understand the requirements clearly before starting testing.

✅6. How many ways can we do software testing?

Answer:
Software testing can be done mainly in two ways:

  1. Manual Testing
    In this method, the tester tests the application manually, without using any tools or scripts.
    It involves checking the functionality, UI, and user flow by hand.
    Example: Clicking buttons, filling forms, checking results on the screen.

  2. Automation Testing
    In this method, the tester writes scripts using tools to automatically test the application.
    It saves time, especially for repeated tests like regression testing.
    Example: Using Selenium to run login tests automatically.

✅7.  What is the difference between Manual Testing and Automation Testing?
Answer:

✅8. When to perform Manual Testing and Automation Testing?
Answer:

Manual Testing should be performed when:

  1. The project is small or short-term – Manual testing is quicker to start.

  2. Requirements keep changing – Automation is not useful if scripts need frequent updates.

  3. Exploratory, UI, or usability testing is needed – Human observation is best here.

  4. Testing once or twice only – Not worth spending time on automation.

  5. Early stages of development – When features are still being built or unstable.


Automation Testing should be performed when:

  1. The test cases are repetitive – Like regression tests after every build.

  2. The project is large and long-term – Saves time and effort in the long run.

  3. Tests need to be run on multiple browsers or devices – Automation can handle parallel execution.

  4. Performance, load, or stress testing is needed – Tools can simulate thousands of users.

  5. The application is stable – Ideal time to invest in writing automation scripts.

One-line summary (for quick interview use):

Manual testing is best for new, changing, or user-focused areas; automation is best for stable, repetitive, or large-scale testing.

✅09. What are the challenges or limitations of Manual Testing? 

Answer:

Manual testing is useful but has several challenges and limitations:

  1. Time-Consuming:
    Testing each feature manually takes a lot of time, especially for large projects.

  2. Repetitive Work:
    Running the same test cases again and again (like in regression) can become boring and lead to missed bugs.

  3. Human Errors:
    Since testers do it manually, there’s a higher chance of mistakes or skipping steps.

  4. Not Suitable for Performance Testing:
    Manual testing cannot simulate thousands of users or load — tools are needed for that.

  5. Limited Coverage:
    Due to time constraints, testers may not cover every possible test scenario manually.

  6. Slower Feedback:
    Manual testing gives slower feedback after code changes, which delays releases.

  7. Not Scalable:
    As the project grows, manual testing becomes harder to manage and track.

  8. High Cost in Long Term:
    While cheap at the start, manual testing becomes expensive due to the effort and time needed in every cycle.

 

Comments

🌟🌟🌟🌟☆ Great platform with helpful onboarding! Some areas could be streamlined, but overall a very positive experience.