优质代码:软件测试的原则、实践与模式

配送至
$ $ USD 美元

编辑推荐
本书专门从软件开发人员和技术人员关注的代码质量的角度来讲软件测试的原理、实践和模式。作者有30多年的软件开发经验,20多年软件测试技术的教授经验。书中积累了来自大量高水准软件工程师的多年经验。无论你是在写一个新系统,还是试图驾驭一个遗留系统,本书都会让你高效地开发高质量的代码。 测试驱动、测试先行和尽早测试这些开发实践,正在帮助成千上万的软件开发组织改善其软件。在本书中,作者立足于所有读者已经熟知的测试驱动开发知识,帮助读者实现前所未有的优质代码。 为了帮助读者更加全面、有效和轻松地测试任何软件系统,本书使用真实的代码示例介绍了测试的模式、原则和20多个技术细节,并通过两个完整的案例分析,即测试一个全新的Java应用程序和一个未被测试的“遗留”JavaScript jQuery插件,将本书讲述的所有内容整合在了一起。此外,作者还展示了一个概念框架,帮助读者将精力重点放在改善贯穿整个软件生命周期的可测试性上,并给读者提供了简化代码构造的全系列测试的实操指南。 无论是最常见的场景还是多线程,本书都会帮读者学会如何针对每一种情景选择最好的测试技术;无论是为一个新的创业公司开发前沿代码,还是维护一个很难驾驭的老旧系统,本书都会帮读者交付其真正需要的优质代码。 简化所有代码的单元测试,并改善集成测试和系统测试。 详述意图和实现,促进更加可靠和可扩展的测试。 克服对编写测试的机制的混淆和误解。 测试“副作用”、行为特征和上下文约束。 了解软件设计与可测试性之间微妙的交互,并对其进行利用,而非受困其中。 揭示能够指导关键测试决策的一些核心原则。 探讨以下内容的测试:getter/setter、字符串处理、封装、覆写变化、可见性、单例模式、错误条件等。 确定性地重现并测试一些复杂的竞态条件。
名人推荐
什么是优质代码?除了能够正确实现设计意图外,优质代码还应该具备“三好”的特性:好看,好闻(没有坏味道),好验证。然而,如何写出优质代码呢?除了好看和好闻之外,可测试性是优质代码的重要指标。尽管开发工程师普遍对提高代码的可测试性感兴趣,但是,想要在复杂的代码环境下游刃有余地解决可测试性问题,非得有合适的“招式”支撑不可。《优质代码》这本书提供了一整套提升代码可测试性和测试代码的招式,书中结合实例对不同招式进行了细致的讲解,并用两个相对完整的实例演示了招式的使用。对于立志于写出优质代码却又受可测试性困扰的开发工程师来说,本书是不可多得的参考资料。 ——段念,豆瓣网工程副总裁 在节奏越来越快的IT时代,我们开发软件产品,究竟是拼快,还是拼质量?虽然快速开发能为我们赢得先机,但归根结底,质量才是最终决定产品成功的重要砝码。遗憾的是,遍观各种软件系统,我们仍然看到许许多多靠着编程急就章造就的作品——代码惨不忍睹,质量马马虎虎;测试寥若寒星,维护战战兢兢。于是,软件系统背负着沉甸甸的技术债务蹒跚前行,自然也就不足为奇了。问题出在哪儿?管理层不重视代码的内部质量固然是其主因,然而,多数开发人员不知道为何要写测试,不明白该写什么测试,不清楚如何写好测试,恐怕亦是造成此恶果的一大诱因。于是,业界开始提倡编程匠艺,推崇测试先行,强调优质代码。该如何做,本书给出了答案。它从技术层面剖解了编程匠艺的诸多细节,从测试角度入手,总结了诸多原则、实践与模式,既有理论深度如饮醇酒,香冽而隽永;又有案例小菜,足以佐酒而回味悠长。一本佳作,要的就是这个味儿。 ——张逸,ThoughtWorks公司 现在多数人都很认同“质量是内建的”,开始关注“测试驱动开发”、“测试在先”等优秀实践,但真正知道怎么做的人倒是不多。本书正好填补了这方面空白,专注于有关编程测试和可测试性方面的多种实现机制,手把手地教开发人员如何做测试,通过具体实例、典型的微量代码,对测试框架、测试模式和测试技巧进行了淋漓尽致的展现,不仅帮助我们写出“首次优质”的新代码,而且指导我们如何驯服已有的烂代码,如何编写能够表达我们意图的测试来驱动代码的设计,如何处理一些棘手的问题(如多线程测试)。之前,我和译者伍斌也有几面之交,他对编程公益社区的热衷、对代码的精益求精给我很深的印象,相信他是全身心投入本书的精译,从译文中也得到验证,本译作的出版又是一次对编程操练开放社区的巨大贡献,让无数的编程人员受益。 ——朱少民,同济大学软件学院教授 查看所有商品描述
ISBN
出版社人民邮电出版社
作者斯蒂芬·万斯 (Stephen Vance)
尺寸16