Eating Your Own Dog Food “dogfooding”的概念源于20世纪80年代演员Lorne Greene把自己代言的狗粮喂给了自己狗。 支持“dogfooding”的理由是表明公司对自己的产品有信心,并且内部的广泛使用会更早发现bug。还有一个理由是让开发产品的人更熟悉产品,并在内部建立反馈机制。 反对“dogfooding”的理由是吃自己的狗粮无法理解和欣赏其他公司工具的优点。批评者也说,一些自豪地吹捧吃自己狗粮的公司同时表现出令人惊讶的傲慢程度和相应程度的无知。 总的来说,开源社区似乎实践了一种较弱的“dogfooding”形式。你对狗粮有什么看法?你们公司吃自己的狗粮吗?你觉得它有益吗?
通过早期的“狗粮”(dogfooding)用户,我们积累了一些实际的需求和反馈,并且做了不少改进。在开源之前,社区的朋友也协助测试了功能,提供了宝贵建议。
值得一提的是,在软件行业开发者自己使用自己的产品被称为“Dogfooding”方法,也就是“自己做出来的狗粮自己吃”。
采用 Dogfooding 方法 Dogfooding: 用维基百科的解释来讲,Dogfooding是一种使用自己的产品或服务以支持内部测试的做法,其可以对产品的质量进行提前把控,并做到有充分的信心正式上线 Fred现在回想起来,当初真的应该要采取 Dogfooding 方法,为自己的开源库换取更多的全面公开前的线上功能测试与质量保障。 2.
我们已经建立了一个Alpha版本的Firestorm,同时在社区内进行dogfooding。我们正在改装Phoenix 1.3的Firestorm。我们预计7月初达到1.0。
这种将内部成熟数字化经验转化为对外输出产品(Dogfooding)的模式,确保了产品在稳定性、高并发与复杂组织架构适应性上具备领先优势。
包括进度追踪、单测结果追踪(便于发现一次提交修复了什么,干坏了什么,手段非常简单:把tests-failing.txt, tests-passing.txt添加到git追踪)、持续的生产环境验证(所谓dogfooding
10 做我们自己的内部测试 世界上有很多组织已经受益于dogfooding了,也就是他们把自己放在客户的角度上使用自己的产品。
用于检查心跳过期脏数据 可用于生产环境 Multicast 注册中心 Tested 去中心化,不需要安装注册中心 依赖于网络拓扑和路由,跨机房有风险 小规模应用或开发测试环境 Simple 注册中心 Tested Dogfooding
Dogfooding项目和案例 ? 金融案例——金融云 该客户是专门从事银行卡受理市场建设和提供综合支付服务的机构。
此外,Crane团队还通过早期“狗粮”(dogfooding)用户的反馈,完善并确定了Crane最初的四大功能:管理UI、 基于角色的访问控制 (Role Based Access Control) 、
DogFooding 自测允许在集成环境上进行冒烟测试,通过测试管理中的测试计划进行追踪,并组织提测前的 demo 演示。
例如: 开发自验(DogFooding) 外部众包测试 公开的alpha/ beta版本(他们发布前如何进行测试?)
Microsoft 的其他团队提供了有关 C# 的重要 dogfooding 反馈。得知 .NET 运行时使用这种新的空检查语法删除了近 20,000 行代码,这令人兴奋。
然而,对于更复杂的需求,如按需TLS证书生成,SNI(Server Name Indication,即服务名称指示)或基于cookie值的路由(例如本系列第五部分讨论的员工采用的dogfooding方法
然而,对于更复杂的需求,如按需TLS证书生成,SNI或基于cookie值的路由(例如本系列第五部分讨论的员工dogfooding方法 ),将Linkerd与专用边缘层(如NGINX)结合仍然是必要的。
dogfooding带来的挑战 在现代软件工程中,狗食通常被认为是一件好事。在我们自己的API之上构建我们的产品被认为是确保我们的API具有高质量并且始终是最新的最佳方式。
DogFooding 自测允许在集成环境上进行冒烟测试,通过测试管理中的测试计划进行追踪,并组织提测前的 demo 演示。
他们同时准备了多个环境,并在自己身上使用dogfooding环境进行了测试,就像他们的最终用户一样。
https://www.yunyoujun.cn/wc-github-corners/ Demo 代码: wc-github-corners/demo/index.html 软件界用自己的东西叫做 dogfooding