If you apply for QA engineer post following are top questions you are likely to questioned by your interviewer. I will be listing all the possible question that i have faced myself during my interview time period by different companies. 

1. What is QA?
 
Quality Assurance is the process of planning and defining the way of monitoring and implementing the quality processes within a team and organization. This method basically defines and sets the quality standards of the projects to ensure quality attribute in the final software product.

2. What are the difference between QA, QC and software testing?

The role of QA (Quality Assurance) is to monitor the quality of the "process" used to produce the software. While the software testing, is the process of ensuring the functionality of final product meets the user's requirement. 

3. What is test plan and test strategy?

A test plan for software project can be defined as a document that defines the scope, objective, approach and emphasis on a software testing effort.Test plan is carried out by a testing manager or lead that describes how to test, when to test, who will test and what to test

Test strategy is a set of guidelines that explains test design and determines how testing needs to be done.A test strategy is carried out by the project manager. It says what type of technique to follow and which module to test

4. When QA testing should start in a project and why?

A good time to start the QA is from the beginning of the project startup.The more early it starts the more benefit it is to set the standards for achieving the quality.

5. Why QA should be required in a project?
  •  QA is the systematic and planned set of actions that guarantees that the products and the process conform to standards, requirements, and procedures.
  •  Processes encompass entire activities involved in designing, creating, improving and handling the software.
  • Products include the associated data, software, its documentation and the entire supporting as well as reporting paperwork.
  • QA encompasses the strategies for ensuring that procedures and standards are formed and are followed throughout the development cycle.
  • Acquiescence with established standards, procedures and requirements is measured via process monitoring, audits, product evaluation, and testing.

6. What is STLC and SDLC?

SDLC is Software Development LifeCycle, it is a systematic approach to develop a software.    
 The process of testing a software in a well planned and systematic way is known as software testing life cycle(STLC)

7. What are the difference between STLC and SDLC?


8.What are the types of testing?

9. What are functional and non-functional testing?

10. How do you define a format of writing a good test case?

    - Test case ID
    -Test case description
    -Severity
    -Priority
    -Environment
    -Build version
    -Steps to execute
    -Expected results
    -Actual results

11. How would you ensure that your testing is complete and has good coverage?

Requirement traceability matrix and Test coverage matrices helps  to determine that our test cases have good coverage.

12. What is Load and Stress testing?

 Load Testing
A load test is type of performance testing which is conducted to understand the behavior of the application under a specific expected load. Load testing is performed to determine a system’s behavior under both normal and at peak conditions.

 Stress Testing
This testing is done when a system is stressed beyond its specifications in order to check how and when it fails. This is performed under heavy load like putting large number beyond storage capacity, complex database queries, continuous input to the system or database load.

13. Explain the steps for Bug Cycle?
  1. New
  2. Open/Assigned
  3. Deferred
  4. Droped
  5. Rejected
  6. Fixed
  7. Fixed-Closed
  8. Re-opened

14. What is Agile testing and what are the advantages and methods of Agile testing?

A software testing practice that follows the principles of agile software development is called Agile Testing. Agile is an iterative development methodology.
Advantages: 
  • Saves time and money
  • Reduces documentation
  • Flexible and highly adaptable to changes
  • Regular feedback from the end user
  • Better determination of issues through daily meetings
Methods
  •   Behavior Driven Development (BDD)
  •  Acceptance Test Driven Development (ATDD)
  •  Exploratory Testing

15. What are the tools used by a tester while testing?

Mostly used tools as a QA

Automation test tools
i. Selenium
ii. Cucumber
iii. Telerik Test Studio
iv. Appium
v. TestComplete
vi. SoapUI
vii. QTP

Performance test tool
i. Apache JMeter
ii. LoadRunner
iii. LoadUI
iv.WebLOAD
v. LoadNinja

Bug management tools
i. Bugzilla
ii. Jira
iii. Redmine
iv. Mentis

Other tools
i. MSSQL server
ii. Jenkins
iii. RabbitMQ
iv. PuTTyssh
v. WinScp

16. Explain what is the difference between Regression testing and Retesting?
Regression testing
Retesting
Regression testing is a type of software testing that intends to ensure that changes like defect fixes or enhancements to the module or application have not affecting unchanged part
Retesting is done to make sure that the tests cases which failed in last execution are passing after the defects against those failures are fixed.
The purpose of Regression Testing is that new code changes should not have any side effects to existing functionalities
Re-testing is done on the basis of the Defect fixes
Regression testing is done for passed test cases
Retesting is done only for failed test cases
You can do automation for regression testing, Manual Testing could be expensive and time-consuming
You cannot automate the test cases for Retesting
Defect verification is not the part of Regression Testing
Defect verification is the part of re-testing


17. What is black box and white box testing?

Black Box Testing
is a testing method in which the internal structure/ design/ implementation of the product being tested is NOT known to the tester.

White Box Testing
is a testing method in which the internal structure/ design/ implementation of the product being tested is known to the tester. It is mostly done by developers themselves.

19. What is the advantage of automation over manual testing approach?
  • Finds more bugs compare to a human tester
  • Have a speedy and efficient process 
  • Process can be recorded and test report can be generated easily using software tools, so it works without tiring and fatigue unlike humans in manual testing
  • Testing coverage can be increased because of automation testing tool never forget to check even the smallest unit 
  • Improves Customer Loyalty and Partner Trust

20. Simple SQL commands

Please refer this site
https://www.w3schools.com/sql/default.asp