Latest Posts

Changes in TestingBranches

Revision Differences of Revision 2

[TOC] ¶

# Testing Development Builds ¶

If you don't know how to write code, make art or translate, you can still help us by testing the development version of Widelands. ¶


## If you can't compile Widelands yourself ¶

If you wish to help with testing Widelands and do not know how to compile, you can still help us by downloading a [development build](https://wl.widelands.org/wiki/Download/#unofficial-development-builds) and [reporting any bugs](https://bugs.launchpad.net/widelands) you find. ¶

## Testing a branch ¶

If you know how to compile Widelands or think you can learn, you can help us with testing branches that haven't been included in the current development version yet. ¶

### Selecting a branch to test ¶

You can find a list of branches that need testing in the [code reviews](https://code.launchpad.net/widelands/+activereviews) section on Launchpad. We will sometimes also ask for testing on the forums when we have bigger projects that need thorough testing, or if we're changing the design of something. ¶

### Getting the branch ¶

After selecting a branch to test, Launchpad will show you snippets of code for downloading the branch. They look like: ¶

**To merge this branch:** `bzr merge lp:~widelands-dev/widelands/branchname` ¶

or ¶

**Get this branch:** `bzr branch lp:~widelands-dev/widelands/branchname` ¶

The command that we want is `bzr branch <branchname> <destination>`. Open a terminal, use the `cd` command to get to where you want to keep your branches and then run `bzr branch lp:~widelands-dev/widelands/branchname branchname`. ¶

More detailed explanations on how to use Bazaar are available in our BzrPrimer. ¶

### Compiling and running the branch ¶

For testing, we will want to create a development build. These are the terminal commands that you would most typically run: ¶

~~~~ ¶
cd <branchname> ¶
./compile.sh ¶
./widelands ¶
~~~~ ¶

For more information on how to compile, see [Building Widelands](https://wl.widelands.org/wiki/Building%20Widelands/). ¶

### Testing the branch ¶

Once you have finished compiling your development build, it is time to do the actual testing. ¶

#### Manual testing ¶

Read the description of the change, then click on anything that you think might be affected in any order that you can think of - be creative. Depending on what the change is, you might also want to test both a single player and a multiplayer game and play with the settings. Some changes will also affect the tutorials, campaigns and scenario maps. ¶

#### Automated testing
and code check

We have an automated test suite that you can run with development builds. Running the complete test suite will keep opening and closing an instance of Widelands and grabbing your mouse, so make sure you're not doing anything else at the time. The commands to run tests are: ¶

* **Full test suite:** `./regression_test.py -b ./widelands` ¶
* **lua_testsuite.wmf:** `./widelands --scenario=test/maps/lua_testsuite.wmf` ¶
* **Other test scenarios** are run like this - adapt the filenames to your spefific case: `./widelands --verbose=true --datadir=. --disable_fx=true --disable_music=true --language=en_US --scenario=test/maps/ship_transportation.wmf --script=test/maps/ship_transportation.wmf/scripting/test_rip_first_port_with_worker_in_portdock.lua` ¶

#### Code check ¶

We have some checks that run over the code itself to make sure that it adheres to our code style. It is run with each compile, but the messages are hard to see sometimes. You can run it manually with: ¶

~~~~ ¶
cmake/codecheck/!CodeCheck.py src/* | grep -v "src/third_party" ¶
~~~~


See also RegressionTests. ¶


## Reporting your findings ¶

* If we asked for testing on the forums, you can report your findings in the forum thread. ¶
* If you tested a ready-made development build, best report the bug in our [bug tracker](https://bugs.launchpad.net/widelands) on Launchpad. Search the bugs first to make sure that it hasn't already been reported, and include the Widelands revision number. If you don't want to open an account on Launchpad, you can also tell us about the bug in the forums. ¶
* If you tested a branch that's undergoing code review, report your findings in the branch's Merge Proposal in the [code reviews](https://code.launchpad.net/widelands/+activereviews) section on Launchpad.