- What is White box testing/unit testing?
Unit testing – The most ‘micro’ scale of testing; to test particular functions or code modules. Typically done by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code. Not always easily done unless the application has a well-designed architecture with tight code; may require developing test driver modules or test harnesses.
- What is Integration testing?
Integration testing – Testing of combined parts of an application to determine if they function together correctly. The ‘parts’ can be code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems.
- What is Black box testing?
Black Box testing is also called system testing which is performed by the testers. Here the features and requirements of the product as described in the requirement document are tested.
- What knowledge you require to do white box, integration and black box testing?
For white box testing you need to understand the internals of the module like data structures and algorithms and have access to the source code and for black box testing only understanding/functionality of the application.
- What is Regression testing?
Regression testing: Re-testing after fixes or modifications of the software or its environment. It can be difficult to determine how much re-testing is needed, especially near the end of the development cycle. Automated testing tools can be especially useful for this type of testing.
- Why do we do regression testing?
In any application new functionalities can be added so the application has to be tested to see whether the added functionalities have affected the existing functionalities or not. Here instead of retesting all the existing functionalities baseline scripts created for these can be rerun and tested.
- How do we regression testing?
Various automation testing tools can be used to perform regression testing like WinRunner, Rational Robot and Silk Test.
- What is Integration testing?
Testing of combined parts of an application to determine if they function together correctly. The ‘parts’ can be code modules, individual applications, client and server applications on a network, etc. This type of testing is especially relevant to client/server and distributed systems.
- What is the difference between exception and validation testing?
Validation testing aims to demonstrate that the software functions in a manner that can be reasonably expected by the customer. Testing the software in conformance to the Software Requirements Specifications.
Exception testing deals with handling the exceptions (unexpected events) while the AUT is run. Basically this testing involves how to change the control flow of the AUT when an exception arises.
- What is the difference between regression automation tool and performance automation tool?
Regression testing tools capture test and play them back at a later time. The capture and playback feature is fundamental to regression testing.
Performance testing tool determine the load a server can handle. And must have feature to stimulate many users from one machine, scheduling and synchronize different users, able to measure the network load under different number of simulated users.
- What are the roles of glass-box and black-box testing tools?
Glass-box testing also called as white-box testing refers to testing, with detailed knowledge of the modules internals. Thus these tools concentrate more on the algorithms, data structures used in development of modules. These tools perform testing on individual modules more likely than the whole application. Black-Box testing tools refer to testing the interface, functionality and performance testing of the system module and the whole system.
- What was the test team hierarchy?
- Which MR tool you used to write MR?
- What are the different automation tools you know?
Automation tools provided by Mercury Interactive – WinRunner, LoadRunner; Rational – Rational Robot; Segue- SilkTest.
- What is the role of a bug tracking system?
Bug tracking system captures, manages and communicates changes, issues and tasks, providing basic process control to ensure coordination and communication within and across development and content teams at every step..
- What is ODBC?
Open Database Connectivity (ODBC) is an open standard application-programming interface (API) for accessing a database. ODBC is based on Structured Query Language (SQL) Call-Level Interface. It allows programs to use SQL requests that will access databases without having to know the proprietary interfaces to the databases. ODBC handles the SQL request and converts it into a request the individual database system understands.
- Did you ever have problems working with developers?
NO. I had a good rapport with the developers.
- Describe your experience with code analyzers?
Code analyzers generally check for bad syntax, logic, and other language-specific programming errors at the source level. This level of testing is often referred to as unit testing and server component testing. I used code analyzers as part of white box testing.
- How do you feel about cyclomatic complexity?
Cyclomatic complexity is a measure of the number of linearly independent paths through a program module. Cyclomatic complexity is a measure for the complexity of code related to the number of ways there are to traverse a piece of code. This determines the minimum number of inputs you need to test all ways to execute the program.
- Who should test your code?
- How do you survive chaos?
I survive by maintaining my calm and focusing on the work.
- What Process/Methodologies are you familiar with?
* Waterfall methodology
* Spiral methodology
[Or talk about Customized methodology of the specific client]
- What you will do during the first day of job?
Get acquainted with my team and application
- Tell me about the worst boss you’ve ever had.
Fortunately I always had the best bosses, talking in professional terms I had no complains on my bosses.
- What is a successful product?
A bug free product, meeting the expectations of the user would make the product successful.
- What do you like about Windows?
Interface and User friendliness
Windows is one the best software I ever used. It is user friendly and very easy to learn.
- What is good code?
These are some important qualities of good code
Cleanliness: Clean code is easy to read; this lets people read it with minimum effort so that they can understand it easily.
Consistency: Consistent code makes it easy for people to understand how a program works; when reading consistent code; one subconsciously forms a number of assumptions and expectations about how the code works, so it is easier and safer to make modifications to it.
Extensibility: General-purpose code is easier to reuse and modify than very specific code with lots of hard coded assumptions. When someone wants to add a new feature to a program, it will obviously be easier to do so if the code was designed to be extensible from the beginning.
Correctness: Finally, code that is designed to be correct lets people spend less time worrying about bugs and more time enhancing the features of a program.
- Who are Kent Beck, Dr Grace Hopper, and Dennis Ritchie?
Kent Beck is the author of Extreme Programming Explained and The Smalltalk Best Practice Patterns.
Dr. Grace Murray Hopper was a remarkable woman who grandly rose to the challenges of programming the first computers. During her lifetime as a leader in the field of software development concepts, she contributed to the transition from primitive programming techniques to the use of sophisticated compilers.
Dennis Ritchie created the C programming language.
- How you will begin improve the QA process?
By following QA methodologies like waterfall, spiral instead of using ad-hoc procedures.
- What is UML and how it is used for testing?
The Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. It simplifies the complex process of software design, making a “blueprint” for construction. UML state charts provide a solid basis for test generation in a form that can be easily manipulated. This technique includes coverage criteria that enable highly effective tests to be developed. A tool has been developed that uses UML state charts produced by Rational Software Corporation’s Rational Rose tool to generate test data.