全部
顾客第二
阿狸最近的话题一直不断,作为前阿狸员工,也来凑凑热闹吧。纯粹是个人YY,各位看官不要对号入座,也不要过多解读。记得2017年参加青岛敏捷之旅,跟几位老师聊起来更看好哪个大厂。我说会更看好某讯。原因很简单,因为云老板比花藤老板岁数大。为啥这样说呢,因为很多优秀的人岁数一大都会变得奇奇怪怪的。我跟强哥还认真讨论过这个问题:除了主观方面会膨胀之外,岁数变大导致人对自我管理能力的降低,也许是一个原因(纯属臆断,因为也没有经验)。因为这个担心,我在禅道团队的价值观里面专门加了正私和守拙两个词,来警醒自己不要把自己太当回事。刚入职的时候我听过云老板在百阿时的讲话以及年会时的讲话,还是非常有激情、有感染力的...
2023-06-26
不当回事和一定要当回事
如果把我过往的时间划分为三个阶段的话,可以分为求学、工作、创业三个阶段。站在今天再回顾过往的话,创业这些年对我的改变还蛮大的。我对自己的定位一直就是一个在路上创业的小老板,我的职责就是保持学习,努力地解决创业过程中的各种问题。这些年下来有两件事情感触颇深,和大家分享下。
首先学会的一点就是不要太把自己当回事了。
把自己太当回事有很多种表现。比如过于相信自己的能力,把自己偶然的成功归因于自己超人的能力,其实成功往往运气的成分更多。所以很多人二次创业失败率就比较高。再比如错把平台的能力等同于自己的能力,认为自己在公司里面做得顺风顺水的,自己出来做事肯定可以。殊不知平台已经解决了各种问题,大家感...
2023-06-19
如何更好地导入Scrum?
前面写了一系列极限编程的分享,目前这系列先告一段落,后面等我们禅道20系列版本重构完再和大家分享TDD方面的经验体会。极限编程聊完了,接下来和大家聊聊Scrum。Scrum市面上相关的书籍、视频和分享比极限编程要多很多,我不做赘述。更多地是想和大家聊聊:如何更好地导入Scrum?如果企业有预算,最好的方式当然是请资深的敏捷教练来做Scrum的导入。敏捷教练有比较扎实的理论知识、丰富的经验和灵活的方法,再加上个人的影响力,可以按照标准的Scrum框架来进行导入。但现实中更多的情况是,团队中一位小伙伴通过自我的学习,了解掌握了Scrum,想在团队中进行导入,这时候应该怎么办呢?如果你对团队有足够的...
2023-06-12
人生最痛两事与最乐两事
已过不惑之年,感慨也逐渐多了起来。有得时候觉得有很多东西可以分享,但当你尝试诉诸文字的时候,又发现语言是如此苍白。自己所谓的感悟总结,其实早已被古人先贤写尽。每每此时不免沮丧:感慨于诸事纷扰而自己能力有限,感慨于理想与现实之间巨大无情的差距。但还是会安慰自己,只要用心写了,也许会对某一位读到这些文字的朋友有点帮助,这就是我们每一个人都在努力的意义吧。人生痛苦多多,快乐虽有,但少之又少,又很短暂。近几年禅道软件团队规模也在日益壮大,也随之带来很多问题。私下里常与强哥讨论,今天和大家聊聊我认为最痛苦的两件事情和最快乐的两件事情。最痛苦之事一,将别人的钱放进自己的口袋里。每一位企业家都会赞同赚钱太难...
2023-06-06
测试开发之源码篇-代码分支策略
一、主干开发
开发持续向主干提交代码,并基于主干进行测试验证;
在主干上修复缺陷,再同步修正的代码到需要的发布分支上;
每次均基于主干,创建指定版本的发布分支;
可享受持续集成、验证、交付带来的好处,消除不必要的分支切换和代码合并工作;
如果有众多成员同时工作在一个主干上,相互间容易干扰、引发代码冲突等问题;
可借助特性切换机制(如部署时的配置、代码中的判断),来规避不同版本间的差异(如隐藏不成熟的特性,赋予社区版和专业版不同功能),容易引发新的问题和复杂性。
二、Git Flow
开发人员在特性分支上实现新的特性,并提交代码...
2023-05-31
测试开发之源码篇-Git基本操作
版本控制(Revision Control) 在开发的过程中,记录文件、目录、工程等内容的变更历史,方便在以后查看、更改或回滚到先前的状态。Git是一个开源、分布式的版本控制系统,可以方便、有效地管理不同规模项目的代码版本。它最初是由Linux创始人Linus Torvalds为了管理Linux内核代码而开发的。
本次分享主要分为3个部分:第1部分借助一个演示项目,旨在帮助读者快速掌握Git的日常使用;第2部分给出Git常用命令的手册,方便大家在需要的时候查询;第3部分给大家介绍分支管理的常用模型。
Git几个概念
1)3个工作区
工作区(Working Dir):是指开...
2023-05-31
测试开发之源码篇-Git常用命令整理
本文列出了Git的一些常用命令,有兴趣的读者可加到浏览器书签,以备日后检索使用。
基本命令
# 设置代码提交者的用户名
git config --global user.name "chenqi"
# 设置代码提交者的邮箱
git config --global user.email "chenqi@deeptest.com"
# 克隆代码
git clone https://gitee.com/ngtesting/ci_test_pytest.git
# 添加文件到版本库
git add test.txt
# 提交文件到版本库
git commit -m "...
2023-05-30
测试开发之安全篇-使用禅道ZTF执行OWASP安全扫描
开放Web应用程序安全项目(OWASP,Open Web Application Security Project)是一个开源、非盈利、全球性的安全组织,致力于应用软件的安全性方面的研究。OWASP安全标准被视为Web应用安全领域的权威参考。美国国家和国际立法、标准、准则、委员会和行业实务守则参考引用了OWASP,美国联邦贸易委员会(FTC)强烈建议所有企业需遵循OWASP十大WEB弱点防护守则,国际信用卡数据安全技术PCI标准更是将其列为必要组件。
OWAPS TOP 10是该组织定期发布的10项最严重Web应用安全风险列表,该列表总结并更新Web应用程序中最可能、最常见、最危险的十大漏洞...
2023-05-29
我终于对禅道14年的代码下手了
从五月份开始,我们对禅道进行了整体的重构,我终于对禅道14年的代码下手啦。
跟大家说说我们的背景。禅道最新版本是18.4,核心的架构是MVC模式。禅道的第一行代码是2009年写的,至今代码已经迭代了14年。期间的开发人员也从最开始我自己一个人到现在几十个人在维护,虽然整体的结构还算良好,但也不可否认的是代码里的坏味道越来越多。是需要进行一次彻底的重构了。
在对业务代码重构之前,我们先对底层PHP框架和UI框架做了重构。Controller层和Model层我们又分别拆出来了两层:
其中Controller层拆出来的一层我们叫Zen,Controller里面拆分出来的...
2023-05-29
测试开发之单元测试-禅道结合ZTF驱动单元测试执行
ZTF是禅道开源的一款自动化测试工具,支持两种形式的脚本:
1、ZTF自管理脚本。它通过在脚本顶部的注释中加入用例的编号、标题、步骤和期待结果等信息,实现和禅道手工用例的同步,用于同执行时输出的实际结果进行比对,以完成检查点的断言。具体可参考这里的一个例子;
2、其他单元测试或自动化测试工具的脚本。测试人员可按照原来的方式编写测试脚本,ZTF对他们并没有侵入,只是负责驱动这些工具脚本或项目的执行调度工作,分析结果、并提交到禅道。这里有一个PyTest的例子,供大家参考。
ZTF和市面上已有的自动化测试工具相比,更聚焦于自动化测试的管理功能,包括脚本的组织和调度、同测试管理系统的集成等。使...
2023-05-26