SHUHARI 的博客

流光飞舞

标签 软件工程

Flask 应用集成测试案例谈

Flask 应用集成测试案例谈

我们都知道,测试是有层次的。一般来说,测试的组织应该形成类似下图那样金字塔型的结构:在底层有数量很大、短小而快速的单元测试,在开发过程中提供实时反馈;中间层是集成测试,验证各个组件组合在一起是否正常工作;再往上则有所分化,依照不同的侧重点与表现形式、有系统测试、UI 测试、用户验收测试(UAT)、接口测试、端到端测试等多种不同的称呼。从自底向上的角度看,它们应该在数量上逐层递减,但测试覆盖的范围则更大(相应的执行速度也会变慢),在损失代码局部细节的同时,也获得了更广泛的全局视角。

《Developer Should Abandon Agile》 解读

前言

最近,敏捷开发的代表人物、也是 Agile manifesto 的作者之一 Ron Jeffries 发表了文章 Developer Should Abandon Agile(中译:开发者应该放弃敏捷)。InfoQ 也有这篇文章的 中文新闻。以作者的身份表达这样的观点,无疑是很有震撼性的,然而(我认为) InfoQ 的新闻并没有完整地表达清楚作者的思想,读起来有一种雾里看花的感觉。

这里,我试图从自己的角度,尽可能全面地传达 Ron 大叔原文中的观点,同时也想表达我自己的一些个人看法。当然,我会明确的将两者区分开,以下除特殊说明外,原文将统一以引用的形式标注出来。

Python 项目可以有多大

Python 项目可以有多大

总是看到有人说,动态一时爽,重构火葬场。然而这世界上有的是著名的开源项目, 也有像 Github、Instagram 这样流量巨大的知名网站是基于动态语言开发的,经过了这么多年重构,也未听说哪个作者进了火葬场的,不明白这些人是真的不知道还是装作看不见呢?不过他们说动态语言大到一定程度就无法维护,虽然这话也同样不值一驳,不过也提醒了我,我也很好奇用动态语言开发的项目规模能大到什么程度。