WAUnit is a testing framework for Google Analytics (other platforms coming soon)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
WAUnit
sample
tests
LICENSE-2.0.txt
README.rst
setup.py

README.rst

Web Analytics Unit (WAUnit)

WAUnit is a testing framework developed by Joao Correia of the Blast Analytics & Marketing team. The current version is targeted for use with Google Analytics (other platforms coming soon).

When you setup custom tracking for a website you have to validate if the hits are correct, HitInspect automates the verification of tracking specifications.

Watch the Youtube video 'WAUnit Overview'.

In a nutshell this is how it works:

https://cloud.githubusercontent.com/assets/1695738/13732067/df23460a-e936-11e5-8dfe-64c628f59628.png

  1. A python unittest using Selenium Webdriver is executed
  2. A local proxy captures the Google Analytics hits
  3. The unittest compares the specs with the proxy hit log and returns OK/FAIL for each test and detailed information on what doesn’t match.

Requirements

  • Python 2.7
  • Selenium
  • mitmproxy

Installation

Install WAUnit using pip. Notice a core requirement is mitmproxy. Be sure to install SSL certificates for mitmproxy so the proxy can capture SSL traffic.

python pip install WAUnit

Quickstart

If you are not familiar with Selenium read the getting started with Selenium Python Bindings. Watch the Youtube video 'Getting Started with WAUnit'

  1. Create a folder for the project
  2. Create a configuration file: wunit.cfg
  3. Start the proxy: waunitproxy –config wunit.cfg
  4. A file named hitdata.db will be created in your home directory
  5. Download [sample.py](#) to your project directory
  6. Execute the sample with: python sample.py

wunit.cfg

[WAUnit]
Only googleanalyticsuniversal is available right now
parser = googleanalyticsuniversal

[Proxy] host = 127.0.0.1
port = 8080
hitsdb = hitsdata

Questions? Comments?

Drop us a line at @blastam