之前在知乎上回答了一个问题,意外地收获了很多的赞同,第一次认真回答问题就被认可,很开心。
前几天刚好又有朋友在微信上问起同样的问题,看来大家的疑惑都类似,所以我干脆给搬到公众号上,好让更多人看到。
问题我截了图:
知乎帖子的地址我也贴出来,欢迎大家上去帮忙点赞哈:https://www.zhihu.com/question/66716450/answer/262082190
下面是我的回答:
几乎所有刚开始工作的人都会碰到这个问题,如果总结起来就是「理想和现实的差距」。
说的高大上一点就是「认知偏差」。
怎么理解呢?就是基于你当前认知得出的结论并不一定是合理的结论。
如果就事论事,我的建议是:
1.任何一件事情,如果自己没有让它做的更快更好,那就不要说它简单。
换个说法就是,请证明这项工作真的很简单,比如改进下工作方法,让工作效率有很大的提升,比如引入自动化,把人从繁琐的手工操作中解放出来等。
是的,看到简单很容易,让它不简单却是有挑战的。
如果我们连简单的事情都没做好,有什么理由去嫌弃它?
2.软件测试的精髓,不只是如何执行用例。
我们可以想办法去发现更有深度的问题 (Bug);
我们可以想办法写出有效性更好的用例 (Bug 和用例的对照比率,项目早期发现严重问题);
我们可以基于项目经验提出质量改进计划 (同类型问题后续不再发生);
我们可以在项目过程中去了解和学习相关的周边知识 (项目相关的业务知识、项目相关的系统知识)。
如果我们只是盯着怎么执行用例,那我们无疑会一直都只是一个用例执行者。
3.退一万步讲,我们就只关注用例执行,那也是有很多事情可以做的。
对,我们要做的事情就是「自动化」。
这里说的自动化特指用例执行的自动化,觉得手工执行很简单,那就想办法让简单的事情自动化起来。
别去考虑复杂庞大的系统,就从单个用例入手,不管使用批处理、Shell、Python、C#、Java,想办法把当前做的事情「自动化」起来,那怕是把之前鼠标点击 5 次的操作简化为 1 次,就是进步,考虑和实现这个问题的过程,就是我们需要关注的地方。
4.学习最需要的是主动。
不要因为公司没有什么,就成为我们不做什么的借口。
测试的职责是保证产品质量,如果有更好的方法来达成这个效果,你引入回归测试、集成测试、自动化测试等,都是公司喜闻乐见的,不过前提是你得让公司看到做这些事情的价值,所以最重要的是,想到什么就去做,有想法就尽快去落地,从最小颗粒度去验证自己的想法。
只是想没有用,只是抱怨没有用。
把问题怪罪于环境,我们将找不到任何可以让我们满意的环境。
没有条件我们就去创造条件。
5.记住,工具是手段,不是目的。
不要为了学 Python 而去学 Python,不要为了集成测试、回归测试这些概念而去做集成和回归测试,这些都是手段,目的都是为了更好的达到测试效果。
如果能够按照前面 1、2、3、4 去做,就会发现,我们会需要 Python,我们会需要集成测试、回归测试,我们会需要更多的「工具」来达成效果,而学习和利用这些工具去达成效果的过程,就是学习和成长的过程,达成效果后的那种成就感,是不可替代的,也正是我们所需要的。
看,这一切都水到渠成。
以上,不知道你是否认同我的观点,或者对这个问题你有其他的见解,欢迎留言和我沟通。
当然,如果你觉得我上面的回答对你有启发,请点个「在看」让更多人来一起看,谢谢。