Skip to main content

Automation-Assisted Manual Testing - http://masterqa.com

Project description

# MasterQA
[![pypi](https://img.shields.io/pypi/v/masterqa.svg)](https://pypi.python.org/pypi/masterqa) [![Build Status](https://travis-ci.org/masterqa/MasterQA.svg?branch=master)](https://travis-ci.org/masterqa/MasterQA)

### MasterQA combines SeleniumBase automation with manual verification to greatly improve the productivity and sanity of QA teams.

## (NOTE: **[MasterQA is now part of SeleniumBase!](https://github.com/seleniumbase/SeleniumBase/tree/master/seleniumbase/masterqa)**)
### ^^^^^^^^^^^^^^^^^^^


![](http://cdn2.hubspot.net/hubfs/100006/images/hybrid_screen.png "MasterQA")

### Run the example test:

(*Requires WebDrivers installed such as [Chromedriver](https://sites.google.com/a/chromium.org/chromedriver/downloads)*)

```bash
pip install masterqa

git clone https://github.com/masterqa/MasterQA.git

cd MasterQA/examples

nosetests masterqa_test.py # (This defaults to Chrome)
```

### Follow the [example](https://github.com/masterqa/MasterQA/blob/master/examples/masterqa_test.py) to write your own tests:

```python
from masterqa import MasterQA

class MasterQATests(MasterQA):

def test_xkcd(self):
self.open("http://xkcd.com/1512/")
for i in xrange(4):
self.click('a[rel="next"]')
for i in xrange(3):
self.click('a[rel="prev"]')
self.verify()
self.open("http://xkcd.com/1520/")
for i in xrange(2):
self.click('a[rel="next"]')
self.verify("Can you find the moon?")
self.click('a[rel="next"]')
self.verify("Do the drones look safe?")
self.click_link_text('Blag')
self.update_text("input#s", "Robots!\n")
self.verify("Does it say 'Hooray robots' on the page?")
self.open("http://xkcd.com/213/")
for i in xrange(5):
self.click('a[rel="prev"]')
self.verify("Does the page say 'Abnormal Expressions'?")
```

You'll notice that tests are written based on [SeleniumBase](http://seleniumbase.com), with the key difference of using a different import: ``from masterqa import MasterQA`` rather than ``from seleniumbase import BaseCase``. Now the test class will import ``MasterQA`` instead of ``BaseCase``.

To add a manual verification step, use ``self.verify()`` in the code after each part of the script that needs manual verification. If you want to include a custom question, add text inside that call (in quotes). Example:

```python
self.verify()

self.verify("Can you find the moon?")
```

MasterQA is powered by [SeleniumBase](http://seleniumbase.com), the most advanced open-source automation platform on the [Planet](https://en.wikipedia.org/wiki/Earth).


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

masterqa-1.1.6.tar.gz (7.3 kB view details)

Uploaded Source

Built Distributions

masterqa-1.1.6-py2.py3-none-any.whl (9.8 kB view details)

Uploaded Python 2 Python 3

masterqa-1.1.6-py2.7.egg (14.8 kB view details)

Uploaded Egg

File details

Details for the file masterqa-1.1.6.tar.gz.

File metadata

  • Download URL: masterqa-1.1.6.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.4.1 requests/2.21.0 setuptools/36.5.0 requests-toolbelt/0.7.1 clint/0.5.1 CPython/2.7.10 Darwin/18.5.0

File hashes

Hashes for masterqa-1.1.6.tar.gz
Algorithm Hash digest
SHA256 d0b7a5e2cfcf77510f478a412fcf5956056ec3d7bfe4b862b49605057462f8f7
MD5 b41d13621be7edeb6808adfe8974e5f3
BLAKE2b-256 89ea2ec0f506b8810119e71487e10ed14d5939cf7e9946220a140804c39210c8

See more details on using hashes here.

File details

Details for the file masterqa-1.1.6-py2.py3-none-any.whl.

File metadata

  • Download URL: masterqa-1.1.6-py2.py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.4.1 requests/2.21.0 setuptools/36.5.0 requests-toolbelt/0.7.1 clint/0.5.1 CPython/2.7.10 Darwin/18.5.0

File hashes

Hashes for masterqa-1.1.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a55c8fa915bb2e08a54321c34fa5598774a45938715bf432a183c9d45f594bdc
MD5 a61daccc8e3ceab5ab9e19d669a41fc1
BLAKE2b-256 a7fcd1e36e2af4fcf84cdc39d242a35866624d7b5b2c7ec977ed4dc5ca47fa1e

See more details on using hashes here.

File details

Details for the file masterqa-1.1.6-py2.7.egg.

File metadata

  • Download URL: masterqa-1.1.6-py2.7.egg
  • Upload date:
  • Size: 14.8 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.8.1 pkginfo/1.4.1 requests/2.21.0 setuptools/36.5.0 requests-toolbelt/0.7.1 clint/0.5.1 CPython/2.7.10 Darwin/18.5.0

File hashes

Hashes for masterqa-1.1.6-py2.7.egg
Algorithm Hash digest
SHA256 14cba7279e9c92021b4f8033b98e3d33b03ca5ef242984308a0079ac93b0cbc7
MD5 472ebe1b21c203e93d9d77585a108670
BLAKE2b-256 f7411d2deb6344808bab3387b1254952a1c01f607498d20496465c9246ed9fd7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page