编辑推荐

  

ASP.NET Core应用开发(.NET开发经典名著)》特色:
  ◆ 使用ASP.NETCore和开源框架构建强大的跨平台应用程序
  ◆ MVC,构建一个完整的ASP.NETCore应用程序
  ◆ 从项目开始的第一天就开始生成并发布版本,快速部署迭代中的产品
  ◆ 集成Azure支持,获得云服务的扩展能力
  ◆ 在Linux上运行或开发跨平台的解决方案
  ◆ 使用Docker获得一致的开发环境
  ◆ 使用EntityFrameworkCore1.0访问数据
  ◆ 使用更新的Razor视图引擎生成HTML视图
  ◆ 使用身份确保安全性和提供权限管理
  ◆ 使用依赖注入提高可测试性与可维护性
  ◆ 在ASP.NETCore环境中使用和管理JavaScript
  ◆ 使用SASS编写可维护的靓丽CSS
  ◆ 充分利用标签助手和其他可重用组件
  ◆ 设计、组织并重构应用程序,灵活应对变化
  
  
  

内容简介

  

  动手掌握ASP.NETCore从架构到部署的方方面面
  《ASP.NETCore应用开发》通过一个跨平台Web应用程序
  的开发、部署与管理的完整流程,指导你学习ASP.NETCore。你将掌握微软革命性的开源ASP.NETCore技术,并学习如何将MVC、Docker、AzureWebApps、VisualStudio、C#、JavaScript和EntityFramework融汇贯通。通过与一个虚拟的AlpineSkiHouse开发团队并肩工作,你将见证四个全新迭代的完整开发过程。你将看到这个团队是如何架构和设计他们的软件,响应用户的反馈,以及完成开发、测试、部署、维护和重构等各个环节的工作。
  最终,你将了解如何更快、更稳定地创建一流水准的软件。
  三位*微软MVP展示了如何:
  ◆ 使用ASP.NETCore和开源框架构建强大的跨平台应用程序
  ◆ *MVC,构建一个完整的ASP.NETCore应用程序
  ◆ 从项目开始的第一天就开始生成并发布版本,快速部署迭代中的产品
  ◆ 集成Azure支持,获得云服务的扩展能力
  ◆ 在Linux上运行或开发跨平台的解决方案
  ◆ 使用Docker获得一致的开发环境
  ◆ 使用EntityFrameworkCore1.0访问数据
  ◆ 使用更新的Razor视图引擎生成HTML视图
  ◆ 使用身份确保安全性和提供权限管理
  ◆ 使用依赖注入提高可测试性与可维护性
  ◆ 在ASP.NETCore环境中使用和管理JavaScript
  ◆ 使用SASS编写可维护的靓丽CSS
  ◆ 充分利用标签助手和其他可重用组件
  ◆ 设计、组织并重构应用程序,灵活应对变化
  

作者简介

  JamesChambers,五次荣获开发人员技术方向微软MVP称号,现在正在开发运行于Azure和AWS之上的ASP.NETCore和MVC应用程序。他是一位独立咨询师、技术导师、活跃的博客作者,并为多个开源项目贡献自己的力量。

  DavidPaquette,四次荣获微软MVP称号,是一位软件开发人员和独立咨询师。他具有使用.NET构建Web和Windows应用程序的丰富经验,对软件工程领域有深入的了解,同时对提高用户体验颇具热情。

  SimonTimms,一位多次荣获微软MVP称号的社区组织者、博客作家、开发者和独立咨询师。他在技术领域兴趣广泛,从分布式系统到新的JavaScript框架无所不包。他在软件开发和运维上都具备深厚功力,这也使得他的团队热衷于生成、开发服务器部署等方面。

目录

第Ⅰ部分信息软件简介及技术要点分析
第1章信息软件概述3
1.1信息系统基础知识3
1.1.1信息系统组成3
1.1.2信息系统分类4
1.2信息软件开发4
1.2.1软件的生命周期5
1.2.2软件开发过程模型6
1.2.3敏捷开发9
1.3信息软件主流架构及技术12
1.3.1客户端/服务器架构12
1.3.2浏览器/服务器架构14
1.3.3现代互联网技术16
1.4本章小结19
第2章软件测试概述20
2.1软件测试概念20
2.1.1软件测试的定义和对象20
2.1.2软件测试的目的21
2.2软件测试分类22
2.2.1按照开发阶段分类22
2.2.2按测试策略分类24
2.2.3按照测试手段分类25
2.2.4按照测试执行方式分类25
2.2.5基于特定目标的测试分类25
2.3信息软件测试典型应用28
2.3.1基于Web应用软件的测试28
2.3.2基于手机应用软件的测试32
2.3.3基于云应用软件的测试36
2.4信息软件测试策略38
2.4.1测试过程的实施策略38
2.4.2测试用例的设计策略40
2.4.3回归测试策略41
2.5本章小结42
第Ⅱ部分软件测试管理技术
第3章软件测试管理概述45
3.1软件测试管理的主要内容45
3.1.1测试计划管理47
3.1.2测试组织和人员管理49
3.1.3测试文档管理51
3.1.4测试缺陷管理52
3.2软件测试管理工具55
3.2.1HPALM概述56
3.2.2TestLink56
3.3本章小结57
第4章HPALM工具的使用及关键技术58
4.1HPALM简介58
4.1.1HPALM组织架构59
4.1.2HPALM流程59
4.2HPALM初始化设置60
4.2.1启动站点管理60
4.2.2创建域和项目62
4.2.3用户和组的管理65
4.2.4缺陷和用例配置70
4.2.5用例配置74
4.3创建发布树76
4.3.1定义发布树76
4.3.2创建发布77
4.3.3创建周期78
4.4创建测试需求78
4.4.1制订测试需求树规范79
4.4.2创建功能测试需求树80
4.4.3将需求分配到发布和周期83
4.4.4测试需求转换为测试计划84
4.5管理测试计划86
4.5.1创建测试用例88
4.5.2关联需求与测试用例90
4.6执行测试92
4.6.1创建测试集92
4.6.2执行测试集94
4.7缺陷管理97
4.7.1创建并提交缺陷97
4.7.2关联缺陷和测试用例98
4.8报表生成与分析99
4.8.1分析测试执行报表100
4.8.2分析缺陷报表101
4.9本章小结103
第Ⅲ部分信息软件系统功能测试
第5章信息软件系统功能测试概述107
5.1功能测试基础知识107
5.1.1功能测试常见的错误类型107
5.1.2功能测试用例的设计准则108
5.2功能测试自动化109
5.2.1功能测试自动化优缺点109
5.2.2功能自动化测试的主要技术111
5.3典型功能测试工具介绍113
5.3.1HPUFT113
5.3.2Selenium114
5.3.3两种自动化测试工具对比114
5.4本章小结115
第6章HPUFT工具的使用及关键
技术116
6.1HPUFT工具简介116
6.1.1HPUFT基本配置116
6.1.2HPUFT的视图117
6.2HPUFT的工作流程118
6.2.1UFT测试步骤118
6.2.2一个简单的测试项目119
6.2.3HPUFT的相关原理122
6.3测试对象管理123
6.3.1对象识别123
6.3.2对象属性及侦测125
6.3.3HPUFT对象库126
6.3.4对象库管理128
6.4录制模式130
6.4.1模拟录制模式130
6.4.2低级录制模式131
6.4.3洞察录制模式131
6.5操作调用132
6.6检查点技术134
6.6.1检查点简介134
6.6.2标准检查点135
6.6.3文本检查点137
6.7参数化技术138
6.7.1参数化测试步骤139
6.7.2使用外部数据源实现
参数化142
6.8描述性编程技术146
6.8.1描述性编程概述146
6.8.2描述性编程的测试实例147
6.9正则表达式150
6.9.1正则表达式介绍150
6.9.2正则表达式应用152
6.10测试场景恢复技术153
6.10.1创建场景恢复文件154
6.10.2添加场景恢复文件157
6.11函数库管理158
6.11.1函数与子过程158
6.11.2创建函数库159
6.11.3关联函数库并调用函数160
6.12VBScript脚本语言162
6.12.1选择和循环操作163
6.12.2比较操作164
6.12.3算术操作164
6.12.4逻辑操作165
6.12.5常用函数166
6.13脚本的调试与运行168
6.13.1脚本调试技术168
6.13.2使用ALM运行测试脚本169
6.13.3使用TestBatchRunner
运行测试脚本175
6.13.4使用QuickTest.Application
对象运行测试脚本175
6.14查看测试结果176
6.14.1设置结果的存储位置176
6.14.2查看测试运行结果177
6.15本章小结178
第7章HPUFT功能自动化实践180
7.1测试需求分析180
7.2自动化测试框架180
7.2.1自动化测试框架简介180
7.2.2自动化测试框架考虑的
要素181
7.3设计测试用例183
7.3.1登录业务测试用例183
7.3.2订票业务测试用例184
7.3.3传真订单业务测试用例186
7.3.4退出业务测试用例187
7.4开发登录业务脚本187
7.4.1登录脚本录制188
7.4.2设置Action属性188
7.4.3参数化用户信息189
7.4.4登录脚本回放193
7.5开发订票脚本194
7.5.1录制订票脚本194
7.5.2登录操作调用195
7.5.3参数化航班日期196
7.5.4订票脚本回放197
7.6开发传真订单脚本198
7.6.1录制传真订单脚本198
7.6.2完善传真订单脚本200
7.6.3回放传真订单脚本202
7.7退出脚本开发203
7.8测试资源管理203
7.8.1管理对象库203
7.8.2使用HPALM管理测试
资源204
7.9脚本的运行207
7.10本章小结209

前言/序言

  ASP.NETCoreMVC是微软面向.NET开发者的最新的Web框架,它是如今广为人知的ASP.NETMVC框架的下一代,并致力于开启跨平台开发、部署的能力。它广泛利用了各种各样的开源库,当然,它本身也是开源的。ASP.NETCoreMVC帮助开发者独立思考关于业务逻辑、路由、服务以及视图的实现,并提供了一套新的配置和扩展系统。它使用了C#编程语言,以及Razor视图引擎。不管你是一个经验丰富的.NET开发者,还是一个新手,使用ASP.NETCoreMVC来构建项目应该都是不错的开端。
  《ASP.NET Core应用开发(.NET开发经典名著)》展示了一个重构项目的最初几个迭代版本,该项目是由一个虚构公司AlpineSkiHouse的团队重新开发的。每一章都介绍了一些在开发过程中团队所遇到的挑战,以及他们是如何克服这些难关的。除了每章前面的一个小故事之外,《ASP.NET Core应用开发(.NET开发经典名著)》深入介绍了从ASP.NETCoreMVC的特性,到构建、维护和部署应用程序所使用的相关工具。
  除故事片段和关于ASP.NETCoreMVC的技术内容之外,《ASP.NET Core应用开发(.NET开发经典名著)》还讨论了新版的EntityFramework、包管理系统,以及其他在Web开发领域中流行的周边工具。除相关技术内容的介绍外,《ASP.NET Core应用开发(.NET开发经典名著)》也附带了一个项目——正是AlpineSkiHouse的开发者们构建的那个项目。
  《ASP.NET Core应用开发(.NET开发经典名著)》读者对象
  《ASP.NET Core应用开发(.NET开发经典名著)》以一个程序员的视角,贯穿了使用ASP.NETCore开发一个全新应用程序,并将其发布到互联网上的所有必经步骤。不过仍然有相当多的程序员还没有接触过Web开发,或者还停留在Webforms时代,很少接触到如今全新的各种工具。《ASP.NET Core应用开发(.NET开发经典名著)》将帮助他们掌握这些技巧、树立信心来跟上脚步,使用新兴的框架来构建现代应用程序。《ASP.NET Core应用开发(.NET开发经典名著)》将帮助读者探索应用程序的架构,部署并构建适用于云端的应用程序。
  阅读《ASP.NET Core应用开发(.NET开发经典名著)》的前提条件
  《ASP.NET Core应用开发(.NET开发经典名著)》的读者需要拥有中高级的程序开发能力、熟练掌握C#、拥有Web开发的背景知识,并了解VisualStudio的基本功能。如果了解上一个版本的MVC会更有帮助,不过它不是必需的。熟悉使用命令行界面进行工作也是个加分项。在阅读《ASP.NET Core应用开发(.NET开发经典名著)》后,你将有能力构建一个真实的、由关系型数据库驱动的应用程序,并可以将其部署在基于云端的基础架构。
  《ASP.NET Core应用开发(.NET开发经典名著)》可能不适合……
  如果你是经验丰富的高级ASP.NETMVC开发者,始终在密切关注甚至参与了ASP.NETCoreMVC开发的话,那么《ASP.NET Core应用开发(.NET开发经典名著)》可能不太适合你。
  《ASP.NET Core应用开发(.NET开发经典名著)》结构安排
  《ASP.NET Core应用开发(.NET开发经典名著)》创新性地从开发者的视角出发,贯穿了一个完整应用程序开发的各个迭代环节。书中不仅包含了技术内容,也涵盖了如何从错误中吸取教训、根据用户的反馈进行调整,从零开始,逐步构建出一个完整的产品。
  《ASP.NET Core应用开发(.NET开发经典名著)》分为如下四个部分:
  ●第Ⅰ部分:“AlpineSkiHouse”。介绍了一些背景知识,构建了示例应用程序,并引入了贯穿《ASP.NET Core应用开发(.NET开发经典名著)》的所有虚构角色。
  ●第Ⅱ部分:“迭代回顾:千里之行”。关注能够让应用程序运行起来的必要特性,对构建流水线进行配置,使配置实时生效,从而使整个团队都关注到项目进度。
  ●第Ⅲ部分:“迭代回顾:激流勇进”。关注一些核心的特性能够在示例程序的基础上加上所需的业务逻辑。该部分中,我们使用了EntityFrameworkCore来进行数据访问、使用Razor创建视图,还介绍了配置、日志、安全、用户管理,以及依赖注入。
  ●第Ⅳ部分:“迭代回顾:最后冲刺”。介绍了JavaScript、依赖管理,以及在前文介绍的基础上进行构架的内容。
  在附录中包含了一些重要主题,比如测试、重构和扩展能力。
  寻找《ASP.NET Core应用开发(.NET开发经典名著)》最佳切入点
  《ASP.NET Core应用开发(.NET开发经典名著)》中的不同章节涵盖了ASP.NETCore框架中相关的各种技术。根据你的需要,以及你对微软技术栈的掌握程度,你可能会需要重点关注《ASP.NET Core应用开发(.NET开发经典名著)》中某些特定的领域。可以通过如下表格来决定你阅读《ASP.NET Core应用开发(.NET开发经典名著)》的最佳切入点:
  如果你……阅读建议
  是ASP.NETCore开发的新手,或者已经是ASP.NETCore的开发者关注第Ⅰ、第Ⅱ和第Ⅲ部分,或者按照顺序阅读整《ASP.NET Core应用开发(.NET开发经典名著)
  熟悉之前版本的ASP.NET如果你只需要关注核心内容,可以略过前两章,并通读《ASP.NET Core应用开发(.NET开发经典名著)》中的其他章节,以了解新的技术
  对客户端开发感兴趣阅读第Ⅳ部分的第15、16、17章,略读第20章中关于JavaScript服务的介绍
  对跨平台开发感兴趣整《ASP.NET Core应用开发(.NET开发经典名著)》的内容都可应用在跨平台开发中,不过第8、9章的主题特别涉及了该内容
  《ASP.NET Core应用开发(.NET开发经典名著)》中的大部分章节都包括了动手示例,通过它们你可以练习刚刚学到的内容。不论你关注的是哪部分内容,请在你的系统中下载并安装示例应用程序。
  《ASP.NET Core应用开发(.NET开发经典名著)》的约定和特色
  《ASP.NET Core应用开发(.NET开发经典名著)》在介绍内容时使用了一些约定,了解它们可以让阅读变得更易理解。
  ●《ASP.NET Core应用开发(.NET开发经典名著)》中的代码是面向C#程序员的,使用的语法涵盖了HTML、CSS、SCSS和Razor。
  ●在两个按键之间使用加号(+)表示同时按下两个键。比如“按下Alt+Tab”的意思是你需要在按住Alt键的同时,按下Tab键。
  ●在两个或多个菜单项之间的竖线符号(比如文件|关闭),意思是你需要先选择第一个菜单或菜单项,然后再选择下一个,以此类推。
  系统要求
  为了运行《ASP.NET Core应用开发(.NET开发经典名著)》的示例应用程序,你需要如下的软、硬件配置:
  ●.NETCore1.0及以上版本,可以跨平台安装,来自https://dot.net。
  ●选择你的代码编辑器。我们使用的是Windows上的VisualStudio2015(任何一个版本都可以)及以上版本,或者也可以使用Windows/Mac/UbuntuLinux上的VisualStudioCode。
  ●SQLServerLocalDB(包含在Windows中的VisualStudio2015及以上版本中)。对于Linux或者Mac的用户,你需要访问一个位于其他Windows机器或者MicrosoftAzure上的SQLServer数据库。
  ●电脑的处理器至少是1.6GHz。
  ●至少1GB内存。
  ●4GB剩余磁盘空间。
  ●互联网连接(用于下载软件和示例项目)。
  根据你的Windows配置,可能需要本地管理员权限来安装或配置VisualStudio2015。
  下载:示例项目
  《ASP.NET Core应用开发(.NET开发经典名著)》中大部分章节都包含了来自这个示例项目中的代码片段,该项目可以在GitHub上找到:
  https://github.com/AspNetMonsters/AlpineSkiHouse
  按照GitHub上的指示下载并运行该示例代码。
  注意:
  除了示例项目之外,你的系统还需要安装.NETCore1.0及以上的版本。
  勘误表、更新及内容支持
  我们尽了最大的努力来确保《ASP.NET Core应用开发(.NET开发经典名著)》内容的正确性。你可以访问《ASP.NET Core应用开发(.NET开发经典名著)》的更新(以勘误表的形式记录了相关的错误和纠正内容)。
  如果你发现了一个尚未列出的错误,请使用该页面提交错误。
  可以在网站中下载所有的示例代码以及完整的应用程序。
  请注意上述地址并不提供对微软的软、硬件产品的支持。如果需要这些支持。
  期待您的反馈
  在MSPress,您的满意是我们首要的目标,您的反馈是我们最有价值的资产。请通过如下地址告诉我们你对《ASP.NET Core应用开发(.NET开发经典名著)》的看法。
  我们知道你公务繁忙,所以只保留了非常简短的几个问题。你的答案将会直接发送给MSPress的编辑(不需要提供你的个人信息)。非常感谢您的反馈!


其他推荐