Testing

From FedoraProject

(Redirected from JefSpaleta/TestingManifesto)
Jump to: navigation, search

Contents

Fedora Testing Guide

Preface

Let us take a quick moment to describe to you the goals of this document. This document is here to provide you, the novice but enthusiastic Fedora user, with recommendations on how you can become an important part of the development process of Fedora as a tester. We are not going to lie to you, stepping up to become a part of the development process can be frustrating for some people, especially if they are unprepared for the experience. The key to having a worthwhile experience is starting off with the right expectations and a minimal set of tools you can use to do commonly needed troubleshooting. This document is our attempt to provide both.

Join the Bug Triaging Team

Fedora Proposed Updates


yum update --enablerepo=updates-testing


yum install <foo> --enablerepo=updates-testing

Fedora Development Repository (codename: Rawhide)


Qemu

If you want to use Qemu emulator for testing, look at qemu page

Fedora Release Schedule

Feedback and Communication

Once you have started using the development packages, it's important to give developers feedback on how they are doing. The development tree has constant changes that might affect the way applications behave in your system. It is important that developers understand what works and what doesn't in order to improve Fedora. Do not assume that a problem is known.

Initial Expectations

Here are some important initial expectations I think every testers should be aware of before participating in the development process. If these expectations don't suit you, you will most likely have a more frustrating experience later on in the process. As much as testing efforts are appreciated, no one wants to make the process unduly frustrating, so its important to come into the process with your head calibrated with what to expect.

There is a daily build report of the development tree sent to the fedora-test-list every morning as part of the automated push of packages out to the publicly accessible trees. The daily report contains information about new,removed and updated packages. It also contains a summary of known dependency problems for each arch for which the development tree is built for. Please, if you experience any problem updating against the development tree the first thing you should review is the last 2 or 3 build reports. If you are seeing a dependency problem summarized in the latest build report, you can be sure the developers are aware of the problem. Below I give you some helpful troubleshooting tips to pinpoint exactly whats going on when you see unexpected problems.


Successful strategies for keeping up with package updates

The test releases receive their updates from the development tree, affectionately known as rawhide.

raw: because the packages there are untested and freshly built

hide: because its your hide that's going to get burned if there is a problem with them.

Once you have lived through one testing cycle, you can probably deal with rawhide's more characteristic characteristics without much drama. But if you are new to the testing process, you can get yourself into trouble very quickly. Even worse, you can get in trouble in a way that makes it difficult for other testers to help you track down enough information after the fact to file a useful bugreport. Please remember the goal is to get issues identified for the developers to fix. Inexperienced tester needs to take more care to keep notes and avoid using shortcuts when updating or installing packages. Here are my personal suggestions as to what you can do to make it easier to diagnose problems seen after package updates.


Commonly experienced problems

yum update failures

Because the development tree is not guaranteed to be self-consistent everyday, you will frequently see yum update fail with errors. Don't Panic. Most dependency problems will be fixed by the developers in one or two days. But in the meantime you can still continue to do most of the yum updates by use of yum's exclude options. Let's work with an example from the timeframe between fc4t1 and fc4t2 test releases:

yum update



...
Error: Missing Dependency: libwnck-1.so.4 is needed by package gnome-applets
Error: Missing Dependency: libpisock.so.8 is needed by package gnome-pilot

First, identify what packages are providing libwnck-1.so.4 and libpisock.so.8 using yum's provides command

yum provides libwnck-1.so.4


...
libwnck.i386                             X.Y.Z-A               installed
yum provides libpisock.so.8
...
pilot-link.i386                          B:X.Y.Z-A.pre0.0      installed


Note the name of the package that provides those libraries and note whether a version of the package is installed. Now you can attempt to exclude packages that were part of the dependancy error message:

yum --exclude=pilot-link --exclude=libwnck --exclude=gnome-applets --exclude=gnome-pilot update

Repeat the above steps if the exclude options expose more dependency errors. The exclude process runs a very good chance of letting you proceed with the other package updates until the developers rebuild the necessary packages.

Normally developers are made aware of these issues by the build system and will have these issues fixed in a couple of days. If however the problem lingers longer than that on your system, that could be an indication that you have run into a situational bug that not everyone is seeing. This is when you can spring into action as a tester and make a difference. But, before you file a new bugreport there is a short recipe you can follow to avoid filing unnecessarily. Please remember that test releases exist primarily to help the developers identify problems so they can be fixed in time for release. Unfortunately, reactionary bug filing of duplicate or well known issues can take developer time away from actually fixing issues.

1. read fedora-test-list: Go back into your archives or the web archives for fedora-test-list and read over the threads in the last 48 hours and see if there has been any discussion about the specific update errors you have been seeing. Generally, these sorts of errors are seen by most everyone with similar hardware, so its a very good chance that other testers are already discussing it. Please don't just post a new post to fedora-test-list until after you have reviewed the last 48 hours worth of posts. Having multiple discussions about the same issue is a drain on the time of other testers and developers. 2. search bugzlla.redhat.com: Search to see if there are any reports about the update issue you have seen 3. drop a note into fedora-test-list: Please only start a new thread only after you attempted to find previous discussion of this problem in the test-list or in bugzilla. Other testers can help you confirm the problem, or if they can't confirm it they can help you determine if its a configuration problem or user error on your part. The test-list is a great way to assistance from other more experienced testers, but please do what you can to use the archives responsibility to avoid duplication of information and discussion. 4. File a new bug report: If the exact nature of the dependency problem during updating is lingering for several days or if the problem seems specialized to your situation and it doesn't appear that the developer is aware of this problem.... file a new bug. If you are unsure how to file, experienced testers in fedora-test-list can make suggestions. Please don't assume its a yum bug. Most dependency issues are packaging bugs in one of the packages detailed in the error messages.


Tips and Tricks

Installation

There are two ways to install Rawhide

  1. Install a Fedora release, then upgrade to Rawhide.
  2. Install Rawhide directly from a development tree.

Install a Fedora release

For details and information on installing a Fedora release (includes Alpha and Beta), please see the Installation Guide for the appropriate release.

Upgrading from a previous release

Once your system is installed, you can upgrade to the rawhide repository one of two ways.

This can be accomplished using the following graphical applications:

  1. First, modify your software sources using: gpk-repo
    • Leave only the Fedora - Rawhide software source enabled
  2. Next, update your system using: gpk-application

Alternatively, you may upgrade using the command-line:

  1. Type:
    # yum --disablerepo=* --enablerepo=fedora-devel update

Installing Rawhide Using CD/DVD

The same process used to install an Fedora release can often be used to install rawhide. For an overview of the process, please review the Installation Guide.

  1. First, determine your system architecture (see http://docs.fedoraproject.org/install-guide/f9/en_US/sn-which-arch.html).
  2. Next, locate a nearby mirror where you can download install media (see http://mirrors.fedoraproject.org/publiclist/Fedora/development/).
  3. Next, download a Rawhide Fedora CD, DVD, or boot.iso for your architecture from a (see http://docs.fedoraproject.org/install-guide/f9/en_US/sn-expert-download.html)
  4. Burn the downloaded image to a CD/DVD
  5. Boot from the CD/DVD
Don't have a burner or spare media?
For tips on installing without media, checkout how to install your system using your network interface http://docs.fedoraproject.org/install-guide/f9/en_US/ap-medialess-install.html.

Follow the on-screen instructions from Anaconda, the graphical installer. The installation is very straightforward.