• 流量回放的作用是什么? at 2023年08月04日

    个人的观点:

    1. 流量回放投入成本太高,收益太小
    2. 流量回放如何区别流量的难度比自己设计测试用例写接口自动化难太多
    3. 不确定为什么突然流行这个流量回放工具的,尤其用在自动化测试上,在接口自动化测试这个场景上,从头构建流量回放工具是不值得的,也不是测试一个部门能做起来的
  • 我估计使用 insert select 这种方式更快, 如果 postgresql 可以用类似下面的

    insert into towns (
        code, article, name, department
    )
    select
        left(md5(i::text), 10),
        md5(random()::text),
        md5(random()::text),
        left(md5(random()::text), 4)
    from generate_series(1, 1000000) s(i)
    
  • 看你怎么定义问题了, 沟通不畅不是问题吗?写的 Bug 别人可能看不明白,不是问题吗?问题多的很的。就是不解决也没什么,大部分可能优先级不高而已

  • 都不是,这些都是理念,没有具体技术和实现,理念要是能是护城河了,那我们天天给你编 10 个出来。

  • 要勇敢对不合理需求说不 at 2023年06月14日

    这种问题每个人看法不一样,你觉得不合理,说不定是你不懂;不拿具体事情来说其实没啥好讨论的。这种宽泛的说法不是很有意义,而且也只是自己的观点,也不需要证明自己说的是对还是错。

  • 别老想什么护城河了,先想想有什么好护的好不好,护城河先需要有个城?城在哪里?

  • 自己一个人从开发到实现,到满足需求,怎么都不是一个中级开发

  • 大厂不是都应该全链路监控了吗,日志都搜索,出错直接都可以查询了的吗,包括这些 GC 的日志,不是都应该图标化了吗?咋还是命令行,自己手工查日志,这和出来讲东西的有点出入呀。

  • 突然不想提 bug 了。。 at 2023年06月01日

    挺好的,最少不虚伪。
    几年前,我自己做过一些统计:

    1. 自己报的 Bug 占整个团队的 1/3, 团队总共 10 个人左右
    2. 大部分的业务难点都会找我来询问或者配置一下
    3. 结果没有卵用,领导不喜欢我,绩效打成最差
    4. 然后反抗了一下,公司对团队不记名调查了一下,谁对你工作中帮助最大,是我
    5. 然后我就只能走了

    后来,对报 Bug 这种事情,已经没什么感觉了,甚至修 Bug 也无所谓了。
    一次开发找一个很奇怪的问题,找不到原因,让复现,偶然复现还是找不到原因,然后开发扔出一堆日志说这那。

    最后我把 Apache 的一个包的代码自己看了下,自己调试了一下,发现问题了,结论是

    1. apache 这个包会自己默认一个保存文件目录,然后每次重启就会清除一下目录内容
    2. 然后这台服务器上有两个服务,同时都用这个包,然后这个重启,就把另外一个服务内容给清楚了

    领导会说你好吗?不会,都不会知道,Bug 大家都还以为是开发改的。 现实就是这样,所以后来大家都开始不停的 PPT,需要展示呀。所以大家都需要理解为什么需要 PPT,因为确实也需要,你问不想报 Bug,其实也行,不出问题就行,沟通下就行,就看你自己评估了,再说了,有些开了 Bug 其实开发也不看,也就是来问你,有什么问题吗?问为什么,说邮件或者消息太多了,懒得看了,Bug 管理系统也懒得看,你告诉他就行。所以又说我们都是工具人。一切都有因果吧。

  • 僅樓主可見
  • 还是很好用的,效率很高,尤其对后端熟悉的同学友好

  • 极简接口录制工具 at 2023年05月06日

    感谢大佬关注,这个已经有了,马上再写一篇,东西一点一点拼出来。不过都是低成本。

  • WEB 自动化工具 at 2023年04月19日

    这个样子怎么像重新再做一个 metersphere

  • 其实呢,真自动化了,反正也无所谓,只要出了错开发自己看就行。不要让测试看。

  • 其实使用 jinja2,都不太用写什么,代码一下就都明白了,不用太发明轮子,尤其这种模版引擎之类的

    def greeting(name: str):
        return "Hello," + name;
    
    
    class StructureClass(BaseModel):
        name: str = "name"
        value: str = "value"
    
    
    def raw_render():
        tpl_str = """
        "Hello, {{ name.upper() }}!"
          Hello, {{ hello()}}!
          Hellom {{greet(name)}}
          Hellom {{ greet(name.upper()) }}
          Hello {{clazz.name}}
        """
        template = tpl_env.from_string(tpl_str)
        template.globals.update({
            "hello": hello_world,
            "greet": greeting
        })
        print(template.render(name="test",clazz=StructureClass()))
    
    
    raw_render()
    
    

    运行结果是:python 自己的函数,自己定义的函数都可以使用

    
    "Hello, TEST!"
      Hello, hello_world!
      Hellom Hello,test
      Hellom Hello,TEST
      Hello name
    
  • 测试人员的价值体现 at 2023年03月06日

    没有量化和其他部门的认可,就舍也不是。
    你帮别人发现了很多需求问题,产品很开心,最后也不后说你什么好,如果没有数据支持的话,老板眼里就是产品做的好。
    你澄清了很多需求问题,开发做的顺利了,也和你无关,老板眼里就是开发好。
    出了 bug,你说再多也没用,老板眼里第一责任人就是你测试。

    你不澄清需求,自己最后忙的瘫倒在地,老板说你需求澄清做的不好,你为什么一开始没有发现问题,为什么不反馈问题。还是你测试没做好。

    价值怎么体现?都是自己想的吧。

  • Linux 肯定有用呀,要是 Linux 都没用了,代码可能都没用了

  • 我没那么多想法,理解不了什么本质,无非就是觉得没必要把没学到东西都怪外包,也不要太天真的认为就是有人会来教你东西。至于谋求更大的利益,我觉得我也想的,至于能不能做到那是另外回事。
    你说的自我想象的多,哪个人真到了随便一家公司都要去感恩了这个地步你倒是说说呢?你说的这些都是正确的废话,搞得自己很有正义感,众人皆醉,我独醒,外包就是社会畸形产物,你倒是见了多少的社会,在这夸夸其谈的,我见过外包工资比正式员工都高的,也见过外包 java 开发连打字都不太熟悉,也见过死命逼外包的,各式各样都有. 你用别人产品,产品公司就是你的外包,你请别人做家政,家政就是你的外包,你做出租车,出租车就是你的外包,所以这畸形的有点离谱了。

  • 这个话题有点大了,我只是想谋生。至于外包好不好,坏不坏,我说不清楚。每个人都有需求,每个人也都是外包,个体户也有要有活路的。所谓资本洗脑之类的,怎么说呢,反正你爱怎么说怎么说,我也不在意,都看个人吧。至于其他如果你能去改变最好,改变不了也正常,没有必要说什么洗脑之类的。再说洗脑了有怎么样呢?和你有什么关系呢?非要把外包说的那么不好也没有太大意义。

  • 怎么给你哇?好像没地方私聊

  • 2017 年的时候研究过,嗨,时光飞逝,估计给区块链用的

  • 和客户接触多些没有太多坏处,没有必要太局限自己。测试方案主要为了展示自身产品优势,也没坏处;工作是为了挣钱,不是为了当测试。

  • @allure.title("{name},期望为{expected}")
    这样就可以的,name 放到测试方法的参数里面就可以

  • 关于两个问题,如果不客气一点的说,楼主还是明白什么道理,问题分析的非常模糊。而且逻辑也不够通。

    1,第一个是开发有个字段取错了,这个字段以前一直都是别人系统传过来的,但是这次要查别人接口取,忘记检查字段取值了,结果影响线上 1000 多个单

    这里我有问题问: 别人系统传过来的?和查别人接口获取,有区别吗?别人系统怎么传过来的?无论是别人送过来的还是自己主动调用,对你测试系统来说都是输入,不能完全相信输入这是一条准则? 别人传过来和自己去查询,就是一回事,不要被开发忽悠了。收到输入参数要做合法性校验的,测试起来确实有点麻烦,但是不是到处在说什么 Mock 吗,那就 Mock 一个了呗。 忘记字段检查取值是个什么意思?这个字段是必须要的还是不必须的?这个字段是变化的还是不变的?都没有挖的底,直知道漏侧,但是不深挖是很难避免的。最少这个事情里面, 对你的帮助:

    1. 是不是可以使用 Mock 帮助你测试?
    2. 如果一个业务有几个关键字段会直接影响订单的,这几个字段的正常值,null,空,都需要用例去覆盖一下,还有字段的阈值也需要验证

    2,java 的一个工具类计算今天是周几,因为老外一周的第一天是周日,所以周日返回 1,周一返回 2,以此类推周六返回 7,开发直接把得到的数减 1,所以周一到周六都是没问题的,周日本来就是 1,减一就成 0 了。当时我没测到周日这个点,结果上线了又出问题了

    这个问题有点坑,我觉得对我的启发就是,类似于这种情况,开始和结束时间都需要试一下,这样才能确定这个顺序是怎么排的。 当然工具类,其实可以直接把代码拿出来,自己跑一下测试,工具类其实没什么依赖的。还有就是周 1-周日业务上有什么不同吗?为什么 0 就不行了,星期几不是只用来做一下表示吗?

    1. 基础理论,怎么 ACID,CAP,一致性这种需要了解下
    2. 如果是分布式,可能更复杂一些,如果内存数据库,也可能更复杂
    3. 最少 SQL 要会,各种 SQL 函数用的很溜
    4. 最少要一门语言
    5. 理论知识要比想的难多了