0% found this document useful (0 votes)
4 views5 pages

QA Exam - V4

The document outlines a test for QA Analyst candidates, covering topics such as the importance of test plans, risk analysis, and the differences between errors, defects, and issues. It also discusses test automation, the process for creating test scripts, and the distinction between front-end and back-end testing. Additionally, it addresses how to estimate testing time, handle documentation challenges, and prioritize testing efforts based on defect clustering.

Uploaded by

FELIPE LOPEZ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views5 pages

QA Exam - V4

The document outlines a test for QA Analyst candidates, covering topics such as the importance of test plans, risk analysis, and the differences between errors, defects, and issues. It also discusses test automation, the process for creating test scripts, and the distinction between front-end and back-end testing. Additionally, it addresses how to estimate testing time, handle documentation challenges, and prioritize testing efforts based on defect clustering.

Uploaded by

FELIPE LOPEZ
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Test for QA Analyst Candidates

1. Describe the importance of having Test Plans in the Software Development process?
The test plans are important because they allows us to define the test strategy, the criteria for
initiation, acceptance and suspension; identify the required environments, the staff assigned to
the project and know their skills, the methodology with which we will work, additionally,
identify the risks that the project may have and define a plan to act if the risk is presented.

Developing a good testing plan allows us to meet the quality objectives in the development of
the system. This is done by analyzing the requirements to link the traceability matrix, defined
specifications, use cases and user stories, this to identify the functionalities to be tested, as well
as functional and non-functional requirements.

2. What is risk analysis? What does it have to do with Severity and Priority? Provide a real-life
example.
It is the analysis of uncertain events or conditions that, if they occur, can have a positive or
negative effect on at least one of the project objectives. Risks can be categorized with a level of
severity and priority, depending on how they may affect project objectives such as time, cost,
scope or quality.

E.G:
In one of my jobs we had a lot of complications because of the following:

The project manager had serious problems with the entire team. 60% of the team resigned and
after that the project manager was fired, so the company had to hire new staff and we had to
develop and implement a large contingency plan to restore the project to its previous state:

- It was necessary to catalogue the priorities and severity of the events and…
- An investment was made to speed up the hiring of personnel through outsourcing companies.
- The programmers, testers and designers with greater antiquity, made express trainings for the
new members.
- Because the new programmers were getting to know the system's cycles, in addition to the
fact that there was no documentation or standards in the code; the development time increased
considerably and it was necessary to work overtime on many occasions.
- The releases had to be rescheduled to achieve quality deliveries on the set deadlines.
- Within each release, missing features and overtime to be worked had to be justified.

3. If you have an application that runs smoothly in TEST Environment, but it presents some
errors or issues when it’s running in DEV Environment, what could be the cause of it?
Configuration:
It could be that the module, page or function to be tested depends on some variable or
configuration that is not made in the DEV environment.

Code in repository:
It may be the case that some part of the code was not pulled or pushed into the repository
when it was placed in DEV.
Load or Stress:
In some cases the load that is generated in the environments is different and can affect the
functionality of the system.

Insufficient tests:
It also happens that the tester omits or only performs very basic tests with which it was not
possible to detect the issue in the TEST environment.

4. What's the difference between an Error, Defect and an Issue? Provide real-life examples to
illustrate your explanations.
Error is a mistake made by the software developer or programmer, while preparing the code or
design of the software, and can be caused by a misconception of something or an action that
produces an incorrect result.

- The customer may provide insufficient or incorrect information about the real end user
requirements.
- The business analyst may misinterpret or misunderstand the requirements.
- The software architect can cause a defect in the software design.
- Someone on the team can also make mistakes due to unclear requirements, time pressure or
other reasons.

Defect is defined as any deviation or irregularity from the specifications mentioned in the
product functional specification document. These impact the functionality of the software as
well as the performance and are found during the testing process.

- An error in coding or logic that impacts the software and causes it to malfunction or perform
in an inaccurate manner.
- Any deviation from the customer requirements also leads to defects in the software.
- Troubles or mistakes in the external behavior and design structure.

Issue is the visible manifestation of a defect or the inability of the software to perform the
functions as expected, these happen under some special circumstances.

- Display of an alert message that was not defined.


- A form that allows you to modify information about fields that should be disabled when editing
a record.
- A record does not change its area after completing a process or when it was sent.

5. Choose the true statement. Justify your answer.


● An error causes a defect
● An error causes a defect which causes a Failure
● Not all defects result in a failure
● A failure only occurs when code is executed.
● C and D are correct
● A and C are correct
If something is programmed with a bad understanding of the requirement or the
requirement has an error, the function previously programmed will have a different function
than what is really necessary, but only if the defect is detected during an execution it can
cause a failure.
6. How to overcome the challenge of not having input documentation for testing?
If some kind of input documentation doesn't exist, a standard estimate can be implemented
taking a percentage of the time allocated for development, e.g:

If the time destined for development is 600 hours, the standard for the estimation can be 25%,
giving a total of 150 hours for the creation and execution of tests. This is not the best practice
but it can work for basic control.

7. Suppose you have a “Test Plan and Test Cases” document which has around 500 test cases
(with 8 modules in it). If the customer reaches out to you requesting an estimate, which would
be your estimate. Justify your answer.
Although we already have a test plan and its test cases done, it's necessary to have more
information to do a more accurate estimate, e.g:
- Time to work and amount of testers available (this to know how the hours will be distributed).
- Know if the tests will be manual or will include automation.

Total of test cases = 500 TC


Design time = 25 min x TC
Total design time = 250 hours
Runtime = 20 min x TC (executio, updating the test management tool and generating evidence)
Total Runtime = 166 hours
2 Execution cycles (each cycle with correction of its bugs)
Total cycles time = 332 hours
Total Design and Execution = 582 hours
Test project management (clarification of doubts, meetings, etc) = 10% == 58 hours
Preparation of test data: 10% == 58 hours

TOTAL = 698 hours

Number of testers based on time: 3 Testers and 30 days


Design time: 11 days - Monday to Friday == 264 hours
Running time: 14 days - Monday to Friday == 336 hours
Project management and data preparation: 5 days - Monday to Friday == 120 hours

698 hours % 8 modules = 87.25 hours by module

8. Your testing team has discovered numerous defects in a certain piece of code. Other parts of
the system have a much smaller number of defects. How should you use this information in
further testing efforts? Justify your answer.
● Study the code and resolve only high-defect areas
● Concentrate on the high-defect areas because of defect clustering
● Concentrate equally on both low and high defect areas
● Focus on the low-defect areas because of defect clustering
● Analyze the code and resolve only low-defect areas

Area with numerous defects == Area1


Area with least defects == Area2
The team should focus equally on both areas because it must corroborate that the multiple
defects found in Area1 are resolved and prevent or detect in advance that Area2 has no defects
similar to Area1.

Another thing to take into account when deciding which area to prioritize is the delivery date,
the team should pay more attention to the area with the closest date.

The decision to prioritize the tests on the other pieces of code can also be made by whoever
programmed Area1 to check whether or not there are similar errors.

9. What is the Process for creating a test script?


- Identification data (ID, name, associated requirement).
- How to access the application.
- What preconditions must be included.
- Steps to execute the case.
- Step status.
- Expected results.
- Current results.
- Post-conditions.
- Status.

10. What are the fields in a bug report?


ID, name, description/summary, type, priority, status, environment, related test case, URL,
visual proof, steps to reproduce, extra/notes, assigned user, reporting user.

11. What is Test Automation? Can it improve the effectiveness of the test?
Test automation is the practice of running tests automatically, as well as managing test data; it
can improve the effectiveness of tests when the selection of tests to automate is well done and
utilizing results to improve software quality.

Test automation pursues the goal of simplifying time-consuming, repetitive or complex work,
making it effective and more productive. This saves energy, time and costs; as well as freeing
testers to concentrate on other tasks.

12. How will you decide on a tool for test automation?


The first thing is to decide if the project is a good candidate for automation, e.g:
- When there are many repetitive tests.
- When there are frequent iterations of regression tests.
- When it is necessary to simulate a large number of users using the application resources.
- When the system has a stable UI.
- When you should not rely only on the execution of manual tests for critical functionalities.

- Does there exist the qualified resources to assign automation tasks?


- What kind of tests are planned to be automated, back-end or front-end?
- How is the tool learning curve?
- Does it have any licensing costs?
- Level of support.
- Training, documentation, tutorials, guidelines.
- Ability to support continuous integration.
- Ease of configure and implement.
- Ease of developing and maintaining scripts.

13. Can automation testing replace manual testing? Explain your answer.
No, executing manual tests allows the tester to be an analyst and detect if the user experience is
user friendly, this is a task that until now cannot be achieved with automation. In addition,
automation is only a complement to manual testing; these will be developed and executed until
a stable application is available, and to achieve this, manual tests must be performed

14. What is the difference between Front End Testing and Back End testing?
- Frontend Testing checks the presentation layer whereas backend testing checks the application
and database layer.
- The frontend tester must have knowledge about the business requirements to perform on the
GUI. The backend tester performs testing in the database and using Structured Query Language.
- Frontend testing does not need any information to be stored in a database, but backend
testing needs information stored in the database.
- Frontend testing is essential to check the overall functionality of the application while backend
testing is important to check for deadlock, data corruption, data loss, etc​.

15. Situation: You want to perform backend testing with the help of SQL scripts for verification of
data integrity. How would you do that?

16. How to validate a Stored Procedure and a Function in SQL for new one and modified one? and
what is the difference between those objects?

17. Access to DemoBlaze website (​https://www.demoblaze.com/index.html​) and test the “Cart +


Purchase” functionality. Provide any documentation you consider relevant and a screen
recording showing the tests you will perform.

*Documents added in email

You might also like