Software Technology FAQs and Books

Here you can find information on information technology, software techology related faqs and books, documentation

1.10.05

software testing-4

Does automation replace manual testing?
No, it does not. There could be several scenarios that cannot be automated or simply too complicated that manual testing would be easier and cost effective. Further automation tools have several constrains with regard the environment in which they run and IDEs they support.

How will you choose a tool for test automation?
OR
How we decide which automation tool we are going to use for the regression testing?
• Based on risk analysis like: personnel skills, companies software resources
• Based on Cost analysis
• Comparing the tools features with test requirement.
• Support for the applications IDE, support for the application environment/platform.

What could wrong with automation testing?
There are several things. For ex. Script errors can cause a genuine bug to go undetected or report a bug in the application when the bug does not actually exist.

How will you describe testing activities?
Testing planning, scripting, execution, defect reporting and tracking, regression testing.

What type of scripting techniques for test automation do you know?
Modular tests and data driven test

What are good principles for test scripts?
1. Portable
2. Repeatable
3. Reusable
4. Maintainable

What type of document do you need for QA, QC and testing?
Following is the list of documents required by QA and QC teams
Business requirements
SRS
Use cases
Test plan
Test cases

What are the properties of a good requirement?
Understandable, Clear, Concise, Total Coverage of the application

What kinds of testing have you done?
Manual, automation, regression, integration, system, stress, performance, volume, load, white box, user acceptance, recovery.

Have you ever written test cases or did you just execute those written by others?
Yes, I was involved in preparing and executing test cases in all the project.

How do you determine what to test?
Depending upon the User Requirement document.

How do you decide when you have ‘tested enough?’
Using Exit Criteria document we can decide that we have done enough testing.

Realising you won’t be able to test everything-how do you decide what to test first? OR
What if there isn't enough time for thorough testing?
Use risk analysis to determine where testing should be focused. Since it's rarely possible to test every possible aspect of an application, every possible combination of events, every dependency, or everything that could go wrong, risk analysis is appropriate to most software development projects. This requires judgment skills, common sense, and experience. (If warranted, formal methods are also available.) Considerations can include:
• Which functionality is most important to the project's intended purpose?
• Which functionality is most visible to the user?
• Which functionality has the largest safety impact?
• Which functionality has the largest financial impact on users?
• Which aspects of the application are most important to the customer?
• Which aspects of the application can be tested early in the development cycle?
• Which parts of the code are most complex, and thus most subject to errors?
• Which parts of the application were developed in rush or panic mode?
• Which aspects of similar/related previous projects caused problems?
• Which aspects of similar/related previous projects had large maintenance expenses?
• Which parts of the requirements and design are unclear or poorly thought out?
• What do the developers think are the highest-risk aspects of the application?
• What kinds of problems would cause the worst publicity?
• What kinds of problems would cause the most customer service complaints?
• What kinds of tests could easily cover multiple functionalities?
• Which tests will have the best high-risk-coverage to time-required ratio?

Where do you get your expected results?
User requirement document

If automating-what is your process for determining what to automate and in what order? OR
Can you automate all the test scripts? Explain ? OR
How do you plan test automation? OR
What criteria do you use when determining when to automate a test or leave it manual?
1. Test that need to be run for every build of the application
2. Tests that use multiple data values for the same actions( data driven tests)
3. Tests that require detailed information from application internals
4. Stress/ load testing

If you’re given a program that will average student grades, what kinds of inputs would you use?
Name of student, Subject, Score

What is the exact difference between Integration and System testing, give me examples with your project?
Integration testing: An orderly progression of testing in which software components or hardware components, or both are combined and tested until the entire system has been integrated.
System testing: The Process of testing an integrated hardware and software system to verify that the system meets its specified requirements.

How do you go about testing a project?
1. Analyze user requirement documents and other documents like software specifications, design document etc.
2. Write master test plan which describe the scope, objective, strategy, risk/contingencies, resources
3. Write system test plan and detailed test cases
4. Execute test cases manually and compare actual results against expected results.
5. Identify mismatches, report defect to the development team using defect reporting tool.
6. Track defect, perform regression test to verify that defect is fixed and did not disturb other parts of the application.
7. Once all the defects are closed and application is stabilized, automate the test scripts for regression and performance testing.

How do you go about testing a web application?
We check for User interface, Functionality, Interface testing, Compatibility, Load/Stress, and Security.

Difference between Black and White box testing?
Black box testing: Functional testing based on requirements with no knowledge of the internal program structure or data. Also known as closed-box testing.
White Box testing: Testing approaches that examine the program structure and device test data from the program logic.

What is configuration management? Tools used?
Configuration management: helps teams control their day-to-day management of software development activities as software is created, modified, built and delivered. Comprehensive software configuration management includes version control, workspace management, build management, and process control to provide better project control and predictability

What are Individual test case and Workflow test case? Why we do workflow scenarios
An individual test is one that is for a single features or requirement. However, it is important that related sequences of features be tested as well, as these correspond to units of work that user will typically perform. It will be important for the system tester to become familiar with what users intend to do with the product and how they intend to do it. Such testing can reveal errors that might not ordinarily be caught otherwise. For example while each operations in a series might produce the correct results it is possible that intermediate results get lost or corrupted between operations.

What are the testing tools are you familiar with?
TestDirector, WinRunner, LoadRunner, Rational RequisitPro, Rational TestManager, Rational Robot, Rational ClearQuest and SilkTest.

How did you use automating testing tools in your job?
Automating testing tools are used for preparing and managing regression test scripts and load and perofromenance tests.

What is data-driven automation?
If you want to perform the same operations with differnet set of data, we can create data driven test with loop. In each iteration test is driven by differnet set of data. In order for automation to use data to drive the test, we must subsitute the fixed values in the test with variables.