User:IIgwilo (WMF)/SecurePoll Test Strategy

From Meta, a Wikimedia project coordination wiki

Introduction[edit]

The Test Strategy will serve as a guideline to define test objectives, coverage, and execution plans. And identify potential risk, roles, responsibilities, and rollout plan to achieve the secure poll projects goals. For in-depth details about SecurePoll see SecurePoll and SecurePoll Redesign Note: This is a collaborative and living document.

Scope and overview:[edit]

The testing will concentrate on the use of SecurePoll to successfully conduct Wikimedia elections and generate timely election results. Testing will cover the functional and non functional testing per requirement specification document(Phabricator tasks) using local, beta, and production environment. This document will be reviewed by the SecurePoll users, product and engineering team. This document will be approved by the SecurePoll engineering team. <Testing activities and timeline:> Georgia Piedmont Wikimedians/Grants

Testing In Scope:
Functionality Status(Complete, Incomplete
Example Example
Example Example
Example Example
Testing Not In Scope:
Functionality Status(Complete, Incomplete
Example Example
Example Example

Test automation Scope:[edit]

To be determined

Test Approach[edit]

Functional Test:

  • Unit Testing

Link to development team unit testing strategy here

  • Smoke Testing
  • Sanity Testing
  • Integration Testing
  • White box testing
  • Black Box testing
  • User Acceptance testing

<Enter test plan> <User permission testing> error handling database auditing help text User interface Acceptance Test API testing batch response time online response time parallel running final system documentation sign-off Translation testing

  • Requirement Traceability Matrix
  • Regression Testing

SecurePoll Improvements Test_Results

Non-Functional test:

  • Performance Testing
  • Load Testing
  • Volume Testing
  • Stress Testing
  • Security Testing
  • Installation Testing
  • Penetration Testing
  • Compatibility Testing
  • Migration Testing
  • Recovery Testing
  • Usability testing

Test Environment[edit]

The following table documents the testing environment criteria for each testing task:
Testing Task Name Environment URL Database Name
Functional Test Beta https://vote.wikimedia.beta.wmflabs.org/wiki/Special:SecurePoll n/a
Acceptance Test Production https://vote.wikimedia.org/wiki/Special:SecurePoll n/a
Acceptance Test Domain example https://en.wikipedia.org/wiki/Special:SecurePoll n/a

Testing Tools[edit]

List the tools that you are going to use. Also, list the Bug tracking tool here. <Example tool Open STV>

Resources/Roles & Responsibilities[edit]

Identify the groups responsible for managing, designing, preparing, executing, and resolving the test activities as well as related issues like test and production environment.

Task and Resource allocation
Task Responsibility Contact Status(Complete, Incomplete
Example Example Example Example
Example Example Example Example

Release Control and Schedules[edit]

Release management timetable that will make sure test execution for all modification in that release and identify the deliverable documents like Test Plan/cases, Test incident and Summary reports


Risk Analysis and Contingency Plans[edit]

Identify the risk(/risk level) assumptions of the test plan. Give a clear plan to mitigate the risks. See election poll readiness document


Review and Approvals[edit]

All these activities are reviewed and sign off by the business team, project management, development team, etc.

Reviews/Request approvals of this plan:
Name/Title Approve date Comment
Example Example Example
Example Example Example
Example Example Example