代码整洁之道:程序员的职业素养(八)

验收测试

作为专业的开发人员,确保与团队和业务部门的沟通准确、流畅非常重要。正如谚语所说,“输入糟糕,输出也会糟糕”,这同样适用于程序员。因此,职业程序员注重与团队以及业务部门的沟通,以确保沟通的准确性和流畅性。这种沟通不仅限于编码前的需求沟通,还包括编码过程中可能需要的跨部门沟通,以及与测试人员和发布人员的沟通。因此,职业程序员不仅仅是写代码。

需求沟通是开发方和业务方之间最常见的沟通方式。在这种沟通中,业务方描述他们认为自己需要的功能,而程序员根据业务方表达的需求进行开发。然而,在实际情况中,需求沟通是非常困难的,可能会出现各种问题。因此,我们需要尽早发现问题,并多考虑需求的产品逻辑,是否存在不完善或缺失的地方,并与团队一起讨论和沟通。

验收测试是将“完成”的功能交给产品经理使用以验证是否符合预期的过程。以下是与验收测试相关的几个方面:

  1. “完成”的定义:完成意味着所有的代码都已编写完毕,所有的测试都通过了,并且经过了 QA 和需求方的认可。只有达到这个标准,才能说是完成。为了实现这种程度的完成并确保迭代速度不受影响,我们应该编写一套完整的自动化测试,只有这些测试全部通过,才能满足所有要求。
  2. 沟通:验收测试的目的是进行沟通、澄清和精确化。开发方、业务方和测试方应该达成共识,确保每个人都清楚系统的行为。每个团队成员都应该记录这种准确的共识。作为专业开发人员,与业务方和测试方协同工作,确保大家都理解要做的事情是我们的责任。
  3. 自动化:专业的开发人员应该避免手动测试的情况。相比手动测试,自动化测试成本更低,手动执行测试脚本是不划算的。因此,实现验收测试的自动化是我们的责任。在提交代码之前,可以自己执行受影响的单元测试。
  4. 额外的工作:编写这些测试的目的是确保系统的各项指标符合要求。确认这些细节指标的目的是确保系统的整体指标;只有确认了这些细节指标,我们作为程序员才能确定工作已经完成;只有确认了这些细节指标,业务方才能确认他们花钱开发的系统确实满足了需求;只有确认了这些指标,才能真正实现自动化测试。因此,不要将这些测试看作额外的工作,而应该将其视为我们作为专业开发人员的责任。

总结起来,作为专业的开发人员,在与团队和业务部门的沟通中,我们应该注重以下几点:

  1. 需求沟通:确保与业务方充分沟通,理解他们的需求,并及时澄清和解决问题。
  2. 验收测试:与产品经理和测试人员合作,确保功能的完成定义清晰,并编写自动化测试来验证功能的正确性。
  3. 沟通和协作:与团队成员密切合作,记录共识和决策,确保大家都理解和认可系统的行为。
  4. 自动化测试:尽量使用自动化测试来减少手动测试的成本,确保测试全面且可重复。
  5. 共同责任:将需求沟通和测试工作视为开发人员的责任,积极参与和贡献团队的成功。

通过遵循这些准则,我们可以提高与团队和业务部门的沟通质量,确保开发过程的准确性和流畅性,并为项目的成功做出贡献。

关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等,您的关注将是我的更新动力!

你可能感兴趣的:(读书笔记,代码规范)