# 测试圈TC：写给一直在背锅的你




<br>
![](http://img.testclass.net/circle_back_pot_man.jpg)

你是一个测试人员，早出晚归，一身疲惫。你对项目的质量负责。

但每次上线或交付以后，你总是觉得心里没底，成天惴惴不安。不出问题就好，出了问题，是你没测出来，锅是你的，可以选择忍辱偷生，或是走人。

在大多数时候，大家背地你称呼你为：背锅侠。

很多时候项目是这样一个循环。

需求评审，测试只需要带耳朵去可以了，你说什么不重要，你人在就行，这就表示流程的要求达到了。这时候你跟道具没有区别。

开发在憋大招实现需求的时候，你在努力的脑补测试用例。很多时候你可能意识到了，这样做的效果不好，但你还是需要接着做下去，毕竟，这是你的工作。

终于等到开发写完了需求，他们会告诉你，来吧，我们做完了，开始测试吧。项目经理会来告诉你，由于需求变更和其他乱七八糟的事情，开发进度有点延后，没办法，测试时间需要压缩，你只能接受，别无他法。

你开始拼命加班，希望多测一点，bug少一点。

你开始白天催促开发改bug，等待开发下班提测，你主要的工作时间是晚上，你守着空荡荡的办公室，点来点去。

你好不容易赶上了项目进度，按时发出了测试报告，但是在你心里，你觉得总有什么东西是你放不下的，哪天正式环境真出问题了，你反而会长舒一口气，默默收拾东西，找下一个背锅的地方。

很久以后，你回忆起年轻时的背锅之旅，你可能会觉得，也许有什么办法可以解决这些问题。

__测试左移__

为什么开发在憋大招写实现需求的时候测试不能介入？尽可能早的测试，也许能带来一定的质量改进效果。

持续集成，每次代码提交或者定期(一般是1天)就对主干代码进行编译和测试，这样开发的整个工程就有了质量的控制和监控，问题可以尽可能早的发现，解决问题的成本也相应会降低。

持续集成并不能消除Bug，而是让它们非常容易发现和改正。-- Martin Fowler

定期的频繁的集成和测试会让开发人员在编写代码和提交代码的时候多一点的责任感，多用点心。开发一认真，bug都害怕。

其实你会发现，所有的流程管理，项目质量回溯等工作，其实其最后的目的都是一个：开发啊，你就长点心吧。

项目的质量很大程度上取决于开发人员的能力和态度。测试同学越努力，开发同学就越警惕，项目或产品的质量可能相对会更好一点。

__测试右移__

在跟生产环境一致的环境上进行测试，可能会发现一些在测试环境无法发现的问题。

在生产环境进行监控和告警，一旦发现问题，第一时间找出问题并快速上线解决，这种亡羊补牢，让线上问题的影响减小到对少，并保证数据的一致性和完整性，这其实也是质量控制的一环。


把测试的左移和右移做好，也许对一直在背锅的你会有一些正面的效果。

不要做背锅侠，也不要做甩锅狂魔，有问题就正视他，解决他，少一点阴阳怪气和怨天尤人，想办法把事情做好才是正道。




原始封面

![课程图片](https://images.unsplash.com/photo-1490791539531-102a1e0beb7b?w=300)


