• 使用 Jenkins Pipeline 迁移 Job at 2018年01月16日

    确实哟,Pipeline Syntax 的 env 有 BRANCH_NAME 这个变量

  • 多出来的那句,到底是谁的意思?
    是谁想无限制任意的访问用户数据?

  • https://stackoverflow.com/questions/25509067/git-branch-select-in-jenkins-with-groovy-script
    这个先看下能不能解决你的问题?我对你的问题也有点晕
    https://stackoverflow.com/questions/42501553/jenkins-declarative-pipeline-how-to-read-choice-from-input-step/42502838#42502838
    这个据说解决了问题

    我们加下 QQ? 443056241,我可以运行下看看,行不行
    因为
    (1).active choice 和 extended choice 也可以考虑
    (2).另外 script pipeline 和 declarative pipeline 对于不同的 choice 也要求不同

  • 佩服楼主的毅力,也在思考转型

  • 迷茫的 2017

  • 对的,lkx 正解,权限没加。关于这一点,docker doc 有明确提到

  • 估计需要在调查下才能知道

    • (1).占用内存太多了?
    • (2).terminal 或者 jmeter UI 界面可以单独执行吗?
  • 这个问题很好理解,原因是因为你是 docker 方式启动 jenkins,docker 中的 jenkins 不识别 python,应该映射进去就好了,具体如下:

    docker run -p 8080:8080 -p 50000:50000 -v /Users/XXXi/jenkins_home:/var/j -v python路径:docker中路径
    

    然后后面调用 python 的时候,记得使用 docker 中的路径

    不熟悉的话其实不太建议用 docker 方式使用 Jenkins,会有一些小坑,当然如果你对 docker 很熟悉,也没问题的 (个人的小建议哈)

  • 下面是个人理解:除了 tcp/http,还有 dubbo/restful......
    多数都可以使用 jmeter,例如 dubbo,你可以再写一个 jar,让 jmeter 能执行 dubbo 请求
    框架一般都是自动化使用的,java/python/ruby 均可,编程语言写接口测试的比较少,除非特殊情况
    都不是绝对的,看你的需求,然后可以自己选择

  • 如何提高测试深度? at 2017年12月22日

    同意 dongdong 的说法,例如 tcp/ip,这是一个协议族,一堆协议,对应一堆的 RFC 文件......

  • 原来是和 ansible 同一级别的东西。学习了

  • TesterHome 上海 12月 份沙龙 at 2017年12月18日

    已报名

  • (1).docker 的用法,你还是找的不对,我等下后面是我这边实际的 docker 使用,不是在 tools 里面用 docker
    (2).确切说,目前 pipeline 不支持 choice 中选择非默认 (第一个) 选项这样的用法,要看你的目的是什么,这样用的需求是什么。这就好比说你不能要求汽车飞起来一样,至少目前是这样的,无法这样用,如果抛开 pipeline,是可以支持的 (就是 Extensible Choice Parameter plugin 这个插件)

    下面是一个使用 docker 的例子:

  • 佩服 + 学习,持续关注中......

  • python 的好处,第三方库很多很丰富,开发速度快
    (1).github 用 rails on ruby 开发的,这个性能上应该说是经受住考验的,毕竟是面向全球的
    (2).至于"知乎这个网站,就是用 python 写的,tornado 框架",我不知道知乎使用 python 写的,不了解 github 和知乎的线上实际情况,不好评判

  • 马上检查更改

  • 手游情况分化比较严重,多数都是由前几名的大企业垄断了
    (1).有长期的也有短期几个月就上线的
    (2).一般来说除了极端的一些,多数手游生命周期不长
    综合各种情况分析处理

  • 接受批评,马上看

  • 这个必须赞!

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

  • 其实我觉得一般来说不存在绝对的哪些工作适合专门的语言
    需要什么语言,就调研下,然后选用什么语言即可
    个人感觉 java 用途稍微稍微广一些,我用 python 写过一些小的脚本,flask 框架写过一个内部用打包网站,一个 app 的自动化;觉得 python 不适合商业上的网站,内部网站用用没关系,公开的官网用 python 实现,觉得性能上不行

  • 我来回答下你的问题

    (1).choice 怎么选择到 ABCD

    (1.1).这是一个 choice,也就是执行这个 pileline 脚本前就要先选择一个 (不是选 1234,就是选 ABCD),所以不存在怎么选择到 ABCD
    Pipeline 组件毕竟有一层封装,这个不可以像我们编写 vc/vb/html/c#/java......那样,界面可以默认初始化选定第二项 ABCD

    (1.2).抛开 pipeline,jenkins 有一个插件可以做到默认值为非第一项 (Extensible Choice Parameter plugin)。但是很不幸,pipeline 插件目前不支持这个 Jenkins 插件 (Extensible Choice Parameter plugin)

    (1.3) 至于 ${params.choiceTest[1]}取到的值是 2,你会发现
    ${params.choiceTest}----------------->1234
    ${params.choiceTest[0]}-------------->1
    ${params.choiceTest[1]}-------------->2
    ${params.choiceTest[2]}-------------->3
    ${params.choiceTest[3]}-------------->4
    现在明白为什么 ${params.choiceTest[1]}取到值为 2 了???

    (2). tools 用法,如果想使用 docker 该怎么写

    tools 典型的用法
    def mvnHome = tool 'M3'
    sh "${mvnHome}/bin/mvn -B -Dmaven.test.failure.ignore verify"
    也就是说 tools 实际上是读取 Jenkins-->Global Tool Configuration 里面的公共配置,更通常用于多 node 情况
    至于你说的使用 docker,建议去查下"pipeline-syntax",里面有怎么使用 docker 的语法

    (3). tools,比如安装的三方插件或者说只要不是一个单词像 jdk maven gradle 这样的都不知道该怎么写
    实践证明不是一个单词,也是 OK 的, pipeline 关键代码如下:
    node('master') {
    def mvnHome = tool 'my jdk'
    sh "${mvnHome}bin/java -version"
    }
    运行结果如下:
    [test-long-toolsname] Running shell script
    + /opt/jdk1.8.0_151/bin/java -version
    java version "1.8.0_151"
    Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
    Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)

    (4) .像 string 那个参数那样,既然是 defaultValue,我理解的是应该可以替换,那么需要怎样替换
    这个是 pipeline 插件提供的,定义和读取类似如下
    string(name:'test', defaultValue: 'test1', description: '')
    ${params.strPara}
    你要非常清楚这个 string 是 pippeline 支持的,才可以这样使用,所以这个并不是通常意义上理解的 String 类型变量,让你想怎么办就怎么办

    总体感觉你对 jenkins-pipeline 比较陌生,建议你先去读一遍 pipeline doc(我稍后在本版发一下 pipeline 官方文档的中文版),再看你想要实现的功能,或许会有不同的感触。