STLC (Software Testing Life Cycle)

Methodologies

SDLC or Development methodologies provide structured approaches for planning, designing, building, testing, deploying, and maintaining software.

  • Waterfall — traditional & sequential approach, where we can’t go back to previous steps. We start from requirements, design, implementation, testing, deployment and maintained.
  • Agile — flexible & iterative approach that emphases on collaboration, customer feedback and incremental development. Agile methodologies: SCRUM, Kanban.
    • SCRUM — focus is on time-bound iterations (Sprints) SCRUM is famous with ceremonies. we have daily-standups, planning, grooming, regular reviews and retros.
    • Kanban — focuses on visualizing work, continuous flow and limiting work in progress.
    • Extreme Programming — agile practice, emphasizes short development iterations, continuous integration, TDD and pair-programming.
  • V-Model (Validation and Verification Model): A variant of the Waterfall model where each development phase is paired with a corresponding testing phase.

STLC

STLC — structured approach that defines stages and activities involved for testing software.

  1. General planning and requirement analysis - determine which of the given requirements can be tested
  2. Test Planning and Test Strategy development
    1. Планирование это деятельность для достижения целей, если мы не планируем свои действия мы не сможем добиться желаемого результата.
    2. A high level doc describing test principles, approach, objectives of organization regarding testing.
    3. Test plan (cost and effort), types of testing, tools, divide roles and resp.
    4. Test plan = master (BE, FE, GraphQL), module (market, customisation, insights - graphql)
    5. PDCA - Plan, do, check, act. Как планировать?
  3. Test case development - create test cases and scripts (steps to produce, expected result, test data)
  4. Test environment setup
  5. Test execution - running tests according test cases and plan, evaluate the reqs. by Requirement Traceability Matrix, and report the defect
    1. Confirmation testing, regression testing
    2. Test log = chronological record of details about execution of tests
    3. Testware = artifacts produced during test process required to plan, design, and execute more tests.
  6. Test results reporting
    1. STLC closure - analysis and generating the test report (not just the doc, but, it should help us to create a new plan during the new sprint) to release a good product.
    2. Exit criteria = reqs. after accomplishing which we can say that task (testing) is over.
    3. Coverage / test coverage = code coverage is a measure of how much code is executed during testing, while test coverage is a measure of how much of the feature set is covered with tests.

Тестировщик входит в команду уже на этапе сбора требований

  1. Инициация (идея), планирование.
  2. Сбор требований от бизнес аналитика (тестируем не противоречат ли друг други требования, несколько полные они, как они написаны)
  3. Подключается затем дизайнер, и делает шаблоны или макет для приложения (тестируем шаблон на предмет соответствия требованиям, usability testing - на сколько удобно использовать приложение конечному пользователю)
  4. Если все нравится, начинается процесс разработки
  5. И разработанный продукт попадает в руки тестировщика (тестируем то что написали девелоперы, frontend и backend, альфа и бета и тд)
  6. Вход и эксплуатация
SuperMade with Super