summaryrefslogtreecommitdiff
path: root/docs/client/testers-howto.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/client/testers-howto.md')
-rw-r--r--docs/client/testers-howto.md215
1 files changed, 215 insertions, 0 deletions
diff --git a/docs/client/testers-howto.md b/docs/client/testers-howto.md
new file mode 100644
index 0000000..7c92dd5
--- /dev/null
+++ b/docs/client/testers-howto.md
@@ -0,0 +1,215 @@
+@nav_title = "Testers Guide"
+@title = "Howto for Testers"
+
+Howto for Testers
+=================
+
+This document covers a how-to guide to:
+
+1. Where and how report bugs for Bitmask \<reporting\_bugs\>, and
+2. Quickly fetching latest development code \<fetchinglatest\>.
+
+Let's go!
+
+Reporting bugs
+--------------
+
+Report all the bugs you can find to us! If something is not quite
+working yet, we really want to know. Reporting a bug to us is the best
+way to get it fixed quickly, and get our unconditional gratitude.
+
+It is quick, easy, and probably the best way to contribute to Bitmask
+development, other than submitting patches.
+
+> **Reporting better bugs**
+>
+> New to bug reporting? Here you have a [great document about this noble
+> art](http://www.chiark.greenend.org.uk/~sgtatham/bugs.html).
+
+### Where to report bugs
+
+We use the [Bitmask Bug
+Tracker](https://leap.se/code/projects/eip-client), although you can
+also use [Github
+issues](https://github.com/leapcode/bitmask_client/issues). But we
+reaaaally prefer if you sign up in the former to send your bugs our way.
+
+### What to include in your bug report
+
+- The symptoms of the bug itself: what went wrong? What items appear
+ broken, or do not work as expected? Maybe an UI element that appears
+ to freeze?
+- The Bitmask version you are running. You can get it by doing bitmask
+ --version, or you can go to Help -\> About Bitmask menu.
+- The installation method you used: bundle? from source code? debian
+ package?
+- Your platform version and other details: Ubuntu 12.04? Debian
+ unstable? Windows 8? OSX 10.8.4? If relevant, your desktop system
+ also (gnome, kde...)
+- When does the bug appear? What actions trigger it? Does it always
+ happen, or is it sporadic?
+- The exact error message, if any.
+- Attachments of the log files, if possible (see section below).
+
+Also, try not to mix several issues in your bug report. If you are
+finding several problems, it's better to issue a separate bug report for
+each one of them.
+
+### Attaching log files
+
+If you can spend a little time getting them, please add some logs to the
+bug report. They are **really** useful when it comes to debug a problem.
+To do it:
+
+Launch Bitmask in debug mode. Logs are way more verbose that way:
+
+ bitmask --debug
+
+Get your hand on the logs. You can achieve that either by clicking on
+the "Show log" button, and saving to file, or directly by specifying the
+path to the logfile in the command line invocation:
+
+ bitmask --debug --logfile /tmp/bitmask.log
+
+Attach the logfile to your bug report.
+
+### Need human interaction?
+
+You can also find us in the `#leap-dev` channel on the [freenode
+network](https://freenode.net). If you do not have a IRC client at hand,
+you can [enter the channel via
+web](http://webchat.freenode.net/?nick=leaper....&channels=%23leap-dev&uio=d4).
+
+Fetching latest development code
+--------------------------------
+
+Normally, testing the latest client bundles \<standalone-bundle\> should
+be enough. We are engaged in a two-week release cycle with minor
+releases that are as stable as possible.
+
+However, if you want to test that some issue has *really* been fixed
+before the next release is out (if you are testing a new provider, for
+instance), you are encouraged to try out the latest in the development
+branch. If you do not know how to do that, or you prefer an automated
+script, keep reading for a way to painlessly fetch the latest
+development code.
+
+We have put together a script to allow rapid testing in different
+platforms for the brave souls like you. It more or less does all the
+steps covered in the Setting up a Work Enviroment \<environment\>
+section, only that in a more compact way suitable (ahem) also for non
+developers.
+
+> **note**
+>
+> At some point in the near future, we will be using standalone bundles
+> \<standalone-bundle\> with the ability to self-update.
+
+### Install dependencies
+
+First, install all the base dependencies plus git, virtualenv and
+development files needed to compile several extensions:
+
+ apt-get install openvpn git-core python-dev python-pyside python-setuptools python-virtualenv
+
+### Bootstrap script
+
+> **note**
+>
+> This will fetch the *develop* branch. If you want to test another
+> branch, just change it in the line starting with *pip install...*.
+> Alternatively, bug kali so she add an option branch to an improved
+> script.
+
+> **note**
+>
+> This script could make use of the after\_install hook. Read
+> <http://pypi.python.org/pypi/virtualenv/>
+
+Download and source the following script in the parent folder where you
+want your testing build to be downloaded. For instance, to \`/tmp/:
+
+.. code-block:: bash
+
+ cd /tmp
+ wget https://raw.github.com/leapcode/bitmask\_client/develop/pkg/scripts/bitmask\_bootstrap.sh
+ source bitmask\_bootstrap.sh
+
+Tada! If everything went well, you should be able to run bitmask by typing::
+
+ bitmask --debug
+
+Noticed that your prompt changed? That was \*virtualenv\*. Keep reading...
+
+Activating the virtualenv
+\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^\^
+The above bootstrap script has fetched latest code inside a virtualenv, which is
+an isolated, \*virtual\* python local environment that avoids messing with your
+global paths. You will notice you are \*inside\* a virtualenv because you will see
+a modified prompt reminding it to you (\*bitmask-testbuild\* in this case).
+
+Thus, if you forget to \*activate your virtualenv\*, bitmask will not run from the
+local path, and it will be looking for something else in your global path. So,
+\*\*you have to remember to activate your virtualenv\*\* each time that you open a
+new shell and want to execute the code you are testing. You can do this by
+typing::
+
+ \$ source bin/activate
+
+from the directory where you \*sourced\* the bootstrap script.
+
+Refer to :ref:Working with virtualenv \<virtualenv\>\` to learn more
+about virtualenv.
+
+### Copying config files
+
+If you have never installed `bitmask` globally, **you need to copy some
+files to its proper path before running it for the first time** (you
+only need to do this once). This, unless the virtualenv-based
+operations, will need root permissions. See
+copy script files \<copyscriptfiles\> and
+running openvpn without root privileges \<policykit\> sections for more
+info on this. In short:
+
+ $ sudo cp pkg/linux/polkit/net.openvpn.gui.leap.policy /usr/share/polkit-1/actions/
+ $ sudo mkdir -p /etc/leap
+ $ sudo cp pkg/linux/resolv-update /etc/leap
+
+### Local config files
+
+If you want to start fresh without config files, just move them. In
+linux:
+
+ mv ~/.config/leap ~/.config/leap.old
+
+### Pulling latest changes
+
+You should be able to cd into the downloaded repo and pull latest
+changes:
+
+ (bitmask-testbuild)$ cd src/bitmask
+ (bitmask-testbuild)$ git pull origin develop
+
+However, you are encouraged to run the whole bootstrapping process from
+time to time to help us catching install and versioning bugs too.
+
+### Testing the packages
+
+When we have a release candidate for the supported platforms, we will
+announce also the URI where you can download the rc for testing in your
+system. Stay tuned!
+
+Testing the status of translations
+----------------------------------
+
+We need translators! You can go to
+[transifex](https://www.transifex.com/projects/p/bitmask/), get an
+account and start contributing.
+
+If you want to check the current status of bitmask localization in a
+language other than the one set in your machine, you can do it with a
+simple trick (under linux). For instance, do:
+
+ $ lang=es_ES bitmask
+
+for running Bitmask with the spanish locales.