• #30 楼 @seveniruby 恩,有一个不足的是验证方式仍然不够智能。例如返回的 json 很大,但是只有一个字段是随机字段。 这时候应该有一个像 assertJ 的递归验证对象一样的实现。可以选择不验证某个或某几个字段。 但现在只能一个字段一个字段的验证了。 我之前是自己写了一个责任链来达到这个目的。 再配上 assertJ-db 的数据库断言,我觉得可以满足大部分的业务场景了

  • #24 楼 @seveniruby 这个框架的对返回的 json 的验证也挺好的。例如有如下的 json

    {
    "lotto":{
     "lottoId":5,
     "winning-numbers":[2,45,34,23,7,5,3],
     "winners":[{
       "winnerId":23,
       "numbers":[2,45,34,23,3,5]
     },{
       "winnerId":54,
       "numbers":[52,3,12,11,18,22]
     }]
    }
    }
    

    可以使用以下的验证方式:
    get("/lotto").then().body("lotto.lottoId", equalTo(5));

    get("/lotto").then().body("lotto.winners.winnerId", hasItems(23, 54));

    理论上基层 json 应该是都可以的。我现在没有公司的电脑。我 copy 了一段 github 上的 wiki。也可以从 response 里获取 jsonpath,jsonpath 的语法也能取出字段来。

    额,艾特错人了,请无视吧

  • 除了刚毕业那会。。我是真没碰见有要做笔试题的地方。。。笔试题能考什么呢?一些算法和黑盒测试的理论方法?或者是一些语言的基本语法? 作为一个老 QA,你觉得如果你去面试,人家问你黑盒测试用例设计方法或者面向对象语言的 4 个特性这种问题。。你会不会感觉是在浪费你时间。这不是招聘一个有经验的工程师的方式。 只会让对方觉得公司招聘的职位等级太低。现在大家都很忙,没人愿意跑来浪费时间。

  • 测试开发之路 -- 持续集成 at 2016年11月23日
  • 百度外卖的技术味道 at 2016年11月20日

    在模型生产出来之前有什么有效的测试方式呢? 还是只看模型出来后的 AUC? 很想知道百度的 QA 同学是怎么做的?我们目前都是自己在研究

  • 百度外卖的技术味道 at 2016年11月20日

    不知道外卖的数据处理和特征工程是专门的数据科学家在做么? 还是 RD 自己评经验? 自学习部分又是怎么实施的?

  • #12 楼 @wanxi3 恩 对的

  • #10 楼 @wanxi3 有时候截图判断不了,避免不了去环境里看看的

  • #7 楼 @wanxi3 写脚本的思想,我建议还是跟着业务逻辑走。配合数据库和文件系统的检查,你也可以调用一些开发的接口来避免某些不稳定的页面的操作

  • #5 楼 @wanxi3 如果是单纯的空间的定位方式都不一样了,例如 xpath,id,name 这些东西都不一样了那就是很糟糕了。不过我没碰见过。 这时候需要在代码里做不同的控件定位处理。 我见过的做法是,在 page object 里定义一个控件。然后使用不同的注解 (java 特性) 定义这个控件。IE 就找 IE 的注解, chrome 就找 chrome 的

  • #5 楼 @wanxi3 有些地方是需要些特化的。我们之前会给 IE 做特化处理。 判断如果是 IE 浏览器,就做怎样的操作。不过这种地方不会多的。极少的部分

  • #3 楼 @wanxi3 你说的问题是什么问题。

  • #49 楼 @lingcizhisheng 新的需求是不建议立刻做自动化的,因为不稳定。 如果做了,也是你有自信能立刻应变的。例如变了某些东西你有自信在很短的时间内作出改变。 你看在需求变动的时候受影响最大的肯定是开发而不是测试。为什么开发人员能快速变化,测试人员不能呢,很多时候是因为设计问题,开发人员在写代码前都会设计很多东西来应对未来的变化。 而测试人员就我所知基本没什么设计,上来就写。 所以这就是问题所在了。

  • 一般不就是 webdriver 跑各种浏览器么?

  • 测试开发之路 -- 持续集成 at 2016年11月11日

    #26 楼 @hu_qingen 加你了,抱歉这几天很忙,没怎么看信息

  • #16 楼 @piaodangdang 这个我也木有经验了。 看国外的 docker 大会上说有个程序员妹子把 docker 改了,可以装 windows。但我估计咱们是做不成了

  • #14 楼 @piaodangdang 这个跟 docker 没关系。。跟操作系统有关系。。 exe 只能 windows 跑吧,所以要在 docker 里启动 windows 的系统。不过在 linux 下的 docker 是不能启动 windows 系统的容器的,因为它不是虚拟机,只是容器而已。 听说微软出的一个产品封装了 docker,可以制作 windows 镜像

  • 如果是 UI 自动化,在一台机器上启多个客户端一般是不可以的。你需要多台测试机并行运行,配置成分布式运行测试用例。

  • 测试开发之路 -- 持续集成 at 2016年11月06日

    #23 楼 @zhou 额,为什么看不了。。。是图片挂了么?我这能刷出来啊

  • 测试开发之路 -- 持续集成 at 2016年11月05日

    #21 楼 @jason 内容太多了,之后我分几块详细讲吧

  • #29 楼 @huangke 我 out 了,我还在用破解的呢

  • #18 楼 @jet 毕竟当初 eclipse 是 java 方向 IDE 的霸主,不是所有人都喜欢与时俱进的。而且 idea 是付费的,不是所有人都喜欢去破解的。 我当初换成 idea 是为了他的重构和运行速度,用过之后发现真的好用,比 eclipse 好用很多。

  • #12 楼 @jet
    #13 楼 @yuwanghua12
    额,我用的 idea,好久没用 eclipse 了,android studio 压根就没用过

  • 我也推荐 java,毕竟现在不管移动互联网,还是传统的 web,java 都是主流。跟开发人员用同一种语言好处多多。 java 的市场占有率大还有个好处,就是你可用的开源库多。 等你做的深入的时候就会发现,有很多的开源库是 python 没有的

  • 测试开发之路 -- 持续集成 at 2016年11月04日

    #18 楼 @seveniruby
    #17 楼 @quqing
    分支合并这块细节是有点多,要在 Jenkins 上做很多配置。所以我没有写进来。关于自动的 merge,我们是用 Jenkins 的 git lab 插件。里面有一个 merge before build。如果没有冲突,会自动的 push 到分支上去,如果有冲突,会发邮件提示冲突。这时候需要手动 merge。不过这个方式在我们这有些缺点,就是我们这里是多模块多源码库的,需要在 Jenkins 上配置很多 job 做这些事。 关于 git lab 的插件和 merge before build 这个功能我还没研究透,最近在跟我们开发人员一起研究看看能不能减少 job 的数量。 不知道思寒你们是怎么解决的?