Mozillians Tests
Python
Pull request Compare This branch is 13 commits behind mozilla:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
pages
requirements
tests
.gitignore
.travis.yml
Jenkinsfile
LICENSE.txt
README.md
setup.cfg
tox.ini
variables.json

README.md

Tests for mozillians.org

Thank you for checking out our Mozillians test suite! This repository contains tests for Mozillians - a community phonebook for core contributors.

license travis updates Python 3

Table of contents:

Getting involved

We love working with contributors to improve test coverage our projects, but it does require a few skills. By contributing to our test suite you will have an opportunity to learn and/or improve your skills with Python, Selenium WebDriver, GitHub, virtual environments, the Page Object Model, and more.

Our new contributor guide should help you to get started, and will also point you in the right direction if you need to ask questions.

How to run the tests

Clone the repository

If you have cloned this project already then you can skip this, otherwise you'll need to clone this repo using Git. If you do not know how to clone a GitHub repository, check out this help page from GitHub.

If you think you would like to contribute to the tests by writing or maintaining them in the future, it would be a good idea to create a fork of this repository first, and then clone that. GitHub also has great instructions for forking a repository.

Create test variables files

Some of the tests require credentials associated with account with specific access levels. Create at least three users on staging. Vouch at least two of these users by adding '/vouch' to the end of the profile URL for each user. In one of the vouched users' profiles, join at least one group and mark groups as private.

Create a file outside of the project (to avoid accidentally exposing the credentials) with the following format. You will reference this file when running the tests using the --variables command line option.

Note that the vouched key is a list. This is so that multiple vouched users can be used when running the tests in parallel. It's recommended that you have as many vouched users as you intend to have tests running in parallel.

{
  "web-mozillians-staging.production.paas.mozilla.community": {
    "users": {
      "vouched": [
        {
          "username": "vouched",
          "email": "vouched@example.com",
          "name": "Vouched User"
        },
      ],
      "unvouched": {
        "username": "unvouched",
        "email": "unvouched@example.com",
        "name": "Unvouched User"
      },
      "private": {
        "username": "private",
        "email": "private@example.com",
        "name": "Private User"
      }
    }
  }
}

Run the tests

You will need to install tox and then set the path to your variables file by adding it to the PYTEST_ADDOPTS environment variable:

$ PYTEST_ADDOPTS="--variables=/path/to/variables.json"

Then you can run the tests using:

$ tox

Writing tests

If you want to get involved and add more tests, then there are just a few things we'd like to ask you to do:

  1. Follow our simple style guide.
  2. Fork this project with your own GitHub account.
  3. Make sure all tests are passing, and submit a pull request.
  4. Always feel free to reach out to us and ask questions.