Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

如何开始做软件测试? #26

Open
nonocast opened this issue Mar 14, 2020 · 0 comments
Open

如何开始做软件测试? #26

nonocast opened this issue Mar 14, 2020 · 0 comments

Comments

@nonocast
Copy link
Owner

@nonocast nonocast commented Mar 14, 2020

什么是软件测试?

软件测试是一个评估过程,评估软件是否达到了预期,达到预期才能发布,才能交付,从商业角度来说,软件测试是一个很好的“赚钱”方式,如果软件质量差,就会产生更多的后期修改和维护工作,无形中失去了信任和口碑,所以毫无疑问,软件测试是一个必选项 (MUST)。

  • 测试等于质量吗?

如果问题出在需求、设计这些源头上,换句话说"预期"出现了偏差,那么再bug free也毫无意义。所以测试只是决定了产品的"下限", 让你的"下限"不那么吓人。

整个测试的核心逻辑就是"1+1=2", 这里面有3个概念:

  • 实际
  • 预期
  • 判定

在这个3个概念中,预期是最重要的,因为实际是看得到的,而判定是有逻辑的,唯独预期这个东西是虚拟的。不能抓住、夯实预期,那么就很容易出现1+1=3,所以"预期"一定要在不同的人之间强同步。

测试流程有标准格式吗?

答案肯定是没有的,不同的公司规模、不同的产品类型、不同的预算都会导致很大的差异性,团队负责人要在通用测试方式上裁剪、变异出合适的测试方式。汽车刹车软件和游戏APP的测试等级,花费的资源天差地别,所以不要指望一个培训能告诉你团队应该怎么做测试。

传统的流程差不多是开发完成以后由全职测试人员来做测试,对于小团队来说,是否要专门建立一个测试团队,我个人更倾向于不建,不仅仅是为了节约成本,我主张应该由产品、开发、实施人员来共同承担测试工作,更多考虑如下:

  • 每个人都要对质量负责,很多程序员为了方便,炫耀而不考虑可测试性,缺少质量的意识,而对于产品则经常提出一些"天马行空"的想法,别bb,你自己来测。
  • 另外一方面从技能分布来说,程序员可以更好的来做白盒单元测试,开发测试脚本,做接口测试; 产品和实施人员的测试更容易站在客户的角度,因为他们更接近用户。

所以小团队应该只保留测试的最少人员就OK,负责建立测试规则和运转。

流程

  • 同步预期: 输出 CTM (Requirement Traceability Matrix)
  • 制定测试计划:输出 Test Planing
  • 开发测试场景和用例: 输出 Test Scripts
  • 准备测试环境: 输出设备清单(excel)和系统图(cad)
  • 不断的测试: 根据版本完成测试报告(在Test Cases填上测试结果)和缺陷报告
  • 发布!

其他补充:

  • 采用看板类工具同步工作 (如trello, worktile, coding等)
  • 能自动化的全部自动化

测试肯定没有开发难,不要一下子有太高的要求,持续做下去就对了。

参考阅读:

@nonocast nonocast changed the title 如何做软件测试? 如何开始做软件测试? Mar 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.