脚本对于大多数程序员来说应该不陌生了吧。今天我们就一起来了解一下,在使用java编程开发语言编写API脚本的时候都需要注意哪些问题。
Java脚本化API为谁准备? 脚本语言的一些有用的特性是: 方便:大多数脚本语言都是动态类型的。
您通常可以创建新的变量,而不声明变量类型,并且您可以重用变量来存储不同类型的对象。此外,脚本语言往往会自动执行许多类型的转换,例如,必要时将数字10转换为“10”。 开发快速原型:您可以避免编辑编译运行周期,只使用“编辑运行”! 应用扩展/定制:你可以“具体化”的部分应用程序,例如一些配置脚本,业务逻辑/规则和财务应用中的数学表达式。 为应用添加命令行模式,用于调试、运行时配置/部署时间。
现在大多数应用程序都有一个基于Web的GUI配置工具。但是系统管理员/部署人员常常喜欢命令行工具。一个“标准”的脚本语言可以用来实现这个目的,而不是发明特设的脚本语言。
Java脚本API是一种独立于框架的脚本语言,使用来自于Java代码的脚本引擎。通过java脚本API,可以使用Java语言编写定制/可扩展的应用程序并将自定义脚本语言选择留给终用户。Java应用程序开发者不需要在开发过程中选择扩展语言。
如果你使用JSR-223API来编写应用,那么你的用户可以使用任何JSR-223兼容的脚本语言。 脚本包 Java脚本功能是在javax.script包中。这是一个比较小的,简单的API。
脚本的出发点是ScriptEngineManager类。一个ScriptEngineManager对象可以通过jar文件的服务发现机制发现脚本引擎。它也可以实例化脚本引擎来解释使用特定的脚本语言编写的脚本。 脚本变量 当你的java应用程序嵌入脚本引擎和脚本,你可能希望将您的应用程序对象为全局变量暴露于脚本中。
这个例子演示了如何将您的应用程序对象作为全局变量暴露于脚本中。我们在应用程序中创建一个java.io.File对象作为全局变量,名称是file。大理电脑培训http://www.kmbdqn.cn/发现该脚本可以访问变量,例如,它可以调用它的公共方法。注意访问java对象、领域和方法的语法依赖于脚本语言。
Javascript支持“自然”的类似java的语法。
学习内容大致可分为以下10点,但也要跟上技术发展的步伐,实时更新。1、Java语言Java语言体系比较庞大,包括多个模块。
从WEB项目应用角度讲有JSP、Servlet、JDBC、JavaBean(Application)四部分技术。
(1)、Java Database Connectivity(JDBC)技术 在Java Web应用开发中,数据库管理系统(RDBMS)的使用是不可缺少的。JDBC(Java Database Connectivity) 是一种用于执行SQL 语句的 Java API。它由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的API,使他们能够用纯Java API 来编写数据库应用程序。
简单地说,JDBC 可做三件事:l 与数据库建立连接,l 发送SQL 语句,l 处理结果。 (2)、Servlet技术Servlet是运行在服务器端的程序,可以被认为是服务器端的applet。servlet被Web服务器(例如Tomcat)加载和执行,就如同applet被浏览器加载和执行一样。
servlet从客户端(通过Web服务器)接收请求,执行某种操作,然后返回结果。 Servlet的主要优点包括l Servlet是持久的。servlet只需Web服务器加载一次,而且可以在不同请求之间保持服务(例如一次数据库连接)。
l Servlet是与平台无关的。如前所述,servlet是用Java编写的,它自然也继承了Java的平台无关性。l Servlet是可扩展的。
由于servlet是用Java编写的,它就具备了Java所能带来的所有优点。Java是健壮的、面向对象的编程语言,它很容易扩展以适应你的需求。servlet自然也具备了这些特征。l Servlet是安全的。
从外界调用一个servlet的惟一方法就是通过Web服务器。这提供了高水平的安全性保障,尤其是在你的Web服务器有防火墙保护的时候。l Servlet可以在多种多样的客户机上使用。由于servlet是用Java编写的,所以你可以很方便地在HTML中使用它们。
(3)、JavaServer Pages(JSP)技术JSP是从Servlet上分离出来的一小部分,简化了开发,加强了界面设计。JSP定位在交互网页的开发。运用Java语法,但功能较Servlet弱了很多,并且高级开发中只充当用户界面部分。JSP容器收到客户端发出的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式响应给客户端。
其中程序片段可以是:操作数据库、重新定向网页以及发送 E-Mail 等等,这些都是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP 称为Server-Side Language。 JavaServer Pages的主要优点包括●一次编写,各处执行(Write Once, Run Anywhere)特性作为Java 平台的一部分,JavaServer Pages 技术拥有Java语言“一次编写,各处执行”的特点。
随着越来越多的供货商将JavaServer Pages 技术添加到他们的产品中,您可以针对自己公司的需求,做出审慎评估后,选择符合公司成本及规模的服务器,假若未来的需求有所变更时,更换服务器平台并不影响之前所投下的成本、人力所开发的应用程序。● 搭配可重复使用的组件JavaServer Pages技术可依赖于重复使用跨平台的组件(如:JavaBean或Enterprise JavaBean组件)来执行更复杂的运算、数据处理。开发人员能够共享开发完成的组件,或者能够加强这些组件的功能,让更多用户或是客户团体使用。
基于善加利用组件的方法,可以加快整体开发过程,也大大降低公司的开发成本和人力。● 采用标签化页面开发Web 网页开发人员不一定都是熟悉Java 语言的程序员。因此,JSP 技术能够将许多功能封装起来,成为一个自定义的标签,这些功能是完全根据XML 的标准来制订的,即JSP 技术中的标签库(Tag Library)。因此,Web 页面开发人员可以运用自定义好的标签来达成工作需求,而无须再写复杂的Java 语法,让Web 页面开发人员亦能快速开发出一动态内容网页。
今后,第三方开发人员和其他人员可以为常用功能建立自己的标签库,让Web 网页开发人员能够使用熟悉的开发工具,如同HTML 一样的标签语法来执行特定功能的工作。● N-tier 企业应用架构的支持有鉴于网际网络的发展,为因应未来服务越来越繁杂的要求,且不再受地域的限制,因此,必须放弃以往Client-Server的Two-tier 架构,进而转向更具威力、弹性的分散性对象系统。由于JavaServer Page 技术是Java 2 Platform Enterprise Edition (J2EE)集成中的一部分,它主要是负责前端显示经过复杂运算后之结果内容,而分散性的对象系统则是主要依赖EJB ( Enterprise JavaBean )和JNDI ( Java Naming and Directory Interface )构建而成。
(4)、JavaBean(Application)应用组件技术 Application是Java应用程序,在WEB项目和一些开发中主要应用JavaBean。它就是Application的一部分,逻辑运算能力很强,能极大的发挥Java语言的优点。JavaBean 被称为是Java 组件技术的核心。JavaBean 的结构必须满足一定的命名约定。
JavaBean能提供常用功能并且可以重复使用,这使得开发人员可以把某些关键功能和核心算法提取出来封装成为一个组件对象,这样就增加了代码的重用率和系统的安全性。 高级的WEB项目会应用到以上所有技术,它们之间联合使用和协作开发会提高开发的效率和系统的性能。 2、面向对象分析设计思想Java语言是完全面向对象的语言,所以在项目设计时会有很大的帮助,在设计时应尽量舍弃以往的面向过程的设计方式。
在分析项目业务关系的时候,应用一些UML(Unified Modeling Language)图,例如常用的用例图(use case diagram),类图(class diagram),时序图(sequence diagram)等等,会有很大的帮助,这样能尽快找出业务逻辑主要面对的对象,然后对每个对象进行行为划分,最后再实现对象之间的集成和通信。3、设计模式和框架结构 Java从语言角度来讲不是很难,但是从整体设计角度来讲我们还需要了解一些高级应用框架。如果要设计一个良好的框架结构,单单只掌握Java语言远远不够。这就涉及到一个设计模式,还有和设计模式相关的一些知识。 设计模式在Java。
如何使用LoadRunner开发JAVA Vuser众所周知,Java语言是一门非常适合网络开发的语言,用 Java语言进行性能测试脚本开发将会大大提高测试开发效率。LoadRunner中提供了对Java虚拟用户的支持。
Java虚拟用户依托于JDK,这大大扩充了LoadRunner的脚本开发功能。
测试人员既可以用Java虚拟用户来测试基于Java的应用系统的性能,又可以使用Java语言的强大开发脚本功能来测试其他平台的系统性能。认识Java虚拟用户Java虚拟用户协议Java虚拟用户脚本主要有Java Vuser、Corba-Java、RMI-Java、EJB等类型。这些类型的虚拟用户脚本均可以用Java语言来手工编写。下面将对各类Java虚拟用户简单地进行介绍。
Java VuserJava Vuser是自定义的Java虚拟用户脚本,脚本中可以使用标准的Java语言。这种虚拟用户不可以录制,只能采用纯手工编写,其适用范围和C Vuser一样,非常广泛。Java Vuser的开发方法。
Corba-JavaCorba-Java类型的虚拟用户主要用来测试用Java编写的、使用Corba应用程序或小程序的性能,用户可以先运行VuGen录制的脚本,然后使用标准的Java库函数以及LoadRunner特有的Java方法来增强该脚本。RMI-JavaRMI-Java 虚拟用户适用于测试RMI(远程方法调用)Java应用程序或小程序。选择RMI-Java 用户进行录制,VuGen可以创建对应的Java脚本。
完成录制后,可以使用JDK或自定义类,通过标准的Java代码来增强或修改脚本,还可以通过特定于LoadRunner的Java方法增强该脚本。EJBEJB虚拟用户专门用于测试Enterprise Java Beans对象。采用EJB协议,VuGen会自动创建脚本以测试EJB功能,无需录制或编程,这和标准的Java Vuser明显不同。
在使用EJB协议类型的虚拟用户生成脚本前,需要指定 JNDI属性和关于应用程序服务器的其他信息。LoadRunner的EJB检测器首先扫描应用程序服务器并确定哪些EJB可用;接着选择要测试的 EJB,LoadRunner将生成要测试每个EJB方法的脚本,并为每个方法创建事务,便于度量其性能并找出问题。需要注意的是,创建EJB虚拟用户测试脚本必须在应用程序服务器主机上安装LoadRunner EJB检测器,而且检测器必须处于活动状态。EJB检测器是一个独立的代理程序,必须将其安装在要扫描查找EJB的每一台计算机上。
安装EJB检测器前,计算机上还需要安装有效的JDK环境。本书中将以Java Vuser为例来讲解Java虚拟用户的开发和使用方法。Corba-Java、RMI-Java、EJB、Jacada Vuser等类型的虚拟用户使用方法可以参考LoadRunner的联机帮助手册,但是其手工脚本的开发方法与Java Vuser是一样的。在“新建虚拟用户”对话框中的“自定义”或“全部协议”类别下选择“Java Vuser”即可创建空的Java Vuser脚本,如图7-1所示。
在自动生成的脚本中,vuser_init、 vuser_end部分没有任何内容,Actions部分生成的脚本如图7-2所示。对于Java类型的虚拟用户,可以编辑Actions类,而 init、end部分则不可以进行编辑。在Actions类中,有三个方法init、action和end,通常在init方法中编写初始化代码、在 action方法中编写业务流程、在end方法中编写诸如释放资源之类的代码。Java Vuser脚本中可以放置任何标准Java代码,这也是Java虚拟用户的魅力所在。
Java虚拟用户适用范围LoadRunner完全支持C语言,原则上可以用C语言实现任何想要录制的功能。但是C语言的特点决定了这样做是不现实的:一是性能测试脚本开发成本非常高;二是很多企业的测试人员开发基础不好。因此,性能测试开发多选用C++、C#、Java等面向对象语言——因为这类语言既有成熟的集成开发工具,又有庞大的类库来支撑,测试脚本开发速度会更快。
下一章将重点介绍如何用.NET来开发性能测试脚本。Java虚拟用户适用范围非常广,归纳起来主要有两大类:一类是不太适合录制的业务功能点的性能测试,例如网页上Http文件的下载过程、视频播放等;另一类是基于Java语言开发的应用系统的性能测试,这类应用更适合采用Java虚拟用户进行测试。用Java Vuser实现无法录制的测试需求这类测试需求往往关注于对服务器产生的压力,重点测试在一定压力下服务器的负载情况,为评估、部署、调优系统提供参考。
在这类测试工作中,Java的作用仅是一门语言,用于辅助测试人员完成测试程序的开发。在性能测试工作中,不能录制的测试点很多,主要有以下几类:含有控件的Web应用在Web应用中,很多包含一些插件的浏览器应用经常不能录制。这类应用往往涉及很多协议,因此录制起来不是特别方便。对于这类应用,可以用Java语言调用其功能来完成用户行为的模拟。
一些和媒体播放、文件下载等相关的应用媒体播放或文件下载等过程的录制往往不容易控制,如果是应用基于P2P的协议,则会更加复杂。因此,这类测试只能由测试人员开发虚拟用户脚本来完成。用Java Vuser测试基于Java语言的应用系统性能相比前面,基于Java语言开发的应用系统,在性能测试中采用Java虚拟用户更显得“门当户对”。
这类虚拟用户主要应用在下面两类测试中:核心算法或业务的执行效率对银行、电信等大型的基于J2EE的架构应用系统中,开发阶段的性能测试是必不可少的。为了降低后期遇到性能问题的风险,往往在开发阶段进行一些核心业务的性能测试。这些核心业务或要求较高的执行效率,或者要求支持较多用户的并发。因此,可以利用Java Vuser来测试这些业务的执行效率。
Java应用中不能录制的业务模块很多时候,一些J2EE架构的业务系统用 LoadRunner录制起来不是特别方便,例如一些Java智能客户端程序。这时可以手工编写测试代码,完成测试任务。与非Java应用相比,Java 应用中不能录制的业务功能更适合采用Java虚拟用户,因为可以直接对一些方法进行调用。
由于Java语言的强大功能,Java虚拟用户的应用远不止上面这些,读者可以慢慢挖掘。
不是很明白你的需求 java不适合写脚本的,另外,是在linux还是windows平台上跑的? linux下写脚本的语言很多,shell、pyhton、perl等等,都很好用的。
学习编程最常用的两门语言是C语言和Java语言,除此之外还要了解一点汇编知识。学好这三门语言,其他语言就万变不离其中了。
C语言在百度百科上的解释http://baike.baidu.com/view/1219.htmJava语言在百度百科上的解释http://baike.baidu.com/view/229611.htm汇编语言在百度百科上的解释http://baike.baidu.com/view/49.htm我对这三门语言的理解:C语言是一种介于高级计算机语言和汇编语言之间的语言,并且结合了两者的优点,通用性非常广泛。
很多常见的软件,包括一些大型的游戏,都是用C编出来的。值得一提的是,操作系统也有很多地方用到C语言。Java语言是高级计算机语言。在制作一些小游戏上会有很多应用,高级语言编写大型游戏还是有很多限制的。
Java最强的优势在于制作网页,制作网页上用到是Java Script语言(Java脚本语言),是对Java 的发展。学习Java语言最关键的部分就是面向对象程序设计的概念。对这个概念的掌握将有助于加快编程学习的进步。
汇编语言是相比C语言更为低级的语言。它在很多方面是对硬件编程。学习它往往还要了解更多计算机组成原理方面的知识。
作为初学者,依次学好C语言、Java、汇编,是一个比较好的学习流程。关于编程工具:C语言要用到Visual C++ 6.0,简称为VC。Java语言初学要用到JCreator,如果要做一个大项目(可视化软件或游戏)用Netbeans汇编的话实际上用记事本编都可以啦,要正规编程软件的话,用MASM5.0吧。
这些编程软件专业点的说法叫开发环境或者集成开发环境。
已知它支持 C 语言,上次我试了一下 hello load runner!,它把我的代码直接当成 C语言编译了,这个链接问同一个问题,有人说:Is the QTP also installed on the same machine? 我不是很明白 QTP 是什么,也没有直接的回答。