Jenkins

从DevOps到Cloud Native,应用上云姿势全解锁

懵懂的女人 提交于 2020-12-03 07:43:34
本文由 网易云 发布。 作者: 林帆 序文 伴随着IaaS、PaaS等云端基础设施技术的成熟,“应用上云”成为许多企业软件部门的心头大事。通过把传统软件系统搬到云上,一方面可以让业务方获得更多的资源灵活性,另一方面也可以缓解运营方的成本压力,让硬件资源不再成为阻碍流量和业务增长的障碍。上云这件看起来轻松的事,其实却是一项系统性的工程。只有到真正做起来时候才会发现一地鸡毛的问题,且不说技术方面引入的变化,组织部门隔阂、开发流程陈旧、配套工具落后、人员意识保守...随时冒出来状况,足以让这个许多人最初以为只是改改架构重新部署的工作变得复杂度远超预期。 特别是在早几年时候,“云原生应用”的概念比较模糊,应用上云到底要做哪些事情并没有过权威明确的定义。虽然有Google、Facebook和许多国内外互联网企业总结出的案例,但都不具有普适性,一些规模不大的企业照搬照抄效仿,试图一步到位,结果落得邯郸学步的下场。从这个角度来看,网易云出品的 《云原生应用架构实践》 的确是一本可以让人眼前一亮的书,它 针对互联网应用前期拼灵活、中期拼增长、后期拼稳定的特点,明确的指出了处于不同规模和时期的企业,实施上云策略应该完全不同,并针对三种典型的发展阶段阐述了企业应该采用的实践和转型途径 。 图片来自互联网 从DevOps到Cloud Native 运用“云原生应用”架构的一条很重要原则是

What is the relationship between Environment and Parameters in Jenkinsfile Parameterized Builds?

£可爱£侵袭症+ 提交于 2020-12-01 09:38:38
问题 I recently ran into something of a puzzler while working on some Jenkins builds with a coworker. He's been using params.VARIABLE and env.VARIABLE interchangably and having no issues with it. Meanwhile, I started getting null object errors on one of his calls to a parameter object through the environment on this line of code: if(!deploy_environments.contains(env.ENVIRONMENT_NAME.trim()) || params.INVOKE_PARAMETERS ) { ENVIRONMENT_NAME here is a parameter. I started getting this error: java

What is the relationship between Environment and Parameters in Jenkinsfile Parameterized Builds?

◇◆丶佛笑我妖孽 提交于 2020-12-01 09:37:26
问题 I recently ran into something of a puzzler while working on some Jenkins builds with a coworker. He's been using params.VARIABLE and env.VARIABLE interchangably and having no issues with it. Meanwhile, I started getting null object errors on one of his calls to a parameter object through the environment on this line of code: if(!deploy_environments.contains(env.ENVIRONMENT_NAME.trim()) || params.INVOKE_PARAMETERS ) { ENVIRONMENT_NAME here is a parameter. I started getting this error: java

Automated Code Signing - Protecting the private key

梦想的初衷 提交于 2020-12-01 09:36:00
问题 I want to automate the code signing of some ClickOnce deployment artifacts - application exe's and manifests. I am using signtool to accomplish this. In an attempt to make the private key available for signing and yet protect the certificate file containing the private key (.pfx file), my plan is to install the certificate into the local machine certificate store with a non-exportable key. (I am aware that there are ways of exporting the key even if it is marked non-exportable.) The machine

Automated Code Signing - Protecting the private key

最后都变了- 提交于 2020-12-01 09:35:25
问题 I want to automate the code signing of some ClickOnce deployment artifacts - application exe's and manifests. I am using signtool to accomplish this. In an attempt to make the private key available for signing and yet protect the certificate file containing the private key (.pfx file), my plan is to install the certificate into the local machine certificate store with a non-exportable key. (I am aware that there are ways of exporting the key even if it is marked non-exportable.) The machine

Selenium Webdriver 3.X源码分析之核心remote package

核能气质少年 提交于 2020-12-01 02:46:48
点击上方“蓝字”带你去看小星星^_^ > Selenium Webdriver 3.X源码分析系列第11篇,该系列原则上会将整个源码分享一遍 在selenium webdriver Python端,最核心的代码就是在remote包目录下了,因为该目录下定义和实现了我们利用selenium webdriver 进行自动化测试的几乎所有的核心API能力。 下面我们先看一下remote目录结构,如下图所示: 其源码路径为 selenium/webdriver/remote,remote下个py文件功能大致说明如下: - __init__.py 空文件,用于标识remote是标准的python package - command.py 定义了标准的webdriver命令常量 - errorhandler.py 定义了webdriver wire 协议中的错误编码 - file_detector.py 定义和实现了文件监控能力 - getAttribute.js 定义和实现了获取属性能力 - isDisplayed.js 定义和实现了判断元素是否可显示等能力 - mobile.py 定义和实现了移动端能力 - remote_connection.py 定义和实现了与webdriver远程服务连接的能力 - switch_to.py 定义和实现frame、windows切换能力 - utils

必备基本功:缺陷生命周期

半世苍凉 提交于 2020-11-30 13:43:51
此文来自 百人计划 成员 倔强的潇洒小姐 的投稿。 文章从“什么是Bug ”、 “Bug基本属性” 、 “如何有效的报告缺陷” 、 “缺陷的生命周期” 、“Bug常见类型” 、 “如何重现Bug” 、“缺陷分析”等多维度综合阐述 。 是一份非常完整的 软件测试从业者 必备知识。 --如下是正文-- 什么是Bug? 一只虫子爬进主机引起短路的这个事件(不知道的可以咨询百度),让我们知道了软件缺陷被称为“Bug”的原因,而我也一直以为缺陷就是bug。 那缺陷又是什么呢? 还是看上面的这个例子,真正的缺陷是计算机维护工程师提出来的那个问题:在主机的散热孔那里可以加装一层更加细密的金属网,既不影响散热,又可以防止虫子爬到主机里。这是计算机设计人员疏忽的地方,是产品真正的缺陷。而虫子引发的那个故障只是这个缺陷导致的故障的其中一种表现形式。也就是说,Bug是缺陷的一种表现形式,而一个缺陷是可以引起多种Bug的。 所以 缺陷和bug是一对多的关系 ,弄清楚这层关系了接下来我们就来看看缺陷报告。 缺陷报告是测试人员日常工作中的一部分,每天都要进行,有时可能一天要报上三四十个,因此缺陷报告的质量就显得特别重要,直接关系到缺陷修正的速度、开发人员的效率。 缺陷报告的描述 一份有效的缺陷报告要素通常包括:标题、前提、测试环境、操作步骤、实际结果、期望结果、出现的频率、优先级、严重等级、附件

Web常见漏洞分析及测试方式

丶灬走出姿态 提交于 2020-11-30 12:06:51
顾老师新书《全栈软件测试工程师宝典》 https://item.m.jd.com/product/10023427978355.html?wxa_abtest=o&utm_source=iosapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=CopyURL&ad_od=share&gx=RnE2wTZZbDWKzdRd9tUpCv_pu4hC 以前两本书: 《软件测试技术实战设计、工具及管理》: https://item.jd.com/34295655089.html 《基于Django的电子商务网站》: https://item.jd.com/12082665.html 来源:http://www.51testing.com 0x01.暴力破解攻击   (一).概述   不断地去试用户名和密码,直到试出来    (二).字典   1.常见的弱口令   2.互联网上被脱裤后的账号密码(撞库),人们为了方便记忆很多网站使用相同的账号密码   3.指定字符利用工具生成专属字典,已知某妹子的姓名 手机 号爱好等生产专属子字典。    (三).产生条件   是否要求用户设置复杂密码   是否每次认证使用安全的验证码   是否对尝试登录的行为进行判断限制(例如五次输错暂停登录30分钟)   是否在必要的情况下采用了双因素认证