品質控管/錯誤報告
很高興您能來到這裡。看來您將要為 LibreOffice 做出非常重要的貢獻。優質的 bug 報告對於開發者很重要。在這裡,您將找到一些有用的指南,遵循這些指南將會使得 bug 報告和處理的流程變得容易。
bug報告中應該包括的內容
下面這些信息將能幫助我們重現您的問題或者找到您的問題的症結所在,這樣您的問題將得到更早地修正:
Bug 類別 | 在哪裡提交錯誤報告 |
---|---|
LibreOffice 擴充套件 | With the extension author |
TDF/LibreOffice 基礎設施(網站、郵件列表等) | Redmine |
構建(編譯)LibreOffice | Developer mailing list |
LibreOffice 單元測試 | Developer mailing list |
Words missing from dictionaries | To the dictionary maintainer or repository |
Mistakes in translations | Reporting them in Bugzilla is allowed, but it is more efficient to add them as suggestions in Weblate (does not require registration) |
在提交 bug 之前,您必須知道
確認您想要報告的問題 "確實" 屬於軟件缺陷。很多時候,軟體錯誤(Bug)是軟件所呈現出來的行為不符合一般使用者想要看到的行為,這包括軟體沒有按照您期望的方式工作,沒有按照您操作它的方式執行,或者是在正常使用過程中軟體不正常結束。再或者,錯誤也可以讓軟體需要花費較多的時間、耗費較多的系統資源完成本該在很短時間內、耗費很少資源就能完成的工作。
Consider having a look at First steps to take before submitting a bug, in particular for bugs with fonts, graphics, slideshows and computation.
Please, compress the log before it is attached to the bug report:
bzip2 /tmp/strace.log
- Take notes so you don’t forget something that was going on around the time the bug appeared. What were you doing, what did you expect to happen, and what actually happened? How did you know something was wrong? Can you reproduce the bad behavior?
- Check for similar, existing bug reports:
- Go to Components, and select the appropriate component (or subcomponent).
- If you selected a component: select the appropriate subcomponent, or Extended Help if you don’t see the subcomponent on that page.
- If you selected Extended Help: select the appropriate subcomponent, or the [1] at the bottom of the list if you did not find or do not know the appropriate subcomponent.
- You will see a list of bugs with that subcomponent. At the bottom of the page, select Edit Search. There, you can modify the search according to your needs.
- If you find a bug report that concerns your problem, you can contribute to it. If you don’t find a bug report that concerns your problem, file a new bug report.
- If the bug only occurs on Ubuntu or is related to printing, go to #More Information.
- After all that, if it does not look like there is an existing ticket about this issue, follow the following instructions.
Reporting an issue
Go to Bugzilla.
Sign in
If you are prompted to Log In, log in with your Bugzilla account.
If you don't have a Bugzilla account, create one by clicking New Account.
Component
In Component, choose the component.
If you are not sure what component your problem is about, choose the LibreOffice
pseudo-component. Someone will review the report later and will choose a more precise component.
If it is an urgent issue (broken parts, regression, etc.), and you are an experienced user who knows the development team, you can assign the bug report to one of the developers listed on the FindTheExpert page.
Details
If there is a Sub-component section, select the subcomponent.
If you don’t know the appropriate subcomponent, go to Components. On that page, click on the appropriate component. Read the descriptions of the all the subcomponents on the page of that component. If you don’t see a suitable subcomponent, click on Extended Help, and read the descriptions of the subcomponents on that page.
Choose the version of the application in which the bug appeared. To check what version of LibreOffice you are using, select
▸In Operating system or OS, choose the operating system of the computer you were using when you met the bug.
If there is a Hardware section, fill it in.
If there is a Severity section and you are requesting a feature, select enhancement. Otherwise ignore it unless you are experienced. If you want to know the definitions of the items in the Severity section, see this chart.
You can ignore the section latest known-working version.
Subject
Check in possibly related Bugs table on the bug-reporting page and additionally in the Duplicates Table to see whether the problem really has not been reported yet.
In the Subject section (also known as the Summary):
- Do not include information already known from the fields.
- Include the names of subcomponents from Components.
- Make the subcomponents uppercase.
- If the subcomponent can be confused with parts of a word (for example, UI is part of the word quit), surround the subcomponent with square brackets.
- Use at most two subcomponents.
- Use subcomponents exactly as they appear in the list, but you may integrate them into the subject line sentence like “WIKIHELP [UI] not available in all languages”.
- Summarize the problem fairly precisely.
- bad example: “File is broken”
- better example: “Menu File > Save as not available (greyed out)”
- Avoid short forms like “doesn’t” or “isn’t” to ease queries for strings in the Summary; instead, use the full form, such as “does not” or “is not”.
- If the problem written in the report is that LibreOffice crashes or stops responding (“hangs”), add the word CRASH to the Summary, so that these bugs can be located and tracked easily.
Description and attachments
In the Long Description or Description section, give a lengthier, factual description of the problem:
- list the steps to reproduce the bug;
- use a numbered list; and
- state the exact method to make something happen. For example, instead of writing “Open document”, write instead “In new empty LibO Spreadsheet document, use menu File > Open (LibO dialog) > file type “Text documents” > select attached sample document > double click”.
If you’re using a pre-built LibreOffice on Linux, list the exact versions of LibreOffice packages in your package management system. If you’re using Windows, list the exact filename of the installer, and from where it was downloaded.
- Including information about installed and used localization (UI language, document language) might be useful.
- Include whether a 32-bit LibreOffice is used on a 64-bit (Linux) system.
- Include the package source if it’s not the official LibreOffice build.
Write the expected behavior and the actual behavior.
You can include an attachment, such as a screenshot or a sample document. The typical way to take a screenshot is to press the "Print Screen/PrtScn" button on your keyboard. Depending on your operating system, you might have to then open an image editing application (such as Paint on Windows) and do Edit - Paste in it.
- If you create screenshots, switch the language to English before making the screenshot. You can do so in ▸ ▸ ▸ .
- You can make screenshots more useful by adding comments and marking relevant areas with LibreOffice Draw.
- If you want to attach more than one screenshot, you should collect them all in one document (copy / paste to a LibreOffice Draw document) and attach as a PDF. Please add a short comment to each screenshot to tell what you want to demonstrate with it.
- If you attach a sample document that exhibits the bug you are reporting, please make the document as minimal as possible. For example, for Writer bugs, the document should ideally have just a single paragraph. To make it easy to find the text from your document in debug tracing, use some very easily recognizable text, like AAAAAAAAAA ₂ ZZZZZZZZZZ for a bug that is triggered by that character.
- It is preferable to upload attachments individually. However, if you want to attach more than half a dozen documents, create a .zip file containing all documents and attach that .zip.
- If your attachment is too big to be attached in Bugzilla (bigger than 1 MB) you can use the Experimental upload page.
Status
The only time you should change the status to NEW is, if someone already confirmed the bug elsewhere (Ask, mailing list, some forum). In these cases, provide a link to the discussion with the confirmation.
Submit
Click Submit, and your report will be added to the Bugzilla database.
If Bugzilla seems daunting
If the Bugzilla bug tracking system seems daunting or too hard to understand, you should post your problem here:
Even if you post your problem on those channels, your goal should be to get a good bug report on Bugzilla. These channels might help you with that.
After you report a bug
LibreOffice is open source and your help in fixing issues that are relevant to your particular situation is most welcome. You can:
- Employ and/or teach your own developers to work on LibreOffice. We are most happy to mentor them: see the developer’s pages.
- Fund individuals or companies to work on specific issues - see the list of certified developers.
- Contact The Document Foundation to help you if you have only a small amount of funding, and want to collaborate, coordinate or pool your resources with others in the same situation to fund specific fixes or enhancements.
We are grateful for every received report. Writing a bug report can be tedious and time-consuming, but the time spent by others on analysing and eventually fixing an issue can be ten or sometimes even a hundred times longer in comparison. We therefore ask you to be understanding and kindly provide more information, if requested. Moreover, a clear report with complete information means you are well positioned for having your issue fixed.
Commenting on issues
Refrain from posting comments along the lines of “me too” or “we have 1000 seats here and only this bug prevents us from migrating” which contain no additional useful information. An exception to this is when you comment on a bug that has been UNCONFIRMED so far. In that case, please provide reproduction steps (or confirm the ones given by the original reporter) and move the issue to status NEW. Note that if there are no clear reproduction steps, the issue might quickly move back to NEEDINFO, so finding a good and simple reproduction scenario is essential.
Good reports
Minimum requirements
- OS/LibreOffice version;
- enumerated reproducible steps;
- simple attachments where appropriate; and
- observed/expected results.
Good examples
Examples of less good reports
Reports can be less than ideal for a number of reasons. Below are some of the common problems:
One report for 5 issues
Reporting multiple issues in a single ticket―even if they affect a single document―is suboptimal, particularly in the long term. A ticket should only report a single issue.
Missing Details/Steps
All bug reports should have at minimum:
- your operating system and version of LibreOffice;
- clear reproducible steps;
- expected results;
- observed results; and
- a simple attachment where appropriate.
Adding superfluous information
Adding a lot of extra details that aren’t relevant is another common problem. Examples include:
- “this is a blocker”;
- a long list of reasons why it’s a blocker;
- “I can’t use LibreOffice because of this bug”;
- “LibreOffice sucks” (or any variation of that); and
- “I’m going to start using your competitor unless you fix it.”
Complex attachments
Attachments should be as simple as possible. Take the time to prune your examples to the bare minimum. This helps tremendously in diagnosing problems.
Assuming contributors know everything
Do not assume contributors know what you’re talking about. Describe your steps clearly, each step of the way.