• 问一下楼主,我现在用的应该还是jenkins1.0,也可以通过在一个job配置里添加”构建后操作”,来触发下一个job的执行,同时可以创建pipeline视图来查看多个job的组织拓扑。请问使用效果上跟2.0的pipeline as code有什么区别?

  • 最近刚好在学习docker,楼主,貌似bridge模式下是可以给容器分配固定ip的,只要自己创建私有网络,不要用默认的docker0。另外楼主说的none模式,让跨宿主机的网络互联,这个后续要好好实践下,我们现在都是把服务全部部在一台宿主机上。

  • def screenshot_error(param,*args,**kwargs):
        def decorate(func):
            def _screenshot_error(self,*args,**kwargs):
                try:
                    func(self,*args,**kwargs)
                except Exception as e:
                    self.driver.get_screenshot_as_file("error.png")
                    raise e
            return _screenshot_error
        return decorate
    

    你这段代码第一行的def screenshot_error(param,args,kwargs) 里面的 args跟kwargs根本不会起作用的。try里面的语句func(self,*args,kwargs)用到的args和kwargs使用的是最内层的 def _screenshot_error(self,*args,*kwargs)里定义的参数。

    我知道装饰器是可以带自身参数,你可以把你的代码改成:

    def screenshot_error(param, *ag, **kw):
        def decorate(func):
            @functools.wraps(func)
            def wrapper(self,*args,**kwargs):
                try:
                    func(self,*args,**kwargs)
                except Exception as e:
                    self.driver.get_screenshot_as_file("error.png")
                    raise e
            return wrapper
        return decorate
    

    然而楼主的问题不在于要多加一层

  • bridge? not briage

  • 你首先要想一下为什么要使用代理模式,它的使用场景是什么。通过这种代理,你可以在invoke方法中除了调用原方法外,可以再插入其它的操作,比如记录时间、日志,在方法调用前后检查端口、数据库等等,是一种面向切面的思想,类似python中的装饰器。当很多个方法有这些共有的操作的时候,你可以将方法抽象出来,然后将这些操作都放入invoke方法中,通过代理可以让多个被代理的方法都有同样的操作。

  • 没有授权过,我就在TesterHome发过此文。

  • 主要是配置sonar.timemachine.period这个参数。通过sonar面板的Administration->General Settings->Differential Views可以查看到有相关参数的介绍

  • windows节点机用execute batch command,linux节点机就用execute shell,然后就执行java命令就好了

    —— 来自TesterHome官方 安卓客户端

  • 个人建议哈,测试还是要多拓宽下自己的维度、视野,脱离岗位的束缚,这样才会更有竞争力。而且现在DevOps非常盛行,测试要做更多开发、运维的工作。你说的你们公司不能参与其中,这确实可能是一个比较大的限制问题。我们公司还是比较自由的,问开发要产品源码权限都是ok的,测试环境的搭建维护都是测试自己来负责。你可以从项目出发,先搞清楚整个项目的架构,各个组件关系之间的依赖,自己尝试动手去搭建一套新的环境。另外,自己可以深入产品源码去分析业务逻辑,测试过程中碰到问题,可以尝试自己通过业务日志、数据库信息、远程调试等方式自己去定位问题。

  • 谢谢指点。确实我对mybatis跟hibernate的使用不是那么地深,mybatis只是简单地写过几个demo。之所以用hibernate也是图个方便,它跟以前我使用的python的django框架里的ORM比较接近。不过你说的mybatis的缓存等这些功能hibernate里也都是支持的。后续有机会接触用spring boot或spring mvc去开发平台的话,再深入学习一下

一枚爱写代码的测试工程师。