中图网(原中国图书网):网上书店,尾货特色书店,30万种特价书低至2折!

歡迎光臨中圖網 請 | 注冊
> >>
JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI

包郵 JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI

出版社:電子工業出版社出版時間:2018-05-01
開本: 其他 頁數: 304
中 圖 價:¥57.1(6.4折) 定價  ¥89.0 登錄后可看到會員價
加入購物車 收藏
開年大促, 全場包郵
?新疆、西藏除外
本類五星書更多>

JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI 版權信息

JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI 本書特色

本書從實戰出發,介紹微服務架構所帶來的測試方面的挑戰,以及如何利用新的技術來應對這些挑戰。通過本書,讀者可以學會如何編寫微服務架構下的單元測試、組件測試、集成測試以及契約測試。在此過程中還會用到Arquillian、ShrinkWrap、Pact、Selenium、Docker、Hoverfly 等多個幫助測試的工具和框架。書中涵蓋大量的代碼和樣例,可以幫助讀者快速上手,并在自己的實際工作中應用這些技術。本書適合有一定Java 基礎的開發和測試人員,對使用其他編程語言的開發者也會有一定的幫助。

JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI 內容簡介

本書從實戰出發,介紹微服務架構所帶來的測試方面的挑戰,以及如何利用新的技術來應對這些挑戰。通過本書,讀者可以學會如何編寫微服務架構下的單元測試、組件測試、集成測試以及契約測試。在此過程中還會用到Arquillian、ShrinkWrap、Pact、Selenium、Docker、Hoverfly 等多個幫助測試的工具和框架。書中涵蓋大量的代碼和樣例,可以幫助讀者快速上手,并在自己的實際工作中應用這些技術。本書適合有一定Java 基礎的開發和測試人員,對使用其他編程語言的開發者也會有一定的幫助。

JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI 目錄

第1章 微服務概述1
1.1 什么是微服務,為什么要使用微服務2
1.1.1 為什么要使用微服務 3
1.1.2 什么是微服務 5
1.1.3 持續集成、持續部署和Docker 6
1.2 微服務網絡及其功能 7
1.2.1 微服務網絡 7
1.2.2 微服務特性 8
1.3 微服務架構 9
1.3.1 資源組件 10
1.3.2 業務領域組件 10
1.3.3 遠程資源組件 11
1.3.4 持久化組件 11
1.4 微服務單元測試 12
1.4.1 孤立型單元測試 12
1.4.2 聯合型單元測試 12
總結 13
第2章 測試下的應用14
2.1 準備開始 15
2.2 準備工作 16
2.2.1 Java Development Kit 16
2.2.2 構建工具 17
2.2.3 環境變量 17
2.2.4 集成開發環境(IDE) 18
2.3 架構 18
2.3.1 游戲服務 19
2.3.2 評論服務 22
2.3.3 視頻服務 24
2.3.4 聚合服務 26
2.3.5 整體架構 27
2.4 應用設計模式 28
2.4.1 解構 28
2.4.2 ECB 模式 38
2.4.3 其他模式 40
2.5 設計決策 42
總結 42
第3章 微服務單元測試44
3.1 單元測試技術 44
3.1.1 聯合型單元測試 45
3.1.2 測試替身 46
3.1.3 孤立型單元測試 48
3.1.4 微服務的單元測試 49
3.2 工具 51
3.2.1 JUnit 51
3.2.2 AssertJ 52
3.2.3 Mockito 53
3.2.4 構建腳本的修改 54
3.3 編寫Gamer應用的單元測試 55
3.3.1 YouTubeVideoLinkCreator 測試 55
3.3.2 YouTubeLink 測試 56
3.3.3 Games 測試 58
3.3.4 GamesService 測試 60
3.3.5 GamesResource 測試 63
練習 68
總結 68
第4章 微服務組件測試69
4.1 Arquillian測試框架 70
4.2 @RunWith(Arquillian.class)注解72
4.3 ShrinkWrap 工具類 75
4.3.1 利用ShrinkWrap 構建歸檔文件 76
4.3.2 給ShrinkWrap 歸檔文件增加內容 77
4.3.3 添加資源 79
4.3.4 增加庫和依賴 80
4.3.5 利用Maven 解析器增加復雜依賴 80
4.3.6 增加服務實現 82
4.4 寫一次代碼,然后復用 83
4.5 構建腳本的修改 84
4.5.1 定義Maven 依賴 85
4.5.2 定義Gradle 依賴 86
4.6 覆蓋Arquillian的默認配置 87
4.6.1 容器定義 89
4.6.2 指定容器屬性 89
4.7 使用Arquillian REST擴展 90
4.7.1 Arquillian REST 客戶端擴展 90
4.7.2 Warp REST 擴展91
4.8 使用Arquillian測試Spring應用 93
4.8.1 Arquillian Spring 框架擴展 94
4.8.2 測試Spring Boot 應用 96
4.9 更復雜的Arquillian測試 98
4.9.1 測試遠程組件 98
4.9.2 測試資源組件 101
4.9.3 測試領域組件 103
4.9.4 測試持久化組件 103
練習 106
總結 106
第5章 微服務集成測試108
5.1 微服務架構下的集成測試 109
5.1.1 網關組件層 110
5.1.2 數據映射器和倉庫 111
5.2 使用Arquillian持久化擴展進行持久化測試 111
5.2.1 描述式方法 114
5.2.2 過程式方法 116
5.2.3 使用NoSQLUnit 進行持久化測試 121
5.2.4 使用Arquillian 多部署的持久化測試 125
5.2.5 使用Arquillian 序列的持久化測試 126
5.2.6 構建腳本的修改 127
5.3 Gamer應用的集成測試 128
5.3.1 測試Comments 類 128
5.3.2 測試CommentsGateway 類 131
練習 137
總結 137
第6章 契約測試138
6.1 理解契約 138
6.1.1 契約和單體應用 139
6.1.2 契約和微服務應用 140
6.1.3 使用集成測試進行驗證 145
6.1.4 什么是契約測試 146
6.1.5 誰負責契約 146
6.2 工具 149
6.2.1 Pact 150
6.2.2 JVM 語言中的Pact 152
6.2.3 利用Algeron 將Pact JVM 與Arquillian 生態系統集成 161
6.3 構建腳本的修改 168
6.3.1 使用Pact JVM 進行契約測試 168
6.3.2 使用Arquillian Algeron 進行契約測試168
6.4 為Gamer應用編寫消費者驅動的契約測試 170
6.4.1 評論服務的消費者端 170
6.4.2 評論服務的生產者端 173
6.5 契約類型總結 175
練習 176
總結 176
第7章 端到端測試177
7.1 端到端測試在整個測試體系中的位置 178
7.2 端到端測試技術 178
7.2.1 垂直測試 179
7.2.2 水平測試 179
7.3 端到端測試工具介紹 180
7.3.1 Arquillian Cube 180
7.3.2 Arquillian Drone 180
7.3.3 Arquillian Graphene 2 181
7.3.4 JMeter 181
7.3.5 Cukes in Space 181
7.4 端到端測試樣例 181
7.4.1 構建微服務 182
7.4.2 增加構建依賴和配置 182
7.4.3 給測試增加@Deployment 注解和@TargetsContainer 注解 189
7.4.4 跨域資源共享 191
7.4.5 使用@ClassRule 處理混合環境 192
7.4.6 使用@OperateOnDeployment 注解操作部署 197
7.4.7 引入@Drone、頁面對象、@Location 和WebDriver 198
7.4.8 在測試中操作頁面對象 200
7.4.9 運行測試 202
練習 203
總結 203
第8章 Docker和測試 204
8.1 Docker生態系統下的工具 205
8.1.1 Docker 205
8.1.2 Docker Machine 207
8.1.3 Docker Compose 208
8.2 Arquillian Cube 210
8.2.1 設置Arquillian Cube 211
8.2.2 編寫容器測試 214
8.2.3 編寫集成測試 217
8.2.4 編寫端到端測試 221
8.3 REST API 224
8.4 Arquillian Drone和Graphene 225
8.4.1 Arquillian Cube 和Arquillian Drone 的集成 225
8.4.2 Arquillian Cube 和Arquillian Graphene 的集成 228
8.5 并行測試 230
8.6 Arquillian Cube和Algeron 231
8.7 使用容器對象模式 233
8.8 部署測試和Kubernetes 240
8.9 構建腳本的修改 245
8.9.1 Arquillian Cube Docker 245
8.9.2 Arquillian Cube Docker JUnit 規則246
8.9.3 Arquillian Cube Kubernetes 246
8.9.4 Arquillian Cube OpenShift 247
8.10 測試視頻服務的Dockerfile 247
練習 249
總結 249
第9章 服務虛擬化 250
9.1 什么是服務虛擬化 250
9.1.1 為什么要使用服務虛擬化 251
9.1.2 什么時候使用服務虛擬化 252
9.2 使用Hoverfly模擬服務響應 253
9.2.1 Hoverfly 模式 253
9.2.2 JUnit Hoverfly 255
9.2.3 配置Hoverfly .257
9.3 構建腳本的修改 258
9.4 對Gamer應用使用服務虛擬化 258
總結 260
第10章 微服務下的持續交付 262
10.1 什么是持續交付 263
10.2 微服務架構和持續交付 264
10.3 持續交付的編排 266
10.3.1 使用Jenkins 267
10.3.2 Jenkins 流水線 267
10.3.3 確定性部署 271
10.4 Jenkins 272
10.4.1 定義一個流水線 276
10.4.2 Jenkins 流水線示例 278
總結 280
附錄A 使用Arquillian Chameleon屏蔽不同類型的容器281
展開全部

JAVA微服務測試:基于ARQUILLIAN、HOVERFLY.ASSERTJ.JUNIT.SELENIUM與MOCKI 作者簡介

Alex Soto Buen 是一位 Java 大師,也是一位在Red Hat 工作的軟件工程師,其主要研發提升測試體驗的工具。他十分喜愛 Java、軟件自動化,并且深信開源軟件。Alex 是NoSQLUnit 項目的創建者以及 JSR374(JSON 處理的Java API)專家組的一員,并且是一位國際講師。Andy Gumbrecht 是 Tomitribe 的高級軟件工程師。從12 歲起他就對任何和計算機相關的事情感興趣,并在那時幸運地擁有了一臺高達 1KB 內存的計算機Sinclair ZX81。那時候許多早期的程序示例都是表單上的二進制碼,需要人工手動輸入計算機中。這十分容易出錯,因此Andy 很快就找到了他的兄弟John,讓他作為自己的測試者來保證輸入的正確性。這也是他第一次意識到測試代碼的重要性。接觸機器碼和BASIC 使得Andy 在代碼優化方面的能力持續提升。在成為英國軍隊的皇家工程師之后不久,他回到德國的大學繼續深造。之后他進入 PROVOXSytemplanung GmbH 實習并在那里工作了很多年,主要開發政府軟件。Andy 從 2007 年開始進行開源軟件的研發并在 2009 年加入了 Apache OpenEJB和Apache TomEE Application Server 項目,現在他已經成為項目管理委員會的一員。Jason Porter在多個領域工作過,使用過Java、PHP、Ruby、C# 以及JavaScript。他認為自己主要是一名后端開發者,但是其實他擁有應對任何編程領域問題的能力。在Red Hat,Jason 參與過多個不同的框架、網站和集成工作。他在美國和世界其他地方做過的演講可以幫助人們更好地理解編程的概念或新的技術。
北京大學碩士研究生,曾在阿里技術保障部擔任系統工程師,后加入靈雀云從事容器云平臺調度系統和容器網絡相關方向的開發,專注于分布式系統和機器學習的研究和動向;譯有《Mesos:大數據資源調度與大規模容器運行最佳實踐》、《GAN:實戰生成對抗網絡》等書。

商品評論(0條)
暫無評論……
書友推薦
本類暢銷
編輯推薦
返回頂部
中圖網
在線客服
主站蜘蛛池模板: 潍坊青州古城旅游景点攻略_青州酒店美食推荐-青州旅游网 | 花纹铝板,合金铝卷板,阴极铝板-济南恒诚铝业有限公司 | 冷却塔减速机器_冷却塔皮带箱维修厂家_凉水塔风机电机更换-广东康明冷却塔厂家 | ★店家乐|服装销售管理软件|服装店收银系统|内衣店鞋店进销存软件|连锁店管理软件|收银软件手机版|会员管理系统-手机版,云版,App | 稳尚教育加盟-打造高考志愿填报平台_新高考志愿填报加盟_学业生涯规划加盟 | hdpe土工膜-防渗膜-复合土工膜-长丝土工布价格-厂家直销「恒阳新材料」-山东恒阳新材料有限公司 ETFE膜结构_PTFE膜结构_空间钢结构_膜结构_张拉膜_浙江萬豪空间结构集团有限公司 | 干粉砂浆设备-干粉砂浆生产线-干混-石膏-保温砂浆设备生产线-腻子粉设备厂家-国恒机械 | 振动时效_振动时效仪_超声波冲击设备-济南驰奥机电设备有限公司 北京宣传片拍摄_产品宣传片拍摄_宣传片制作公司-现像传媒 | 新能源汽车电机定转子合装机 - 电机维修设备 - 睿望达 | 列管冷凝器,刮板蒸发器,外盘管反应釜厂家-无锡曼旺化工设备有限公司 | 山东商品混凝土搅拌楼-环保型搅拌站-拌合站-分体仓-搅拌机厂家-天宇 | 西门子伺服控制器维修-伺服驱动放大器-828D数控机床维修-上海涌迪 | 升降机-高空作业车租赁-蜘蛛车-曲臂式伸缩臂剪叉式液压升降平台-脚手架-【普雷斯特公司厂家】 | 山东PE给水管厂家,山东双壁波纹管,山东钢带增强波纹管,山东PE穿线管,山东PE农田灌溉管,山东MPP电力保护套管-山东德诺塑业有限公司 | 精密模具制造,注塑加工,吹塑和吹瓶加工,EPS泡沫包装生产 - 济南兴田塑胶有限公司 | 河北码上网络科技|邯郸小程序开发|邯郸微信开发|邯郸网站建设 | 电销卡 防封电销卡 不封号电销卡 电话销售卡 白名单电销卡 电销系统 外呼系统 | 接地电阻测试仪[厂家直销]_电缆故障测试仪[精准定位]_耐压测试仪-武汉南电至诚电力设备 | 江苏大隆凯科技有限公司| 带压开孔_带压堵漏_带压封堵-菏泽金升管道工程有限公司 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 流水线电子称-钰恒-上下限报警电子秤-上海宿衡实业有限公司 | 螺旋压榨机-刮泥机-潜水搅拌机-电动泥斗-潜水推流器-南京格林兰环保设备有限公司 | 医学动画公司-制作3d医学动画视频-医疗医学演示动画制作-医学三维动画制作公司 | 海外整合营销-独立站营销-社交媒体运营_广州甲壳虫跨境网络服务 焊管生产线_焊管机组_轧辊模具_焊管设备_焊管设备厂家_石家庄翔昱机械 | 板式换网器_柱式换网器_自动换网器-郑州海科熔体泵有限公司 | 欧必特空气能-商用空气能热水工程,空气能热水器,超低温空气源热泵生产厂家-湖南欧必特空气能公司 | 上海公众号开发-公众号代运营公司-做公众号的公司企业服务商-咏熠软件 | 动物麻醉机-数显脑立体定位仪-北京易则佳科技有限公司 | 山东氧化铁红,山东铁红-淄博科瑞化工有限公司 | 天空彩票天下彩,天空彩天空彩票免费资料,天空彩票与你同行开奖,天下彩正版资料大全 | 引领中高档酒店加盟_含舍·美素酒店品牌官网 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 团建-拓展-拓展培训-拓展训练-户外拓展训练基地[无锡劲途] | 广州二手电缆线回收,旧电缆回收,广州铜线回收-广东益福电缆线回收公司 | 广州工业氧气-工业氩气-工业氮气-二氧化碳-广州市番禺区得力气体经营部 | 保镖公司-私人保镖-深圳保镖公司【环宇兄弟保镖】 | 游戏版号转让_游戏资质出售_游戏公司转让-【八九买卖网】 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 | 品牌策划-品牌设计-济南之式传媒广告有限公司官网-提供品牌整合丨影视创意丨公关活动丨数字营销丨自媒体运营丨数字营销 | 纸箱抗压机,拉力机,脂肪测定仪,定氮仪-山东德瑞克仪器有限公司 |