🖌️
Product Process Documentation
  • Product Process Documentation
  • Definition of Done (DoD)
    • General checkpoints
      • Specific checkpoints by team
    • Important process: QA review & PO review
      • QA Review
      • PO Review
  • Work Items
    • Product Backlog Item (PBI)
    • Bug
      • Basic rules for creating a bug
      • How to report a Bug
    • Bugs Management
  • Code Standards
  • Different Test Levels
    • Unit Test
      • Frontend Unit Testing
        • What is a Unit Test?
        • How do I know if I am developing a good unit test?
        • AAA (Arrange, Act and Assert)
        • Overloaded test suits
        • Setup & Teardown
          • JEST Mocks
          • FakeTimers
        • Istanbul Annotations
        • C8 Annotations
        • JEST Runner (Debug unit tests with Jest)
    • Component Test
      • Frontend Component Testing
        • What is Component Testing?
        • Best practices
        • Bad practices
        • Setup
          • Sandbox
          • Mocks, Services and Providers
          • Test scenario
    • Integration Test
      • Frontend Integration Testing
        • What is a Integration Test?
        • AAA (Arrange, Act and Assert)
        • Best Practices
        • Bad practices
        • Setup & Teardown
        • How to create a scenario
          • Create the migrated app
          • Add to project
        • How to debug
        • Common problems
      • Testing Driven Development Guide and recommendations
    • Functional Test
    • Security Testing
      • Security Testing Tools
      • Frontend Security Testing
    • Performance testing
    • Best Practices
    • Test Documentation
  • Run test projects
    • General steps
    • Specific steps by team
  • DevOps
    • Pipelines
    • Builds
    • Specific information by team
    • Test plan
    • Service Hooks for Azure DevOps Notifications
      • Slack Notifications
      • Microsoft Teams Notifications
  • Dashboards
    • General
    • QA Dashboards
  • Release Process
    • General Steps
    • Specific steps by team
  • Migration Cells
    • Basics of testing process
  • Release process
  • References
Powered by GitBook
On this page

Was this helpful?

  1. Definition of Done (DoD)
  2. Important process: QA review & PO review

QA Review

PreviousImportant process: QA review & PO reviewNextPO Review

Last updated 1 year ago

Was this helpful?

The concept of Quality Assurance Review (QA Review) is a company internal concept, but it is the merge of different techniques and tools related to quality assurance literature and quality control literature. This process is a walkthrough through the work made by the developer in order to assure that the was completed and also determine if the scenarios in the different levels of testing are enough to get the minimum of expected coverage (thinking in the new change or fix and not in code coverage concept).

This process tries to establish inside the company a quality culture and also helps the quality assurance responsible to understand the current state of the product after each code increment.

The QA review checks all the work done in one PBI or bug and not is only another approval in the Pull Request, this is important because the goal of the review is to determine if the new code or the fix is the correct solution under a quality view and not under a development view, in other words, the reviewer checks if the change is correct for the users, the product, the sales team, and other development teams in order to assure the quality expectations of the company. See .

Objectives/Tasks:

  1. Understand the Requirements: Before diving into the review process, make sure you have a thorough understanding of the project requirements, user stories, and acceptance criteria. This will help you validate whether the implemented features meet the specified criteria.

    1. User Stories

    2. Acceptance Criteria

    3. Project Requirements/DoD

    4. Next steps or requirements documented (TODO annotation).

  2. Review Code Changes: As part of your QA review, examine the code changes introduced in the pull request. Focus on aspects such as coding standards, maintainability, scalability, and adherence to best practices. Pay attention to any changes related to automated tests, ensuring they cover appropriate scenarios and are well-written.

    1. Documentation

    2. Coding Standards

    3. Lintings (not modified, ignored or removed through pragmas, editor.config, csproj pragmas, rulesets, .lint files)

    4. Test design

  3. Check Build and SonarQube Analysis: Evaluate the results of the build phase and SonarQube analysis. Ensure that the build process completes successfully without any errors or warnings. Review the SonarQube reports to identify any code smells, bugs, vulnerabilities, or security issues that need attention.

    1. Quality metrics

    2. SQ Code Smells

    3. Bugs

    4. Vulnerabilities

    5. Security Hotspots

    6. Code duplications

    7. Code complexity

  4. Verify Test Phase: Review the results of the test phase executed during the build validation. Ensure that all automated tests, including unit tests and integration tests, pass successfully. Investigate any test failures or errors and provide feedback to the development team for resolution.

    1. Unit test validation

    2. Unit test coverage

    3. Integration test validation

    4. Integration test coverage

    5. Testing standards validation

  5. Assess E2E and Regression Tests: Examine the execution results of the end-to-end (E2E) tests and regression tests performed in the release pipeline. Validate that these tests cover critical workflows and scenarios, providing adequate test coverage. Identify any failures or issues encountered during the test execution.

    1. Review if E2E should be added.

    2. Regressions or bugs logged.

  6. Provide Feedback: Document your findings and observations from the QA review process. Communicate any defects, issues, or areas for improvement to the development team through comments on the pull request or other collaboration channels. Offer constructive feedback and suggestions for enhancing the quality of the codebase and test suite.

  7. Collaborate with Team: Collaborate closely with developers, testers, and other stakeholders throughout the review process. Foster a culture of collaboration and continuous improvement within the team, encouraging open communication and knowledge sharing.

  8. Track and Follow Up: Keep track of the status of issues identified during the QA review and follow up on their resolution. Monitor the progress of fixes and ensure that all identified issues are addressed satisfactorily before approving the pull request for merging

References about QA Reviews