|
知识路径: > 测试技术的分类 > Web应用测试 > Web系统测试概述 >
|
相关知识点:3个
|
|
|
|
当你在互联网上冲浪的时候,细心观察一下,不难发现网页的制作技术在不断进步,日新月异。从以往单调的HTML,到Java小程序、Javascript脚本、ActiveX控件的加入,使本来静态的网页变得“动”了起来。滚动字幕、日历、划动鼠标时出现的轨迹等,还有近来许多网页上所使用的FLASH动画,令我们的网络世界越来越精彩。
|
|
|
现在我们来全面体验一下关于网页制作技术的服务端编程开发,也就是Web应用程序的设计。网页计数器、问卷调查系统、BBS论坛、聊天室虚拟社区,相信大家都并不陌生。Web应用程序为网页提供了真正的交互能力。不难想象,如果没有了这些给我们提供极大交互性的Web程序,那么浏览网页也就会变得不再那么有趣了,而对于网站的商业价值也就似乎只能提供像报纸媒体一样的宣传效果,不能互动,不能在线收集用户意见,更别说实现网上的电子商务,在线购物,销售产品了。
|
|
|
|
在网站建设发展的初期,人们全部使用HTML语言设计网页。这些简单的HTML文档被手工编辑完成之后,保存在与Internet相连接的计算机内,任何连入互联网的用户都可以访问其中的信息,这种形式的页面被称作静态页面。
|
|
|
现在,我们不仅需要Web提供所需的信息,还需要提供例如个性化搜索、收发email、进行网上销售、从事电子商务等功能。为实现以上功能,必须使用更新的网络编程技术制作动态网页。所谓动态,指的是按照访问者的不同需要,对访问者输入的信息作出不同的响应的信息。
|
|
|
|
网络开发技术一般指采用脚本语言进行编程的技术。脚本语言具有和传统的编程语言相似的语法结构和风格,并且可以结合HTML语言共同使用。脚本语言与HTML语言具有非常好的兼容性,使用者可以直接在脚本代码中加入HTML标签,或者在HTML标签中加入脚本代码从而更好地实现页面控制。
|
|
|
使用不同技术编写的动态页面也被保存在Web服务器内。当客户端用户向Web服务器发出访问动态页面的请求时,Web服务器将根据用户所访问页面的后缀名确定该页面所使用的网络编程技术,然后把该页面提交给相应的解释引擎;解释引擎扫描整个页面找到特定的定界符,并执行位于定界符内的脚本代码以实现不同的功能,如访问数据库,发送电子邮件,执行算术或逻辑运算等,最后把执行结果返回Web服务器;最终,Web服务器把解释引擎的执行结果连同页面上的HTML内容以及各种客户端脚本一同传送到客户端。
|
|
|
ASP(Active Server Pages,即动态服务器页面)是由微软公司推出的一种网络编程技术。准确地说,ASP不能算作是一种编程语言,因为ASP没有提供自己专门的编程语言,而是允许用户使用包括VBScript, JavaScript等在内的许多已有的脚本语言编写ASP的应用程序。因此,ASP实际上应当是一种脚本语言的服务端编写环境。ASP吸收了当今许多流行的技术,如IIS, Activex, VBScript, ODBC等,是一种发展较为成熟的网络应用程序开发技术。ASP的核心技术是对组件和对象技术的充分支持。通过使用ASP的组件和对象技术,用户可以直接使用ActiveX控件,调用对象方法和属性,以简单的方式实现强大的功能。
|
|
|
JSP(Java Server Pages)是由Sun Microsystem公司于1999年6月推出的新技术,是基于Java Servlet以及整个Java体系的Web开发技术。ASP一般只应用于Windows NT/2000平台,而JSP则可以不加修改地在85%以上的Web Server上运行,其中包括了NT的系统,符合“一次编写,多平台运行“的Java标准,实现平台和服务器的独立性,而且基于JSP技术的应用程序,比基于ASP的应用程序易于维护和管理。
|
|
|
ColdFusion是Allaire公司在1995年推出的产品。它包含一个集成的可视化开发环境,可以极大地简化用户的开发过程。此外,ColdFusion采用一种被称做ColdFusion标识语言(ColdFusion Markup Language, CFML)的技术。CFML技术继承了HTML语言的风格,用户完全可以像使用HTML标签一样,使用CFML标签来完成各种复杂的操作。可以说,只要掌握了各种CFML标签,也就等于掌握了ColdFusion技术的精髓。
|
|
|
文字分析报告语言(Practical Extraction and Report Language, PERL),是现在编写CGI程序最受欢迎的编程工具,它具有强大的字符串处理能力,特别适合用于分割处理客户端Form提交的数据串,而且可以与ColdFusion等多种流行的Web数据库处理软件相结合。使用PERL既可以达到跨服务平台,又能方便地处理和使用数据库,还有一点,PERL是一种由解释器直接解释执行的语言,不同于使用C或VB等需要预编译后才能执行。
|
|
|
超文本预处理器(Hypertext Preprocessor, PHP)在很大程度上综合了PERL、Java和C语言的精华,在语法架构上继承了C语言的风格。PHP是一种自由软件。
|
|
|
|
CGI是一种早期用于Web程序设计的接口标准,也就是说,你只要熟悉这套接口标准,就能使用任何平常你所熟悉的编程语言来编制CGI程序。比如说C、VB、DELPHI等,当然,要使用CGI,也需要相应的Web服务器支持这一标准,常用的Web服务器软件,如著名的Apache, Web-site, Netscape Enterprise Server以及Microsoft的IIS等,都能很好地支持各种CGI程序。
|
|
|
CGI程序与Web服务器的交互主要有两种数据交换方式。
|
|
|
在UNIX或Linux下,是通过标准输入/输出来实现的,因此可以在程序中直接通过标准输入来取得客户端传来的请求和所传递的数据,然后在程序中对数据进行处理。比如说,你需要编制一个留言部的CGI程序,不外乎就是从客户端提交的Form表单中取得用户的名字、电子邮件,以及留言内容,而服务端相应的CGI程序则从标准输入中取得用户所提交的内容,而通过服务器的环境变量,你可以获得大量的客户端资料,如客户端的IP地址、计算机名字、所使用的浏览器,如果需要使用服务器认证功能,环境变量还能为你提供客户端用户的登录名字以及口令等。取得用户提交内容后,进行记录留言的操作,打开数据文件,把留言内容写入文件,然后通过标准输出把“留言成功”的HTML信息输出到客户端。
|
|
|
而在Windows平台下,CGI程序与Web服务器的数据交互则是通过profile文件来进行的,profile的格式如同win.ini的格式一样。当Web服务器接收到客户端的请求数据后,就把它们以key-value的INI文件格式保存至暂存文件以供CGI程序来接收。因此,开发Windows CGI程序的第一步就是对数据文件进行拆解,如果是使用PERL的话,那么这一步可以免除了,因为PerlFor Windows的解释器已为你做好了这一步,你只需要如同在UNIX下一样,把数据作为标准输入来处理就可以了,也就是说,只要在PERL解释器所支持的功能范围内,UNIX下的PERL程序基本上可以不经修改地作为Windows CGI程序移植到Windows平台运行,这是PERL非常受CGI程序员喜爱的原因之一。
|
|
|
|
J2EE的全称是Java2EnterpriseEdition,它是由SUN公司领导,各厂商共同制定,并得到广泛认可的工业标准。业内许多大的应用服务器厂商如IBM、BEA、Oracle等都积极地参与J2EE标准的制定和实施工作。
|
|
|
J2EE是专门为企业应用制定的标准,企业可以用它来编制企业级的应用,它为企业应用提供了数据库存取,交易完整性,可靠消息传递等功能。从公元2000年开始,越来越多的企业把自己的关键应用开始构建在支持J2EE标准的Web应用服务器之上。现在主流的一些J2EE应用服务器都可以支持企业应用所需的稳定性、可用性、安全性、可靠性、可扩展性等。
|
|
|
|
.NET的前身是微软的DNA(Distributed Network Architecture),在2000年的时候被.NET所取代。
|
|
|
.NET以WebServices为核心,全面支持SOAP、UDDI和WSDL,并在底层实现了类似Java虚拟机的CLR(Common Language Runtime)和一套具有3500多个类的.NET基础类库,以支持其开发语言Visual Basic、C#和ASP等,并且在后端支持其数据库SQL Server和Passport,.NET Studio组成了完整的解决方案。
|
|
|
|
Web Services是建立可互操作的分布式应用程序的新平台。Web Services是一场分布式计算模式的跃进,它真正要解决分布式计算的问题。Web Services技术成为企业与企业之间连接的桥梁,为跨企业、跨行业、跨地域的业务提供了技术的实现方法。
|
|
|
Web Services采用XML作为消息交换的格式,利用Internet上的通用传输协议(如HTTP),提供标准的服务接口调用的方法,为客户提供灵活、方便、强大的Web服务。
|
|
|