参与 QA 质控

    From The Document Foundation Wiki
    < QA
    This page is a translated version of the page QA/GetInvolved and the translation is 73% complete.
    Outdated translations are marked like this.


    入门

    什么是 QA?

    QA 即质量控制 (Quality Assurance), 其主要任务是发现软件中的问题,确认用户报告的 bug, 验证计划进行的修复及改进, 从而确保每个版本的 LibreOffice 都能正常使用,从而夺得用户的满意。QA 团队在每个版本的软件发布的全过程中通过各种方式进行质量控制。

    我们的首要目标是找到并确认最紧急、影响最广泛的 bug, 收集必要的信息,然后将其交给开发者团队处理。因此,QA团队充当了用户与开发者之间的桥梁和纽带角色。我们尝试指导每个 bug 报告的解决方式,从而确保用户满意。我们尝试重现用户提交的 bug, 赋予其适当的优先级和严重程度等级,找到并标记重复的 bug 报告,验证开发者计划要合并的修复补丁,等等。

    快速入门指南

    如果您是初次参与QA,那么您很可能不想花太多时间关注技术细节。您可能只想快速开始行动。那么,我们开始吧!

    1. 下载并安装最新版本的LibreOffice(下载链接中版本号较高的那个,即 Fresh 版本)
    2. 下载并安装最新的一个 master 分支的 LibreOffice(即“每日构建版”,是最新代码线上的测试版本)
    3. 在 TDF Bugzilla 缺陷跟踪系统上创建一个账户。我们建议您到 Bugzilla 的 Preference 中将 'Automatically add me to the CC list of bugs I change' 设置为 'Only if I have no role on them',从而您参与的 bug 有任何进展时能第一时间收到电子邮件提醒。
    1. 打开这个连接查询一个月内已报告但尚未确认的 bug (在这个查询中,我们故意过滤掉了“功能改进建议”类的 bug, 同时也过滤调了其他一些选项)
    1. 挑选一个您感兴趣的 bug
    2. 查找以下看看有没有重复的
    3. 如果这个 bug 没有与其重复的,但是存在让人困惑的描述,或者缺少必要的信息,那么请将其状态设定为 NEEDINFO
    4. 如果您根据 bug 描述,能同时在在“稳定版”和 master 版上重现这个 bug, 那么:将其状态设置为 NEW,或者保留 UNCONFIRMED 状态

    这些步骤中描述的 bug 整理步骤其实是不完整的,这是故意的,因为初学者不可能立即达到完美的 bug 整理结果。当初学者遵循这些最简单的步骤,慢慢熟悉了流程之后,那么就可以跳到更高阶的 bug 整理领域。把整理的不完整的结果留给其他人,这不是有效的做法。

    在 QA 团队成长的路线图

    每个加入到 LibreOffice QA 团队的人都有自己的路径。但是,有些人更希望有一个明确的框架,以告诉他们具体需要做什么、期待什么。在此,我们列出了QA职业“演进”建议。

    1. 按照快速入门指南中设定的方法进行约50个尚未确认 bug 的整理(“轻量级”)
    1. 重新测试约50个一年以上无人问津的 bug

    (使用 LibreOffice 的每日构建版

    1. 学习一些重要的 关键词,并学会使用它们:accessibility, bibisectRequest, dataLoss, filter:x, needUITest, perf, regression, text:x, wantBacktrace
    1. 安装一批老版本,然后进行约100个未确认 bug 的倒退测试
    2. 学习了解 优先级严重程度,并请求 Bugzilla 管理员 赋予您这些字段的管理权限
    3. 学习如何生成各种各样的 调试追踪结果,并将您的所学应用到包含 wantBacktrace 或 perf 关键词、且尚无任何调试追踪数据的 bug 中
    4. 在虚拟机中安装其他操作系统,以便进行更大范围的测试和调试追踪。
    1. 开始评估“功能改进建议”,并通过添加 needsUXEval 关键词将其推送给设计团队
    2. 开始进行“二进制二分查找 (bibisect). 先学习教程,然后根据所学知识对包含 bibisectRequest 关键词的 bug 进行“二进制二分查找”。
    3. 学习 Python,并创建 用户界面测试
    4. 创建 Python 单元测试
    5. 学习 C++ 并创建 cppunit 单元测试

    确认 bug

    找到尚未确认的 bug

    • 根据操作系统:
    All Linux macOS Windows Android
    • 根据时间:
    last 24 hours last week last month 过去 6 个月

    未确认的、没有任何评论的 bug 报告

    为了加快未确认 bug 的整理速度,我们会自动为符合下列条件的报告,在 whiteboard 字段添加 QA:needsComment 标记:

    • 2 个月没有任何活动
    • 没有第三人添加评论

    在这里查看该清单

    尝试重现 bug

    一些 bug 可能根特定的操作系统有关,因此通常情况下正确的做法是在与报告者相同的操作系统上尝试重现。但是,如果您没有相同的操作系统,那么也可以在您现有的操作系统上尝试重现,因为大部分 bug 都是与操作系统无关的。

    这里列出了一些常见情况下的样板评论。有关如何在 bug 报告中进行评论、以及使用浏览器工具进行更加有效评论的细节,请见我们已经预先写好的回复

    • 如果 bug 能重现,请将 status 字段设置为 NEW 并添加如下评论(在 bugzilla 上,请确保一直使用英文):
    Thank you for reporting the bug. I can confirm that the bug is present in
    
    [您测试时所用的 LibreOffice 版本详情(可以从 帮助 ▸ 关于 LibreOffice 对话框中复制粘贴)]
    
    • 如果 bug 不能重现,请将 status 字段设置为 UNCONFIRMED 并添加如下评论:
    Thank you for reporting the bug. I can not reproduce the bug in
    
    [您测试时所用的 LibreOffice 版本详情(可以从 帮助 ▸ 关于 LibreOffice 对话框中复制粘贴)]
    
    • 如果 bug 的描述很难懂,请将 status 字段设置为 NEEDINFO 并添加如下评论:
    Thank you for reporting the bug. 
    Unfortunately without clear steps to reproduce it, we cannot track down the origin of the problem. 
    Please provide a clearer set of step-by-step instructions on how to reproduce the problem.
    I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' once the requested information is provided.
    
    • 如果需要由 bug 报告者或其他人提供示例文档才能尝试重现 bug,请将 status 字段设置为 NEEDINFO 并添加如下评论:
    Thank you for reporting the bug. Please attach a sample document, as this makes it easier for us to verify the bug. 
    I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' once the requested document is provided.
    (Note that the attachment will be public, remove any sensitive information before attaching it.
    See <https://wiki.documentfoundation.org/QA/FAQ#sanitize> for further detail.)
    

    额外的步骤

    • 如果 bug 的 Summary 字段中的 bug 标题描述不是很清晰,请更新该字段中的描述,从而能更准确清晰地描述问题的本质,并能更容易地找到重复的 bug.
    • 您可以根据情况更改 Component 字段,以准确反映出问题的组件。
      • 功能改进建议 (Enhancement) 类的 bug 应当首先经过 UX 团队的评估,以确定是不是应当在软件中实施。因此,这类 bug 您应当首先将其 status 标记为 NEW, 将 Component 字段设置为 ‘LibreOffice’,并添加 ‘needsUXEval’ 关键词到 Keywords 字段。
    • 测试并判断该 bug 是不是一个 倒退型的 bug.


    请查看未被确认的 bug 报告当前的进展,并参考更相信的 bug 诊断指南

    测试“每日构建版”

    1. 下载最新的每日构建版(请确保日期是最新的)
      Linux (RPM & DEB)
      • 64-bit - 已启用 GTK3, KDE5 以及所有的语言包
      • Updater - 每日更新(实验性的)
      Windows
      macOS
    2. 安装它。(注意,这'不会替换 您系统上已有的常规版本 - 这是一个开发版本,不会被安装为生产版本。)
    3. 测试它。检查 发行说明 以查看该版本中的新功能
    4. 若发现了 bug,请报告至 这里,并提供所有有用的信息(重现步骤,受影响的文档,详细的描述,操作系统...)

    注意: 要获得帮助,请加入:#libreoffice-qa IRC:// IRC 聊天频道。

    测试预发布版本 (Pre-releases)

    1. 下载最新的预发布版本 (LibreOffice 7.0 Alpha1)
      Linux (64-bit)

    注意: 要获得帮助,请加入:#libreoffice-qa IRC:// IRC 聊天频道。

    重新测试现有的 bug

    我们明天都会批量通知 (ping) 一年以上没有任何活动的 bug, 让大家检查这些 bug 是否已在最新版本的软件中消失。更多信息...

    找到需要重新测试的 bug

    • 今天 ping 过的 bug:
    All Linux macOS Windows Android
    • 一周内 ping 过的 bug:
    All Linux macOS Windows Android
    • 一个月内 ping 过的 bug:
    All Linux macOS Windows Android
    • 三个月内 ping 过的 bug:
    All Linux macOS Windows Android
    • 半年内 ping 过的 bug:
    All Linux macOS Windows Android

    尝试重现该 bug

    如果该 bug 在最新版本的 LibreOffice 中能重现,请添加如下的评论,并请告知您测试所用的 LibreOffice 版本信息(从帮助 ▸ 关于 LibreOffice 对话框复制粘贴)。

    This bug is still present in
    
    [您测试时所用的 LibreOffice 版本详情(可以从 帮助 ▸ 关于 LibreOffice 对话框中复制粘贴)]
    

    如果该 bug 在最新版本中不能重现,请首先确保您测试时所遵循的重现步骤没有问题,然后确保您所在的操作系统与 bug 原来能重现的操作系统一致,然后再将其 status 设置为 RESOLVED WORKSFORME 并添加如下评论:

    Thank you for reporting the bug. I can confirm that the bug is present in
    
    [the older LibreOffice version details you tested/reproduced with (can be copied from the Help ▸ About LibreOffice dialog)]
    
    This bug is no longer reproducible in
    
    [您测试时所用的 LibreOffice 版本详情(可以从 帮助 ▸ 关于 LibreOffice 对话框中复制粘贴)]
    
    Changing status to RESOLVED WORKSFORME
    

    请不要 ...

    • ... 不要更改 Version 字段
    • ... 不要通过电子邮件回复。您应当直接在原 bug 报告里(网页上)提交评论。
    • ... 不要将 status 设置为 RESOLVED - FIXED, 因为您不能确定是哪个源代码提交修复了它。

    额外的步骤

    联系我们

    非常感谢您的帮忙。您可以随时联系我们: