• 希望 testerhome 越来越强大

  • #13 楼 @WhatChenHH 可以来小红书看看

  • 关于 pytest 的问题 at 2016年12月01日

    @Mr.Tian 你可以参考使用 pytest 的 hook 机制,文档在这里http://docs.pytest.org/en/latest/writing_plugins.html#writing-hook-functions

    你可以在你的 conftest.py 中实现下面的这些 hook 函数,你可以自己选择一个符合你要求的 hook 函数来实现

    pytest_itemcollected(item)[source]
    we just collected a test item.
    
    pytest_collectreport(report)[source]
    collector finished collecting.
    
    pytest_deselected(items)[source]
    called for test items deselected by keyword.
    
    pytest_report_header(config, startdir)[source]
    return a string to be displayed as header info for terminal reporting.
    
    pytest_report_teststatus(report)[source]
    return result-category, shortletter and verbose word for reporting.
    
    
  • #8 楼 @jacexh 我第一段描述的是,如果把多行 shell 合并成一行的话,应该不会对存储存在很大的影响。

    例如下面的这几行 RUN 的指令

    RUN yum install gcc g++ gcc-c++
    RUN yum install curl libcurl-devel
    RUN yum install boost boost-devel boost-doc
    RUN yum instlal zlib zlib-devel
    RUN yum install openssl openssl-devel
    

    如果合并到一行的话,实际的存储是差不多的。但是区别是,如果想替换,或者增加一个库的依赖,那么对于已经存在的这些指令,会出发 Docker 的 Layer Cache,达到节约时间的作用

    官方的 Python 库和自己 Build 的库肯定会有存储的差异,因为我们去掉了很多不需要的 Lib 的安装

    欢迎更多交流

  • #5 楼 @airfer Dockerfile 中有提到过关于 Docker Image Layer Cache 的问题,其实 shell 的脚本一行还是分成多个效果是不一样的。Docker Image Cache 的 Key 是根据 RUN 命令的 string 来做的,所以分成多个写可以更好的利用 Cache。而且从存储的角度来看,多层和单层实际不会有多大的 Storage 的浪费,最多是多了一个 Layer 指针的空间大小。

    当然 10G 的 Image 还是有点大了,从 Container 的价值来看,其实更多的是 Move your compute 的概念,所以建议把 Data 通过 Volume 的方式动态加载到 Container 中,Image 中只保存 Service 依赖的 Binary,这样可以大幅度减小 Image 的 Size

    我们目前也正在大规模实施 Docker 在自动化测试中的应用,期待可以和你有更多的交流

  • #23 楼 @tavisdxh 以后多交流,你也是上海的么?

  • #21 楼 @jacexh 多谢分享,以后多交流

  • #19 楼 @kesha0 因为这个工具另外一个目的是,也可以让开发同学一起使用,所以考虑到不是所有人都要学习 Jmeter 的,所以最后选择了 chrome 插件的方式。我们目前计划的 performance test 会基于 Python 来实现,因为整个团队的 stack 基本是 python 为主。但是如果单机 load 上不去的话,可能会考虑使用 gatling 的 akka,所以也没有准备未来用 jmeter 做性能压测的工作。

  • #5 楼 @dongdong 感觉 OneBlock 有点像当年的 Fitnesse 的 Slim 协议,Master 和 Agent 的模式,只要基于 Slim 协议实现一个 Test Engine,就能通过 Fitnesse 来驱动测试执行,印象中 Slim 是有多个不同语言的实现版本。不过看了 OneBlock 之前的一些帖子的介绍,OneBlock 在管理上还是很强大,赞一个

  • #17 楼 @jacexh 接口测试的持续集成是一直在 Jenkins 上运行的。这个工具是一个辅助的工具,用来帮助我们调试 API 的时候用的

  • #15 楼 @andward 在 Googler 面前班门弄斧了

  • #13 楼 @fforever14 不错的建议 . 之前也没有很深入了解过 jmeter plugin 的开发相关的东西,以后可以花点时间去研究一下。目前团队中是有一个独立的 Quality Tools and Infrastructure Team 来负责团队相关的工具和框架的开发维护工作,这个工具从需求提出,选型到最终交付,我们花了不到 3 天的时间,从学习成本的角度来看,是可以接受的。当然有一个客观的条件是,我们的 Software Enginneer, Tools and Infrastructure 的同学整体能力都还是很强的。

    一个工程师文化很浓厚的团队,我们坚信是一定是一个有很强工具文化的团队。交付一个怎样的工具给到团队的其他成员,来充分提高他们的生产力,这是一个很值得探讨以及思考的话题。

  • 看明白了,等于把你的测试代码封装成了一个 HTTP 的服务,然互通过 OneBlock 的管理平台来驱动执行你的 case。所以我的理解 OneBlock 的实现功能主要是用例的管理,并且通过 HTTP 接口的方式和外部的测试驱动集成,right?

  • bottle 在你项目里是看什么做用,我看还启动了一个 web server 的

  • #11 楼 @silent_8 是的,之前选型的时候是考虑到了 Chrome 在团队中基本大家都在用,而且也在 Github 上找到了对应的开源项目,并且 Google 的 Chrome Development 的文档相对也比较丰富

  • #7 楼 @clovey 是的,😄

  • #8 楼 @ccy 前面文章已经提到了,这个是用来给产品测试平时手工 Debug 用的工具啦。CI 的接口测试当然是每天跑 Jenkins 上的😀

  • 持续招聘中,欢迎有想法的同学看过来

  • 用源码安装 appium at 2016年09月06日

    在国内装 appium 最好是在 *** 模式下,因为 appium 的安装过程中涉及到去 google 下载 chromedriver 的 binary

  • 可以考虑做抽样检查

  • @codeskyblue 非常赞

  • 以 docker 方式运行 jenkins at 2016年08月27日

    @jmcn 对于 Log 的 话你们现在是在你们的容器里面都部署了 LogStash 么?我们目前对于 shipyard 的主要需求是希望可以了解到主机上的容器运行情况,非常谢谢你的建议,你们现在是 Docker 用到怎样的规模了,你们怎么在测试中运用 Docker 呢,很好奇是你们有使用 kubernetes 么?如果方便的话方便加你的 wechat 么?

  • 以 docker 方式运行 jenkins at 2016年08月27日

    写的非常不错,尤其是 Docker in Docker 这一块正是我们团队未来需要去解决的一个问题。同学你提到了 Shipyard,不知道你们是否有在使用 shipyard 这个管理工具?