Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add testing guide #1987

Merged
merged 2 commits into from
Nov 29, 2018
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,6 @@
- [idea-import.md](idea-import.md): Import Bisq sources into IntelliJ IDEA
- [dev-setup.md](dev-setup.md): Set up a self-contained local Bisq network on Bitcoin regtest
- [dao-setup.md](dao-setup.md): Set up a complete Bisq DAO development environment
- [testing.md](testing.md): Learn about the Bisq testing process and how you can contribute.

Looking for user-facing documentation? See https://docs.bisq.network.
56 changes: 56 additions & 0 deletions docs/testing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Bisq Testing Guide

This guide describes the testing process performed prior to each release.

## Prerequisites

- Build Bisq from source (see [build.md](build.md))
- Setup a development/testing environment (see [dev-setup.md](dev-setup.md))
- Register an account with [TestQuality](https://bisq.testquality.com)

## Communication Channels

If you would like to discuss and/or contribute to Bisq's testing effort, join us in the [#testing](https://bisq.slack.com/messages/CEBLT79ML) channel within the [Bisq Slack workspace](https://bisq.network/slack-invite).

## Testing Process

[TestQuality](https://bisq.testquality.com) is used to manage and track the manual testing process.

### Definitions

First, some definitions within the context of TestQuality.

- **Test Case:** a set of conditions under which a tester will determine whether the system under test satisfies requirements or works correctly.
- **Test Suite:** a collection of test cases that are intended to be used to test the system to show that it has some specified set of behaviours.
- **Test Plan:** defines a particular testing scope with testing activities.
- **Test Plan Run:** an occurrence in which a particular test plan is executed.

### Testing Workflow

Once logged in to TestQuality, from the dashboard select the bisq project.
devinbileck marked this conversation as resolved.
Show resolved Hide resolved

#### Executing a Test Plan Run

A new test plan run is created every time a test plan needs to be executed. This allows for tracking the history of test plan’s executions.

To execute a test plan run:

1. Open the test plan run to be executed.

1. Select the "Running" state in order to update the start time (used for time tracking purposes).

1. Navigate the test suites and perform each test case.

- Specify a status for each step or for the overall test case and optionally enter the time spent on each step. Select from one of the following statuses:
- **Pass:** the test case or step has passed successfully.
- **Pending:** the test case or step has yet to be performed.
- **Fail:** there is an issue (defect) related to the test case or step.
- **Block:** the test case or step is unable to be performed.
- **Retest:** the test case or step needs to be retested.
- **Skip:** the test case or step does not need to be performed.

- If required, use the `Reason for Status` field to add any comments, notes and actual test results. This is especially beneficial to provide details if a test fails.

- If applicable, link an existing or create a new issue (defect) if it was found during the test plan run execution.

1. Once all test cases within the test plan run have been executed, select the "Complete" state in order to update the end time.