先从自己的项目下手, 让你的 leader 先认可你, 然后再辐射到其他的团队。
这个怎么说呢,要从几个角度看。首先你可能把顺序弄反了。 如果你想自己推动一些东西,前提是你已经在团队里走到一定的位置有了足够的影响力。 你现在没有权力就是人微言轻, 需要靠领导帮你推动是正常的。 就像我在推广提测系统的时候那是在约束研发给研发戴上镣铐。 这一点没有测试总监和研发总监同时点头是肯定推不下去的,就算他俩点头了在执行的时候也是各种阻力和不配合,这个是正常的,做测开要习惯与人打交到。 你开发的每一样东西想推广出去都不是那么容易的, 就好像销售想把产品卖出去也不是什么容易的事一样,不是产品好就一定能卖出去。 所以我们总说要提升影响力,因为同样的话在不同人的嘴里说出来,效果是不一样的。
第二个是你现在仍然是站在跟其他人竞争的位置上思考和推动事情的,就像你说的其他人不喜欢用,怕用了以后自己没有机会提升了。 人家这么想是人之常情,说白了你们还是竞争关系。 在这种情况下你推什么人家都抗拒是非常正常的, 因为他们觉得只要给他们时间他们也是有能力研究出跟你一样的东西或者替代品来用的,只要自己不是一点希望没有他们就会想自己试试来提高自己。 也就是说你们还是在一个维度上的。 也许你的能力比他们高,但是还没高到能跨越一个等级的程度。 所以在开发工具上你们还是竞争对手的关系。 这个阶段你自己开发工具自己用没问题。但是说服其他团队的人用,遇到阻力是正常的,没阻力才是不正常的。 所以我说你要尽快的给自己升一个 level。 那时候你看一个事情就不是一个工具一个框架的角度去看了,而是从整体上看,从体系上看。这时候你产出的东西都是影响产研体系的,跟他们不是一个维度的东西自然也就不会产生竞争的态势。 比如我在我们这里设计持续集成的时候,我关注的是所有团队按我定的 pipeline 框架来, 至于 pipeline 里到了测试步骤的时候你用的什么测试框架我不管, 我只规定了 report 格式要统一,方便系统抓数据。 比如在项目管理系统里我是要去抓研发环境中 dailybuild 的测试通过率来设置卡点 (通过率低于 90% 不准提测), 所以 dailybuild 里的自动化测试要怎么做也是每个业务线的 QA 自己来定,我并不干涉。 所以你看我这里不存在你遇见的一些问题,因为我们不在一个维度上工作, 我着眼于产研体系,他们着眼于具体的事务。 我这边推什么事他们都不会觉得我侵犯了他们提升的空间,相反他们还很配合。
第三个是我们做事得给其他人留活路, 不能把事情都做尽了。 让其他团队的人觉得用了你的东西自己就没有发挥空间了,那人家肯好好配合你才怪了。 一个大馒头得掰开了分给每个人吃, 你别一个人吞了。 首先你要是都自己包圆了全做完了, 那你的精力也就是扯在这一个事情里了, 长期陷入一件事情里是不利于发展的。 其次这种不给他人留活路的做法也会让其他人不爽。 还拿我自己来说我这边发起的工具平台框架什么的这几年来没有 100 也有几十了, 要是每一个都我一个人包圆了我也做不完,光撸代码了我也没时间去思考怎么改进产研体系了。 所以我现在都是初期自己做一下, 技术都熟悉了就直接跟业务线上的 QA 谈,他们愿不愿意来做。 像一个 pipeline 里涉及了好多东西, 怎么部署微服务, 怎么部署中间件, 怎么初始化环境, 怎么跑自动化测试, 怎么保证研发和测试环境一致性等等等等, 每一个都是挺花时间的, 这里面我就做了第一个 pipeline 后, 然后就丢给业务线的 QA 们了, 上面说的每个东西都是不同的人做的。 我希望有人帮我分担工作, 他们希望有提升能力的机会。 一拍即合,这样不是很好么。
我觉得后面的留言里有小部分对楼主有一些恶意。 楼主也许现在还没有设计出成体系的可以辐射到所有团队的东西来。 但谁也不是一上来就是高手的, 人在成长期的时候除了鞭策也需要鼓励的。 能开始开发一些工具就说明楼主已经迈出了非常重要的一步,而且效果还不错。 继续努力下去,增加自己的技术和影响力,最终会成为整个质量团队的灵魂人物的。 届时站的位置够高, 视野更广,就有机会去设计可以影响公司产研体系的东西出来。
楼主也不必太过失落,人生不如意十之八九,要习惯。 很多人失败在自己的心态上,遇到挫折后就不愿意继续前进。 你得知道团队大了以后上面的大领导是不关注底下人都具体做了什么的。 他站的位置更高,他要管理更多的团队,所以他更关注的是跨团队的协作设计,可以影响整个产研体系的方案。 所以从他的角度看他是没错的,他没有时间关注和评估他下面的一个小 team 的一个工具的产出和优化。 如果有人能做出更大的影响力的东西来,你自然会被比下去。如果大家都差不多那也要看谁的直属 leader 更给力,或者谁的业务更核心。 所以楼主要么你混派系站队伍,要么就作出吊打其他人的东西来,让影响力大到直接让大领导关注。 我希望你走的是后面这条路
这种事怎么说呢, 每个人的期望是不一样的。 每个人站的角度也是不一样的。 看你的描述其实这确实是一个效能提升的点, 从你自己个人的角度来看, 你感觉从这个点上提升了很大的效率。我觉得在你们组内适当表扬你是没问题的。 但是从整体上来看,这就是一个点的提升而已, 很小的一个点。 不知道你们评优的名额有多少, 但是优秀的肯定也就是 5%~10% 左右的占比吧。 这个点在季度的优秀名额上确实不占优势, 要知道 3 个月是很长的时间了, 看你们一个部门就 10 几个人了, 所有部门加起来大几十人吧得, 3 个月时间足够不少人做出相应的成绩了。 他可挑选的东西太多了。 说白了就是上面看不上点状的提升,每个人坐的位置不一样,眼界也不一样。 如果你做到了那个位子上, 你也会看不上的。
那这样是不行的。 你得在 allure 的装饰器里填写的字符串上做手脚了, 别用写死的字符串, 用变量。 外部你运行 case 的时候传递设备名称或者别的唯一标识符进来, 然后生成这个字符串
想象不出来他的目的。。。每个人都不一样, 别老猜他什么想法了, 没准就是他今天心情不好, 或者面试前没准备, 就随便先问了一个拖延时间, 然后自己赶紧现场看简历
因为你这俩 case 的名字是一样的, 它认为是 retry 的结果。 你 case 换个名字就行了
在模型领域不说正确性,都是说效果的。 比如精准率,召回率。 往模型发数万数十万数百万的数据,在大量的数据下统计预测正确的概率有多少。 是通过这个方式来评估模型的。
allure 好像现在还是做不到把
我记得是可以的, 就用 allure commandline 启动的时候就有个参数是指定端口号的
allure 产生的 allure-results 放到不同的目录, 再使用 allure commandline 去指定从多个目录生成 report 就好了。 jenkins 上也有 allure 的插件。 很好做的
rest allure
文章中描述的失败经历里的那一段感觉挺那啥的, 测试 repo 里维护不同的分支以应对不同的版本和环境是最基本分支管理策略,怎么会在这种地方出问题呢。 正式员工设计测试用例,外包人员写脚本这个也挺迷的, 这都是多少年前的操作方式了。 而且外包人员本身的能力就非常有限, 怎么可能会写出好的代码呢, 没有好的代码设计又怎么能快速的兼容需求变化呢。 把覆盖率当成 KPI 也挺魔幻的, 大家都知道覆盖率就是个参考,不能作为主要的考核目标。 我们这边评估自动化最主要的指标是减少了多少的人力成本。 比如我们我们一条产品线上执行一遍全回归测试需要这里所有的 qa 一块上,执行一周时间 (机器学习产品,TO B 业务, 产品庞大,业务复杂), 我们在积累了 2000 多条 UI 自动化后,这个时间缩短到了 1 天。 提升了多少效率才应该是我们评估自动化的方式。
这是一种恶性循环,一开始就没有用好的方式和有足够能力的人去做自动化, 后面就会导致效果越来越差, 脚本越来越难维护,最后就是把这玩意当成 KPI 了。
大家都淡定
明确的说, 都重要,没了哪个都不行。 只不过是在面试中,技术占比会高于业务,但是从实际工作和职业发展的角度看, 这两个其实都是很重要的。 只不过很多人在跳槽的时候都直接选择跳槽到另外一个领域里, 所以之前的业务经验就有一种白学了的感觉。 但是如果你一直在一个固定的领域内工作,比如你是做广告系统的 QA, 你跳槽可能就是从阿里妈妈跳槽到百度凤巢,你是一直在这个圈子里混的,那业务经验就跟技术经验一样重要了。
我觉得我自己的能量没大到能改变测试这个职位的, 我只想输出一下自己的观点和经验, 让多一点的 QA 能多拿点工资,少加点班,多被人尊重一点。 认可我观点的能有方向去努力就好了, 不认可的话我也接受。 尽人事, 其他的随意了。
一定要记住, 免费的才是最贵的。
这个事情其实是很简单的一个问题, 咱们都是拿最终结果说话的, 用户看的也是最终结果, 用户不会管你用的第三方组件有没有 bug, 他只管你给他用的产品有没有 bug。 所以如果第三方组件有 bug,那也是你们自己选的, 也要承担相应的后果,这个没什么好说的。
而且就拿 kafka 来举例子吧, 怎么能保证 push 消息的时候不丢数据,不重复数据? kafka 是给了方案的,但是需要启动 broker 的时候启动参数是有一定的设置, 并且在调用 producer 的 client 的时候把幂等和分布式事务打开, 并且在 consumer 端把 uncommited read 设置为 false。 并且不同的场景设置的方式不同, 比如官方 client, spark 流式对接 kafka, flink 流式对接 kafka,调用的时候怎么设置参数,怎么写 client 的代码都不一样,甚至相同的 client 但是产品不同,场景不同调用的方式也不同。 那这里面研发就容易出错, 所以虽然 kafka 是公认的解决了这种问题的,我们暂且相信他自己没问题,但是他只提供方案,怎么用是研发自己写的代码,所以你是测还是不测? 只要它放到了产品里, 产品就得负责, 只不过如果你选择相信研发,相信第三方组件,你不测了,也是 OK 的,这是你的测试策略的选择, 策略上选择降低人员学习成本不去测试这些高难度场景,那相应的也得承担万一这里面出了 bug 所带来的风险。 出问题了就得为你选择的策略买单。
我也同意能力不是一蹴而就的,它是一个循序渐进的过程。 但是质量标准不因为能力而降低。 而且如果 QA 都由于自己能力的问题而理所应当的放弃大量的测试场景, 那么这个 qa 这个职位就永远放弃进步了。
我也没理解
解释这个东西呢要从以下几个方面讲。
我们怎么评审 test plan? 这个太复杂了, 但我们的 test plan 的原则是一切为了保证质量, 保证最终用户拿到的是质量合格的产品, 而不是在做 test plan 的时候就想好了,如果开发调用 kafka 的时候出 bug 了就甩锅给阿帕奇社区。
找个开源平台, 上面 UI 设计的已经很漂亮了。 然后自己改就是了
所以我也是坚持方法论不是万能的,理论能力再强没有足够的技术支撑也是苍白无力的。这也是为什么我在这篇帖子里回答的第一个答案就是要对产品足够熟悉。 这个对产品熟悉,不仅仅是业务上的,也有对研发架构上的。有了足够的理解才能设计出更完善的测试场景。这也是测试人员的分水岭,非常多的 qa 会被卡在这个分水岭上不得寸进,这是测试人员职业生涯中的一个大坎。 只关注业务的人是很难能体会那些已经熟悉研发架构的人所看到的天空的。 这就像我很难能体会我们公司那些做算法的人所看到的天空一样。 所以实在劝不动了就算了吧。 别影响你们同事之间的关系。 能不能迈过这个坎看他自己的命吧。
有一次听我们 CEO 和我老大聊天,我觉得他表达的还是很准确的, CEO 的意思是大多数互联网产品是不重视质量的, 出了什么事线上直接处理也是可以接受的, C 端用户对错误的容忍度也高。CEO 说我们的 QA 不能学那些互联网的做法,我们要测试的足够深入。
我觉得 CEO 描述的这个不重视质量的现状造成了大量的 QA 在整个职业生涯内都是只对着业务功能进行测试的。 所以他们自然而然的就会觉得这些就是测试的全部了。 这个倒是很正常的, 没见过的东西自然就很难理解。 就像上面的那个哥们说产品经理不需要很懂技术一样, 因为他只见过业务型的产品和业务型的产品经理, 没接触过技术型产品和技术型产品经理。 所以他就以为产品经理都是不需要懂技术的。 这个是大环境造就的结果。 只要他们有机会经历过一次这样的经验,就会转变想法的。
所以我们要坚持在测试圈子里推广技术型的 QA,转变很多人的这种思维。 也转变圈外人对 QA 行业没技术含量的误解。
不知道实现哪种技术的话, 那我们怎么测试高可用和稳定性? 比如怎么能测试出来产品中的消息是不会丢的, 不会重复的? 因为都不知道有消息中间件这么个东西。 那到时候线上只要一个网络抖动,用户下单的时候消息丢了, 或者消息重复了, 导致点了下单但实际没下单,或者只下一次单却花了两份钱。 这个 bug 算谁的?
或者再给你举个例子, 如果一个产品有离线任务来计算数据,而这个产品所有的服务和任务都运行在 k8s 集群里, 集群调度领域是有调度规范的, 比如离线任务不能和产品服务一起被调度到同一个机器上,为什么呢,比如离线任务很可能是 io 密集型或者 cpu 密集型的大数据任务,如果和产品服务调度在同一个节点上会造成离线任务占用大量资源而影响产品服务的稳定性甚至会造成产品服务的崩溃。这种极端情况一般在测试环境是不会触发的,只有在线上极其复杂的流量和大量的压力下才有一定的概率触发。 所以我们团队有个测试用例是检查所有批处理离线任务的调度策略是否是正确的,会不会跟产品服务混部。 这种测试场景是不可能出现在 prd 里的,正如你所说 pm 只关注业务,他不关心底下是怎么实现的。 甚至不少研发都不懂集群调度的规范的,因为他也只关注业务开发,不懂集群的猫腻。 所以如果 qa 不懂 k8s 这门技术, 这个场景怎么测? 都不是怎么测的问题了,而是有几个人能想到这个测试用例
这就好像之前飞机挡风玻璃在飞行中碎裂的那个事故。 我记得原因是一个螺丝离标准差了 0.1 毫米。 这种螺丝应该达到什么样的规格肯定不会出现在飞机的设计图里的。 如果只根据设计图来测试飞机,这样肯定是不行的。 而是在针对组成这架飞机中的每个部件进行测试。 设计图就是这架飞机的 PRD, 除了要测试这些外,也要保证针对每个部件进行测试。
我觉得这个道理还是比较好懂的,测试不是只有业务上的功能测试和性能测试。大量的不存在于 PRD 中的非功能性测试都是需要 QA 来保障的。
我的第一感觉就是, 楼主单纯的就是来打广告的。 第二感觉是,楼主是不是对大数据的测试有啥误解