Staf Java 接口 编程
Step1:
创建STAFHandle
STAFHandle handle = new STAFHandle("MyApplication");
Step 2:
组建命令然后提交
String machine = this.ip;
STAFResult result = handle.submit2(machine, service, request);
String service = "PROCESS";
String request = "START SHELL COMMAND " +
STAFUtil.wrapData(command) +
" WAIT RETURNSTDOUT STDERRTOSTDOUT
STAFResult result = handle.submit2(machine, service, request);
Step 3
分析结果:
Map resultMap = (Map)result.resultObj;
String processRC = (String)resultMap.get("rc");
if (!processRC.equals("0"))
{
logger.error( "ERROR: Process RC is not 0.\n" + result.resultContext);
return stdoutData;
}
// Print the stdout/stderr data for the command
List returnedFileList = (List)resultMap.get("fileList");
Map stdoutMap = (Map)returnedFileList.get(0);
stdoutData = (String)stdoutMap.get("data");
logger.info( "the get data:" + stdoutData);
一个完整的例子
import com.ibm.staf.*;
import java.io.*;
public class STAFTest
{
public static void main(String argv[])
{
try
{
// Create a STAFHandle
STAFHandle handle = new STAFHandle("MyApplication");
System.out.println("My handle is: " + handle.getHandle());
try
{
// Submit a synchronous request to the ECHO service on
// the local machine
STAFResult result = handle.submit2(
"local", "ECHO", "ECHO Hello");
if (result.rc != 0)
{
System.out.println(
"ERROR: STAF local ECHO ECHO Hello failed. RC: " +
result.rc + ", Result: " + result.result);
}
else
{
System.out.println("ECHO Result: " + result.result);
}
// Or submit an asynchronous request to the ECHO service on
// the local machine
result = handle.submit2(
STAFHandle.ReqRetain, "local", "ECHO", "ECHO Hello");
if (result.rc != 0)
{
System.out.println(
"ERROR: STAF local ECHO ECHO Hello failed. RC: " +
result.rc + ", Result: " + result.result);
}
else
{
System.out.println(
"Asynchronous ECHO Request number: " + result.result);
}
}
finally
{
handle.unRegister();
}
}
catch (STAFException e)
{
System.out.println(
"Error (un)registering with STAF, RC:" + e.rc);
System.exit(1);
}
} // End of main()
} // End of STAFTest
更多的refer to
http://staf.sourceforge.net/current/STAFJava.htm
分享到:
相关推荐
STAF/STAX是自动化测试领域中的两个重要工具,由IBM Software Group开发并维护。STAF(Software Testing Automation Framework)是一个开源的、基于插件的、点对点框架,主要面向测试自动化。自1998年在IBM奥斯汀...
STAF(Software Test Automation Framework)和STAX是IBM开发的一套自动化测试框架,主要用于软件测试的自动化。STAF提供了一个平台来管理和协调测试活动,而STAX(STAF eXtensible Automation Language)则是一种...
- **开发语言**: 支持 C、C++、Java、Perl、Python 和 Tcl 多种编程语言,提供了丰富的接口供不同背景的开发者使用。 - **应用场景**: 主要应用于软件开发领域。 #### 二、STAF的安装与配置 - **安装方式**: - ...
5. **服务接口**:STAF提供了丰富的API和服务接口,允许用户编写自定义插件和工具,以扩展其功能。 在提供的压缩包文件中,我们可以看到以下几个关键组成部分: 1. **Driver-Inital.vbs 和 Driver.vbs**:这些是...
STAF是一个平台无关的框架,它为测试工具提供了一个统一的接口,使得不同的测试工具能够在不同的操作系统上协同工作。STAF支持多种操作系统,如Windows、Linux、Unix等,能够跨平台执行测试脚本,极大地提高了测试的...
- **接口测试**:验证系统接口的功能正确性和稳定性。 - **兼容性测试**:测试软件在不同操作系统和硬件配置下的兼容性问题。 通过上述内容,我们可以看到STAF不仅具备强大的自动化测试能力,而且还拥有丰富的功能...
STAF(Software Testing Automation Framework)是由IBM开发的一款开源、跨平台的自动化测试框架,它主要由一系列可重用的服务组件构成,这些组件可以处理诸如调用、资源管理、监控等功能。STAF为自动化测试提供了...
ant编译staf插件
Software Test Automation Framework (STAF) 是由IBM开发的开源、跨平台、支持多语言并且基于可重用的组件来构建的自动化测试框架。它封装了不同平台和不同语言间通信的复杂性,提供了消息、互斥、同步、日志等可...
staf的技术手册,Ibm 出品 找了很久阿
STAF 原理及使用介绍, 还有示例、说明等
自动化测试框架STAF的使用手册,东西很全
STAF(Software Testing Automation Framework)是一款开源的自动化测试框架,主要用于软件测试的自动化。它提供了分布式测试环境的管理和控制功能,允许用户在多个系统之间执行测试脚本并收集结果。而Eclipse则是一...
STAX Ext存储库这是我针对软件测试自动化框架(STAF)的STAF服务存储库[ ]。 软件测试自动化框架(STAF)是一个开放源代码,多平台,多语言的框架,围绕可重用组件(即服务(例如流程调用,资源管理,日志记录和...
STAF(Software Testing Automation Framework)是一个开源的自动化测试框架,主要设计用于软件测试的分布式执行和结果收集。在这个场景中,我们关注的是STAF使用Ruby语言实现的分发框架部分。Ruby是一种动态、面向...
IBM STAF(Software Test Automation Framework)是IBM推出的一款开源测试自动化框架,主要用于自动化软件测试。STAF提供了一种跨平台的、分布式的测试环境,它包含了一系列服务,这些服务可以帮助测试人员执行各种...
### Python调用STAF自动化框架的方法 #### 一、引言 随着软件开发行业的快速发展,自动化测试成为确保软件质量不可或缺的一部分。STAF(Simple Test Automation Framework)作为一种强大的自动化测试框架,能够帮助...
当一个服务提供者启动时,它会向本地STAF守护进程注册自己的服务,包括服务的名称、版本、接口描述等信息。这个过程是通过发送特定的STAF命令完成的。 服务的查找是STAF服务回购的关键部分。当一个客户端需要使用...
IBM internal training material for staf/stax