📄 httparbiter.java
字号:
package comptest.http.httptestcase1;
import com.ibm.etools.comptest.http.execution.HttpResponse;
import com.ibm.etools.comptest.http.execution.HttpTask;
import com.ibm.etools.comptest.model.common.BasicArbiter;
import com.ibm.etools.comptest.model.common.BasicArbiter.StatusCounter;
import com.ibm.etools.comptest.model.core.EnumerationManager;
import com.ibm.etools.comptest.model.core.Task;
import com.ibm.etools.comptest.model.util.ArbiterResult;
/**
* HTTP Arbiter
*/
public class HttpArbiter extends BasicArbiter {
/**
* This method is invoked at the end of the execution of each task.
*
* @see BasicArbiter#analyze(Task, String)
*/
public ArbiterResult analyze(Task task, String info) {
ArbiterResult arbiterResult = super.analyze(task, info);
if (task instanceof HttpTask) {
HttpTask httpTask = (HttpTask) task;
HttpResponse httpResponse = httpTask.getLastHttpResponse();
if (httpResponse != null) {
if ((httpResponse.getContentLength() > 0)
&& (200 != httpResponse.getStatusCode())) {
arbiterResult.setStatus(
EnumerationManager.ExecutionStatus_SoftFail);
storeTaskResult(task, arbiterResult);
} else if (httpResponse.getStatusCode() < 0) {
arbiterResult.setStatus(
EnumerationManager.ExecutionStatus_Fail);
arbiterResult.setInfo(
"Invalid status code ("
+ httpResponse.getStatusCode()
+ ")."
+ (arbiterResult.getInfo() == null
? ""
: "\n" + arbiterResult.getInfo()));
}
}
}
return arbiterResult;
}
/**
* This method is invoked at the end of the execution.
*
* @see BasicArbiter#analyze()
*/
public ArbiterResult analyze() {
StatusCounter statusCounter = calculateStatusCounter();
String status = EnumerationManager.ExecutionStatus_Pass;
if (statusCounter.failCounter > 0)
status = EnumerationManager.ExecutionStatus_Fail;
else if (statusCounter.passCounter <= statusCounter.softFailCounter)
status = EnumerationManager.ExecutionStatus_SoftFail;
ArbiterResult result = new ArbiterResult();
result.setStatus(status);
result.setInfo(
"Pass:"
+ statusCounter.passCounter
+ " Fail:"
+ statusCounter.failCounter
+ " SoftFail:"
+ statusCounter.softFailCounter);
return result;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -