How to report a bug/zh

此指引介绍了如何在维基媒体的错误追踪系统（更多信息参见）中写一个好的漏洞报告或功能请求（一个认为）. 任务写得越好，越有可能有人工作在上面.

提交要领

 * 精确
 * 明确：说明如何重现问题，说明步骤，以便其他人重现bug，或理解请求.
 * 每个任务中只提一个问题
 * 包含任何相关链接及示例

您可以重现此问题吗？
在软件的最新版中尝试重现问题，检查它是否已经被修复了. 如果是在维基百科中的一个bug你可以在最新版的test2.wikipedia.org中试试看.

有人已提交了此问题吗？
使用维基媒体的错误追踪系统的搜索框查看您的bug是否已被提报. 您也可以在高级搜索页面执行更多高级搜索.

如果您不确定是否有人报告了bug，您应该报告bug. 出现一个重复的bug总比没人报告bug更好.

您有没有试过自己修复这个问题？
一些需要修复的问题源于一些的用户脚本和小工具的使用. 這裡有一個附有步驟的以指引你定位出代碼，這些步驟可以解決您的問題，使得你不會浪費時間進行報告.

报告新bug或功能请求
如果您在最新版中发现了没有提报过的bug，那么：
 * 1) 前往phabricator.wikimedia.org并点击左侧边栏的“Tasks & bugs”.
 * 2) 选择右上角的“Create task（创建任务）”.
 * 3) 您可能需要登录（或者注册）您的账号（参见“”）.
 * 4) 至少填写下列内容：
 * 5) * 标题：一句话解释问题（而不是您建议的解决方法）.
 * 6) ** 好的：
 * 7) ** 差的：
 * 8) * 分配给：您應忽略此字段：开发人员将会在他们计划工作于这个任务时设置它.
 * 9) * 描述：问题的完整说明，应尽可能详细. 可以包含：
 * 10) ** 对于bugs：
 * 11) *** 重现步骤：能重现所述问题的最简且方便参照的步骤. 需包含所有特殊设置步骤.
 * 例子：
 * 1) *** 实际结果：执行上述步骤后程序出现了什么情况.
 * 例子：
 * 1) ***期望结果：程序正常时应实现的效果.
 * 例子：
 * 1) ** 对于功能请求：
 * 2) *** 描述您的目标以及为什么设定该目标. [$story 用户故事]是一个传达的有效途径. Explain what you hope the feature will solve (the actual underlying problem) along with specific examples; but do not demand a specific solution, as there might be other/better solutions. A user story is an effective way of conveying this.
 * 例子：
 * 1) **也请您提供任何其他可能有用的信息，例如：
 * 2) ***网页浏览器、皮肤或者您发现了漏洞的计算机系统；
 * 3) ***到您遇到错误的一个或多个页面的链接或比较页；
 * 4) ***该问题的出现是每次、偶尔、仅在某些页面或仅在特殊条件下.
 * 5) *附件：您可以附上日志文件或者 （但请您确保上传的文件不包括任何机密信息）.
 * 6) * 选择您发现错误的标签（项目）：
 * 7) **開發人員找工作是為條目去努力. 為了確定合適的項目，使用在右上方的搜索功能來找到其描述.
 * 8) **例如：用于wiki软件自身，或用于维基媒体网站上的配置更改（参见“”）.
 * 9) * 订阅者：假如你知道某些特定用户，并且这些用户在你提出漏洞后会很乐意得到通知. 否则，请忽略它.
 * 1) ***网页浏览器、皮肤或者您发现了漏洞的计算机系统；
 * 2) ***到您遇到错误的一个或多个页面的链接或比较页；
 * 3) ***该问题的出现是每次、偶尔、仅在某些页面或仅在特殊条件下.
 * 4) *附件：您可以附上日志文件或者 （但请您确保上传的文件不包括任何机密信息）.
 * 5) * 选择您发现错误的标签（项目）：
 * 6) **開發人員找工作是為條目去努力. 為了確定合適的項目，使用在右上方的搜索功能來找到其描述.
 * 7) **例如：用于wiki软件自身，或用于维基媒体网站上的配置更改（参见“”）.
 * 8) * 订阅者：假如你知道某些特定用户，并且这些用户在你提出漏洞后会很乐意得到通知. 否则，请忽略它.

检查报告是否完整，然后按下“Create Task（创建任务）”按钮. 这样错误报告会保存到数据库，别人很快就会看到. This allows somebody interested in the report to look at it and.

任务的优先级是取决于那些开发者是否有计划去处理漏洞（参见设置优先级）.

感谢您协助提升MediaWiki软件以及维基媒体项目！

報告一個 JavaScript 錯誤

 * 参见Help:定位损坏的脚本

当您遭遇一个可能与JavaScript有关的错误时，尽您最大努力去确认错误消息，并将其复制在错误报告中.

提供所有你所擁有的信息是特別重要的，因為即使是系統管理員對錯誤日誌也沒有任何存取權. 如果您不确定您使用的一项功能是否基于JavaScript，尝试禁用Javascript.

在報告中包含截圖總是有幫助的. 它最簡單的方法來判断你在談論的是哪些功能，而且往往能提供信息來縮小誤差. 小心隱藏你不想分享的知訊，像其他打開了的瀏覽器選項或最小化聊天窗口.

如果问题存在于用户脚本或小工具本身的代码中，那么Phabricator可能不是将处理相关问题的地方. 有些脚本或小工具会将您重定向到脚本讨论页（如果识别出什么问题脚本的话）.

报告连接问题
如果您打开维基媒体网站时完全存在困难（包括网络连接缓慢等），请参照Reporting a connectivity issue.

报告登录问题
如果您在登录您的账户时存在问题，请查阅手册:如何调试/登录问题.

参见

 * 如何有效的报告 bug 作者 Simon Tatham
 * 怎样让开发者社群解决您的问题，作者User:MSchottlender-WMF，2017年7月
 * Phabricator 礼节
 * 缺陷管理/缺陷管理生命周期
 * 撰写一个有效的权限报告或功能诉求
 * 如何创建一个有效的缺陷报告 (过期)
 * 英语维基百科：错误报告和功能请求