返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • JUnit实战(第3版) (罗马尼亚)克特林·图多塞 著 沈泽刚,王永胜 译 专业科技 文轩网
  • 新华书店正版
    • 作者: [罗马尼亚]克特林·图多塞(Catalin Tudose)著 | | 沈泽刚 王永胜译
    • 出版社: 人民邮电出版社
    • 出版时间:2023-06-01 00:00:00
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    文轩网图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

         https://product.suning.com/0070067633/11555288247.html

     

    商品参数
    • 作者: [罗马尼亚]克特林·图多塞(Catalin Tudose)著| 沈泽刚 王永胜译
    • 出版社:人民邮电出版社
    • 出版时间:2023-06-01 00:00:00
    • 版次:1
    • 印次:1
    • 印刷时间:2023-06-01
    • 页数:478
    • 开本:16开
    • 装帧:平装
    • ISBN:9787115578532
    • 国别/地区:中国
    • 版权提供:人民邮电出版社

    JUnit实战(第3版)

    作  者:(罗马尼亚)克特林·图多塞 著 沈泽刚,王永胜 译
    定  价:139.8
    出 版 社:人民邮电出版社
    出版日期:2023年06月01日
    页  数:496
    装  帧:平装
    ISBN:9787115578532
    主编推荐

    1.JUnit 5实战类图书。涵盖从JUnit 4向JUnit 5迁移、软件测试原则等内容,让读者深入了解JUnit框架。 2.细致讲解Java开发人员进行单元测试和集成测试的实用框架,有效测试自动化、测试驱动开发和行为驱动开发。 4.大量真实世界中的应用程序案例,包括Spring、Spring Boot 以及 REST API 测试,更好地掌握如何在实际项目中使用JUnit进行测试。 5.将 JUnit 5 与 Maven/Gradle 结合起来使用,提供大量实用的建议和技巧,帮助读者在项目中快速而有效地使用JUnit框架。

    内容简介

    本书全面介绍JUnit 5的新特性及其主要应用。全书共22章,分为五部分。第一部分介绍JUnit 的核心、JUnit的体系结构、从JUnit 4向JUnit 5迁移、软件测试原则等内容;第二部分介绍软件测试质量、用stub和mock object进行测试、容器内测试等内容;第三部分介绍用Maven和Gradle工具运行JUnit测试、IDE对JUnit 5的支持、JUnit 5的持续集成等内容;第四部分介绍JUnit 5扩展模型,表示层测试,Spring、Spring Boot和REST API以及数据库应用程序的测试等内容;第五部分介绍使用JUnit 5进行测试驱动开发和行为驱动开发,以及用JUnit 5实现测试金字塔策略等内容。 本书既适合刚接触JUnit框架的Java开发人员阅读,也适合想要了解JUnit 5新特性的、经验丰富的JUnit开发人员学习,尤其适合企业级Java开发人员阅null

    作者简介

    克特林·图多塞(Catalin Tudose),拥有计算机科学专业的博士学位,担任过 Java 高级开发员和技术团队带头人,有超过 15年的 Java 开发经验。

    精彩内容

    目录
    第一部分 JUnit

    第1章 JUnit起步 3
    1.1 证明程序的可运行性 4
    1.2 从零开始 5
    1.2.1 单元测试框架的规则 8
    1.2.2 添加单元测试 8
    1.3 安装JUnit 9
    1.4 使用JUnit测试 11
    1.5 小结 13
    第2章 探索JUnit的核心 14
    2.1 核心注解 15
    2.1.1 @DisplayName注解 17
    2.1.2 @Disabled注解 18
    2.2 嵌套测试 20
    2.3 标记测试 21
    2.4 断言 22
    2.5 假设 26
    2.6 JUnit 5的依赖注入 28
    2.6.1 TestInfoParameterResolver 28
    2.6.2 TestReporterParameterResolver 29
    2.6.3 RepetitionInfoParameterResolver 30
    2.7 重复测试 30
    2.8 参数化测试 32
    2.9 动态测试 35
    2.10 使用Hamcrest 匹配器 37
    2.11 小结 41
    第3章 JUnit的体系结构 42
    3.1 软件体系结构的概念和重要性 42
    3.1.1 故事一:电话簿 43
    3.1.2 故事二:运动鞋制造商 43
    3.2 JUnit 4的体系结构 44
    3.2.1 JUnit 4模块化 44
    3.2.2 JUnit 4运行器 45
    3.2.3 JUnit 4规则 47
    3.2.4 JUnit 4体系结构的缺点 52
    3.3 JUnit 5的体系结构 52
    3.3.1 JUnit 5模块化 52
    3.3.2 JUnit Platform 53
    3.3.3 JUnit Jupiter 53
    3.3.4 JUnit Vintage 54
    3.3.5 JUnit 5体系结构的全景 54
    3.4 小结 56

    第4章 从JUnit 4向JUnit 5迁移 57
    4.1 从JUnit 4向JUnit 5跨越 57
    4.2 所需的依赖项 58
    4.3 注解、类和方法 60
    4.3.1 等价的注解、类和方法 60
    4.3.2 分类和标记 64
    4.3.3 迁移Hamcrest匹配器功能 69
    4.3.4 规则与扩展模型 71
    4.3.5 自定义规则 74
    4.4 小结 78
    第5章 软件测试原则 79
    5.1 单元测试的必要性 79
    5.1.1 带来更高的测试覆盖率 80
    5.1.2 提高团队的工作效率 80
    5.1.3 检测出衰退迹象和减少调试次数 80
    5.1.4 自信地重构 80
    5.1.5 改进实现 82
    5.1.6 文档化预期行为 82
    5.1.7 启用代码覆盖率和其他指标 83
    5.2 测试类型 83
    5.2.1 单元测试 84
    5.2.2 集成测试 84
    5.2.3 系统测试 85
    5.2.4 验收测试 85
    5.3 黑盒测试和白盒测试的对比 86
    5.3.1 黑盒测试 86
    5.3.2 白盒测试 86
    5.3.3 黑盒测试和白盒测试的优点和缺点 87
    5.4 小结 88

    第二部分 不同的测试策略


    第6章 测试质量 91
    6.1 测试覆盖率度量 91
    6.1.1 测试覆盖率简介 92
    6.1.2 代码覆盖率度量工具 93
    6.2 编写易于测试的代码 96
    6.2.1 理解公共API契约 97
    6.2.2 减少依赖 97
    6.2.3 创建简单的构造方法 98
    6.2.4 遵循迪米特法则 99
    6.2.5 避开隐藏的依赖项和全局状态 100
    6.2.6 优先使用泛型方法 101
    6.2.7 组合优于继承 102
    6.2.8 多态优于条件 102
    6.3 测试驱动开发 104
    6.3.1 调整开发周期 104
    6.3.2 TDD的两个核心步骤 105
    6.4 行为驱动开发 106
    6.5 突变测试 106
    6.6 开发周期中的测试 107
    6.7 小结 110
    第7章 用stub进行粗粒度测试 111
    7.1 stub简介 112
    7.2 用stub测试一个HTTP连接 113
    7.2.1 选择stub的使用方案 115
    7.2.2 用Jetty充当嵌入式服务器 115
    7.3 用stub替换服务器资源 117
    7.3.1 构建第一个stub测试 117
    7.3.2 回顾第一个stub测试 120
    7.4 替换连接 120
    7.4.1 创建自定义的URL协议处理器 121
    7.4.2 创建一个JDK的HttpURLConnection stub 122
    7.4.3 运行测试 123
    7.5 小结 124
    第8章 用mock object进行测试 125
    8.1 mock object简介 125
    8.2 用mock object进行单元测试 126
    8.3 用mock object进行重构 129
    8.3.1 重构示例 130
    8.3.2 重构方面的考虑 131
    8.4 模拟HTTP连接 133
    8.4.1 mock object的定义 133
    8.4.2 示例方法的测试 134
    8.4.3 第一个尝试:简单的方法重构技巧 135
    8.4.4 第二个尝试:使用类工厂进行重构 137
    8.5 把mocks用作特洛伊木马 139
    8.6 mock框架简介 141
    8.6.1 使用EasyMock 142
    8.6.2 使用JMock 146
    8.6.3 使用Mockito 150
    8.7 小结 153
    第9章 容器内测试 154
    9.1 标准单元测试的局限性 154
    9.2 mock object解决方法 155
    9.3 容器内测试的步骤 157
    9.3.1 实现策略 157
    9.3.2 容器内测试框架 158
    9.4 stub、mock object和容器内测试的对比 158
    9.4.1 对stub的评价 159
    9.4.2 对mock object的评价 159
    9.4.3 对容器内测试的评价 160
    9.5 用Arquillian进行测试 161
    9.6 小结 168

    第三部分 运用JUnit 5及其他工具


    第10章 在Maven 3中运行JUnit测试 171
    10.1 建立Maven项目 171
    10.2 使用Maven插件 174
    10.2.1 Maven的Compiler插件 175
    10.2.2 Maven的Surefire插件 176
    10.2.3 用Maven生成HTML格式的JUnit报告 178
    10.3 集成所有 178
    10.4 Maven的挑战性 183
    10.5 小结 183
    第11章 在Gradle 6中运行JUnit测试 184
    11.1 Gradle简介 184
    11.2 创建Gradle项目 186
    11.3 使用Gradle插件 190
    11.4 从头开始创建Gradle项目,再用JUnit 5测试 190
    11.5 比较Gradle和Maven 194
    11.6 小结 195
    第12章 IDE对JUnit 5的支持 196
    12.1 JUnit 5与IntelliJ IDEA集成 197
    12.2 JUnit 5与Eclipse集成 202
    12.3 JUnit 5与NetBeans集成 206
    12.4 JUnit 5与IntelliJ IDEA、Eclipse和NetBeans集成的比较 211
    12.5 小结 211
    第13章 JUnit 5的持续集成 212
    13.1 持续集成测试 212
    13.2 Jenkins简介 214
    13.3 团队实践持续集成 217
    13.4 配置Jenkins 222
    13.5 在CI环境中处理任务 225
    13.6 小结 230

    第四部分 使用现代框架和JUnit 5


    第14章 JUnit 5扩展模型 233
    14.1 JUnit 5扩展模型简介 233
    14.2 创建JUnit 5扩展 234
    14.3 使用可用的扩展点编写JUnit 5测试 237
    14.3.1 将乘客信息持久化到数据库中 237
    14.3.2 检查乘客的专享性 246
    14.4 小结 248
    第15章 表示层测试 249
    15.1 选择测试框架 250
    15.2 HtmlUnit简介 250
    15.3 编写HtmlUnit测试 252
    15.3.1 HTML断言 252
    15.3.2 对特定的Web浏览器进行测试 252
    15.3.3 对多个Web浏览器进行测试 253
    15.3.4 创建独立的测试 254
    15.3.5 测试表单 256
    15.3.6 测试JavaScript 257
    15.4 Selenium简介 261
    15.5 编写Selenium测试 262
    15.5.1 对特定的Web浏览器进行测试 264
    15.5.2 使用Web浏览器测试导航 265
    15.5.3 测试多个Web浏览器 266
    15.5.4 用不同的Web浏览器测试Google搜索和导航 268
    15.5.5 测试网站的身份验证 270
    15.6 HtmlUnit与Selenium的对比 275
    15.7 小结 275
    第16章 Spring应用程序测试 277
    16.1 Spring框架简介 277
    16.2 依赖注入简介 278
    16.3 构建和测试Spring应用程序 283
    16.3.1 以编程方式创建Spring上下文 283
    16.3.2 使用Spring TestContext框架 286
    16.4 为JUnit Jupiter使用SpringExtension 288
    16.5 添加新特性并使用JUnit 5测试 290
    16.6 小结 296
    第17章 Spring Boot应用程序测试 297
    17.1 Spring Boot简介 297
    17.2 用Spring Initializr创建项目 298
    17.3 将Spring应用迁移到Spring Boot中 300
    17.4 为Spring Boot实现特定测试的配置 303
    17.5 在Spring Boot应用中添加和测试新特性 305
    17.6 小结 309
    第18章 REST API测试 311
    18.1 REST应用程序简介 311
    18.2 创建RESTful API来管理实体 312
    18.3 创建RESTful API来管理两个相关实体 319
    18.4 测试RESTful API 326
    18.5 小结 330
    第19章 数据库应用程序测试 331
    19.1 数据库单元测试阻抗不匹配 331
    19.1.1 单元测试必须运行独立的代码 332
    19.1.2 单元测试必须易于编写和运行 332
    19.1.3 单元测试必须快速运行 333
    19.2 测试JDBC应用程序 333
    19.3 测试Spring JDBC应用程序 342
    19.4 测试Hibernate应用程序 349
    19.5 测试Spring Hibernate应用程序 354
    19.6 测试数据库应用程序的方法比较 360
    19.7 小结 361

    第五部分 用JUnit 5开发应用程序


    第20章 用JUnit 5进行测试驱动开发 365
    20.1 TDD的主要概念 365
    20.2 航班管理应用程序 366
    20.3 将航班管理应用程序迁移到TDD 371
    20.4 重构航班管理应用程序 375
    20.5 使用TDD引入新特性 379
    20.5.1 增加一种高级航班 379
    20.5.2 同一名乘客只能添加一次 387
    20.6 小结 390
    第21章 使用JUnit 5进行行为驱动开发 391
    21.1 行为驱动开发简介 391
    21.1.1 一种新特性的引入 392
    21.1.2 从需求分析到验收标准 392
    21.1.3 BDD的优点和挑战性 393
    21.2 使用Cucumber和JUnit 5操作BDD风格 394
    21.2.1 Cucumber简介 395
    21.2.2 将TDD特性迁移到Cucumber中 396
    21.2.3 使用Cucumber增加一个新功能 403
    21.3 使用JBehave和JUnit 5操作BDD风格 410
    21.3.1 JBehave简介 410
    21.3.2 将TDD特性迁移到JBehave中 410
    21.3.3 使用JBehave增加一个新功能 416
    21.4 Cucumber与Jbehave的比较 423
    21.5 小结 423
    第22章 用JUnit 5实现测试金字塔策略 424
    22.1 软件测试的层次 424
    22.2 单元测试:隔离运行的基本组件 425
    22.3 集成测试:单元组合 435
    22.4 系统测试:考查完整的 软件 442
    22.4.1 使用模拟的外部依赖项进行测试 443
    22.4.2 使用部分实现的外部依赖项进行测试 447
    22.4.3 使用接近实现的外部依赖项进行测试 449
    22.5 验收测试:软件满足业务需求 452
    22.6 小结 461
    附录A  Maven 462
    A.1 约定优于配置 462
    A.2 强依赖管理 462
    A.3 Maven的构建生命周期 463
    A.4 基于插件的体系结构 465
    A.5 Maven的项目对象模型 466
    A.6 安装Maven 467
    附录B  Gradle 468
    B.1 安装Gradle 468
    B.2 创建Gradle任务 470
    附录C  IDE 473
    C.1 安装IntelliJ IDEA 473
    C.2 安装Eclipse 474
    C.3 安装NetBeans 475
    附录D  Jenkins 476

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购