这篇学习笔记是关于《神圣的QA--写给应届毕业生》这篇文章的笔记 |
原文:https://www.jianshu.com/p/7123ec47defe |
QA是什么?
[x]软件开发过程中做好软件质量分析和保证的人员 |
QA的职责有哪些?
[x]理解和澄清业务需求
a. QA的一个很重要的职责就是澄清需求、验证需求合理性,并且帮助团队一致理解需求。
b. 所谓理解和澄清业务需求,就是需要把业务相关的功能和非功能需求都搞清楚了。(功能、 性能、安全、易用性、兼容性)
c.
需求的澄清是个过程,并不是在开始开发和测试之前要搞清楚所有的需求(这也是不可能的),同时可以在开发和测试过程中不断去澄清需求、优化业务流程。
|
[x]制定策略并设计测试
a. 验证软件产品是否满足了需求,这就需要制定测试策略,并根据策略设计测试
b. 确定测试范围、测试阶段
c. 测试范围都需要什么类型的测试(功能与非功能等),在每个阶段采用什么测试方法
d. 手动测试和自动化测试的分配比例
e. 如何设计手动和自动化测试的测试用例,用什么工具实现功能、性能和安全测试的自动化等
|
[x]执行和实现测试
a. 根据制定的测试策略和测试计划、设计好的测试用例,执行手动的验收测试和探索式测试等,实现和执行功能和非功能的自动化测试,统计和生成测试结果报告。
|
[x]缺陷管理
a. 记录缺陷:
发现缺陷以后,QA需要尽自己所能去调查缺陷,收集所有跟缺陷相关的信息,包括不限于出现的环境(操作系统、浏览器和不同的测试环境等)、重现步骤、屏幕截图、日志等,并将这些信息简单清晰的记录下来。
b. 确定严重性和优先级:
严重性是指缺陷发生对用户所产生影响的严重程度,优先级是指需要修复的紧急程度,通常需要结合严重性和发布计划等来确定。新QA往往比较容易混淆这两个概念,注意它们是有区别的,优先级高的严重性不一定高,而严重性高的往往优先级比较高。具体需要根据产品和项目实际情况来确定。
c. 分析和跟踪缺陷:
开发人员修复缺陷之后,QA需要测试和验证缺陷,很多时候缺陷被验证之后就没人管了,但缺陷的生命周期并没有结束,后面还有非常重要的分析和跟踪阶段。在这个阶段,QA要分析缺陷产生的原因,影响的功能模块,过去一段时间以来的发展趋势等,根据这些分析结果制定下一阶段避免和减少同样缺陷产生所需要采取的行动措施,并且跟踪行动执行的详细情况。
|
[x]质量反馈和风险意识
a. QA作为质量分析保证的主力军,对产品质量需要有更清晰的认识,及时识别质量风险,并反馈给整个团队。
|
QA的必备技能要求
[x]硬技能之扎实的计算机基础
a. 具备基本的编码能力和数据库操作能力。
[x]各项软技能
a.快速理解业务的能力:通常丰富的领域知识和快速学习新事物的能力可以帮助快速理解业务。
b.分析能力和定位问题的能力:执行测试和定位缺陷的过程中,这种能力非常重要。
c.良好的沟通表达能力,包括口头和书面沟通:QA需要跟客户、需求人员、开发人员等不同角色沟通更好地完成工作。
d.踏实、认真、细心:每一个测试、每一个缺陷都需要认真的对待。
|