在JScript中使用WMI

上一篇 / 下一篇  2007-09-29 11:11:12 / 个人分类:JScript

Jscrīpt中使用WMI51Testing软件测试网 T`|i&j5tcy;F

 51Testing软件测试网(dEu"PV;N;I:k ?

陈能技

1v4C QQo0

2007-9-29

*Ov$BVs k0

 51Testing软件测试网@{Yba0S S

WMI,全称Windows Management Instrumentation,即Windows管理规范。通过WMI,我们可以访问和管理几乎所有Windows资源,包括:性能数据、文件系统、注册表、服务、操作系统设置、事件日志、进程等等。51Testing软件测试网oVu NJ7o+O!H

 51Testing软件测试网 Yae I.l:i5n4V o#c

Jscrīpt通过创建winmgmts对象可以获取WMI的任何管理对象的实例。例如,下面脚本获取的是内存管理对象:51Testing软件测试网,^.c2ih;{ {:p L`6Ipo

Var Win32Memory =51Testing软件测试网/~ o7llq$c W+~T

GetObject("winmgmts:").InstancesOf("Win32_LogicalMemoeryConfiguration");

#g_^Yr X!Jtg U0

for(e= new Enumerator(Win32Memory);!e.atEnd();e.moveNext())51Testing软件测试网j,X+kD,s"_tOa

Wscrīpt.Echo(e.item().TotalPhysicalMemory);51Testing软件测试网 _$c4r#^3G v8Jl+U

 

5c NqN `kU0

测试过程中,我们经常需要监视windows的资源使用情况,例如,看服务的状态如何,性能表现如何等等,Jscrīpt透过WMI的访问,可以提供我们简单获取这些信息的方法。

&_ zl/X+JF0

 

w"ws,yV$Zh3f\X)m0

下面脚本查找windows服务中的Themes服务,并显示它的状态:

-VM,d3?jDx1t0

Win32Service= GetObject("winmgmts:").InstancesOf("Win32_Service");51Testing软件测试网6G?F0~,a"?#R P~

for(e = new Enumerator(Win32Service);!e.atEnd();e.moveNext())51Testing软件测试网\)h c ev#K[!\/v&hk

{51Testing软件测试网}TaNKa\fd

      service = e.item();51Testing软件测试网 X%R k(T-F

      //Wscrīpt.Echo(service.Name);

#R(?\!`4vu#K_rMm0

      if(service.Name=="Themes")51Testing软件测试网 H4o\)Yq9Y/f6W-l

      {

JE*?r'pey"Y&zK0

             Wscrīpt.Echo(service.Descrīption+ " " +service.Status);   

E"\e!X)jp0

      }

Ht+_8i%_%u*d3H,l4P0

}

!hSF4n{rR _?0

 

*n%G/xJ+a0

MSDN上关于WMI有个很生动的比喻,可以用来说明WMI的用途:WMI规范的用途非常类似于汽车控制面板上的仪表板所提供的用途。仪表板可以监视各种组件(如油量表)的信息,指示器则告诉你各种事件何时发生(如开门警报)。所有这些仪器的使用使您可以决定如何驾驶和维护您的汽车。51Testing软件测试网;t3P,i}h/E

 

]YqPN#c7Z)u0

对于测试而言,WMI提供给我们的是方便地监视、诊断被测试程序状态以及对操作系统的更改和影响的作用。

h|l0j![N3f0

TAG: JScript 自动化测试 测试脚本 WMI

Testing is believing 引用 删除 陈能技   /   2008-05-29 00:18:04
呵呵,过奖了!谢谢关注!
kakamissyou的测试小栈 引用 删除 kakamissyou   /   2008-05-27 13:48:40
看来楼主对JS研究还是比较深啊。我是第一次看到JS可以做这样的事情!见识了!谢谢!
 

评分:0

我来说两句

Open Toolbar