语法:
eval( 可执行字符串)
使用举例:
a = 1
b="true"
c="false"
str ="
if a==1 then
puts '输出:#{b}'
else
puts '输出:#{c}'
end
"
eval(str)
这样就输出为:输出:true
2009-03-28 18:04:55
eval( 可执行字符串)
a = 1
b="true"
c="false"
str ="
if a==1 then
puts '输出:#{b}'
else
puts '输出:#{c}'
end
"
eval(str)
这样就输出为:输出:true
2009-01-02 17:05:51
2008-12-31 23:13:51
2008-12-29 13:17:48
2008-12-28 23:31:08
WMI最初于 1998 年作为一个附加组件与 Windows NT 4.0 Service Pack 4 一起发行,是内置在 Windows 2000、Windows XP 和 Windows Server 2003 系列操作系统中核心的管理支持技术。基于由 Distributed Management Task Force (DMTF) 所监督的业界标准,WMI 是一种规范和基础结构,通过它可以访问、配置、管理和监视所有的 — 几乎所有的 Windows 资源。
要掌握 WMI 的强大功能和范围,需要考虑以前(或者现在)如何管理并监视 Windows 工作站和服务器。您可能用过或仍在使用众多的图形化管理工具来管理 Windows 资源 — 例如磁盘、事件日志、文件、文件夹、文件系统、网络组件、操作系统设置、性能数据、打印机、进程、注册表设置、安全性、服务、共享、用户、组等等。
尽管图形化工具提供了一种功能管理解决方案,它们所共有的东西是什么呢?一种答案是,在 WMI 之前,所有的 Windows 图形化管理工具都依赖于 Win32 应用程序编程接口(Application Programming Interfaces,APIs)来访问和管理 Windows 资源。为什么?因为在 WMI 之前,能够以编程方式访问 Windows 资源的惟一方法就是通过 Win32 API。这种情况使 Windows 系统管理员无法通过一种简便的方法利用常见的脚本语言来自动化常用的系统管理任务,因为大多数脚本语言都不能直接调用 Win32 API。通过提供一致的模型和框架,WMI 改变了这种情况 — 通过模型和框架,所有的 Windows 资源均被描述并公开给外界。最好的一点是,系统管理员可以使用 WMI 脚本库创建系统管理脚本,从而管理任何通过 WMI 公开的 Windows 资源!
使用 Windows scrīpt Host 和 Microsoft Visual Basic scrīpting Edition (VBscrīpt),或任何支持 COM 自动化的脚本语言(例如,ActiveState Corporation 的 ActivePerl),可以编写脚本来管理和自动化企业系统
使用ruby和 WMI 来显示内存的一个例子
require 'win32ole'
mgmt = WIN32OLE.connect('winmgmts:\\\\.' + "\\root\\cimv2")
processes = mgmt.InstancesOf('Win32_LogicalMemoryConfiguration')
processes.each do |x|
puts "Total Physical Memory (kb): " + x.TotalPhysicalMemory.to_s
end
2008-12-26 10:23:04
2008-12-14 14:36:31
2008-12-13 17:11:04
2008-12-09 13:34:25
2008-12-08 21:00:33
2008-12-07 17:46:00
2008-12-06 22:59:56
Block是一种可以和方法调用相关联的代码块,有点象参数传递
Block的表达方式:
1) {........}
如:puts {"good morning,baoju"}
2) do .... end
如:
do
puts "hello,jack"
puts "nice to meet you"
end
一般来说只有一行那么使用{},如果有多行那么使用do...end
Block与函数的关联
block 可以和方法的调用相关联,block可以写在方法的后面,如:
greet {puts "hi"}
如果函数有参数,那么block写在参数的后面,如:
greet("jack","morning") {puts "hi"}
使用yield可以把调用block中的代码,如:
def greet
puts "test block"
yield
yield
puts "call block two times"
end
puts greet {puts "hi"}
那么输出为:
test block
hi
hi
call block two times
----------------------------------------------------------
可以传递参数给对yield的调用,如:
def hell()
yield('morning','hxr')
end
puts hell {|m,n| puts "good "+m+","+n}
那么输出为:
good morning,hxr
-------------------------------------
在ruby中会经常使用block来实现迭代器,如
(1..3).each {|i| puts i}
输出为:
1
2
3
2008-12-04 22:48:47
写一个简单的java程序来测试J2SDK是否已安装成功:
public class hello
{
public static void main(String args[])
{
System.out.println("Hello");
}
}
将程序保存为文件名为hello.java的文件。
打开命令提示符窗口,进入到hello.java所在目录,键入下面的命令2008-12-04 22:36:37
2008-11-25 22:35:03
2008-11-25 22:15:22
<input type="button" id="one" name="clickme" value="Click Me">
使用ID属性来操作:
ie.button(:id,"one").click
使用Name属性来操作:
ie.button(:name,"clickme").click
使用value属性来操作
ie.button(:value,"Click Me").click
<input type="image" src="images/doit.gif">
可以使用下面的方法来操作:
ie.button(:src,/doit/).click
2007-11-26 15:50:33
2007-02-11 21:55:31
Object Repository 合并的功能是在qtp9.0时才出现的,这个功能对于测试脚本整体开发具有很大的意义.
在之前的版本如果要使一些常用的步骤变为函数,还必须在同一个object Repository中添加对象,有了这个功能之后,你可以先编写完成测试脚本,然后再挑选一些常用的步骤进行函数化,方便了操作.
下面介绍合并Ojbect Repository的三种方法:
1) 从共用对象库合并到本地对象库
2) 合并两个tsr文件
合并两个tsr文件比较简单,打开resources->Repository Object Manager...,点击tool->object repository merge tool...,弹出的对话框如图五:
点击Ok就合并成功了,期间可能有冲突,这里就不作介绍冲突的解决
3) 在Share文件中添加对象
打开Object Resitory manager...,打开一个要编辑的tsr文件,使成为可编辑状态,打开要添加对象的页面,点击Add Objects 按钮,这时鼠标就会变成手状的模样,点击要添加的控件,这时这个控件的属性就添加到了对象库中了.
如果这个对象在另一个对象库中已经存在,那么也可以打开另外一个对象,选择那个对象,点击鼠标右键,在弹出菜单中点击"复制",再选择目的对象库的目的节点,点击粘贴,这样就把对象复制到另外对象库中去了.
2006-12-22 15:17:37
近日好多朋友装了IE7.0,但是装了之后不能访问QC了,给他们带来了好多麻烦,下面的方法可以解决这个问题
1)登录QC服务器
2)找到start_a.htm文件
这个文件隐藏得比较深,还是在QC目录下搜索这个文件会比较快点.
3)编辑这个文件
打开这个文件,找到变量fMSIE3456,在后面加一句脚本:(ua.lastIndexOf('MSIE 7.0') != -1)
4)OK,可以告诉朋友们,用IE7.0也可以访问QC了
清空Cookie - 联系我们 - 51Testing软件测试网 - 交流论坛 - 空间列表 - 站点存档 - 升级自己的空间
Powered by 51Testing
© 2003-2021
沪ICP备05003035号