在 mule Junit 测试代码中出现 "muleContext cannot be resolved" 错误
Getting "muleContext cannot be resolved" error in mule Junit test code
我收到错误“未解决的编译问题:
muleContext 无法在 "MuleClient client = muleContext.getClient();" 行中的 JUnit 测试代码中解决”。根据我的理解,这段代码是正确的。因为我是 JUnit 的新手,所以我不明白为什么会出现这个错误。任何人都可以帮助我请摆脱这个问题。
下面是流程和 Junit 测试代码供您参考。
联合测试:
import java.io.IOException;
import org.mule.api.client.MuleClient;
import org.junit.Test;
import org.mule.api.MuleContext;
import org.mule.api.MuleMessage;
import org.mule.util.IOUtils;
import junit.framework.TestCase;
public class sampleTest extends TestCase {
protected String getConfigResources() {
return "src/main/app/file-transfer-test.xml";
}
@Test
public void testFile() throws Exception {
MuleClient client = muleContext.getClient();
String fileInputPath = "src/test/resources/InputFiles/Contacts1.csv";
String payload = IOUtils.getResourceAsString("src/main/app/file-transfer-test.xml", this.getClass());
client.dispatch(fileInputPath, payload, null);
Thread.sleep(10000);
MuleMessage result = client.request("src/test/resources/OutputFiles", 10000);
System.out.println("The result is \n" +result +"\n The payload is : \n" +payload);
}
}
骡子流:
<flow name="file-transfer-testFlow">
<file:inbound-endpoint path\Lineage="D:\AnyPointStudioSampleFTPFiles\InputFiles" moveToPattern="Contacts1.csv" responseTimeout="10000" doc:name="File"/>
<logger message="File content :: #[payload]" level="INFO" doc:name="Logger"/>
<file:outbound-endpoint path="D:\AnyPointStudioSampleFTPFiles\OtuputFiles" outputPattern="outputfile.csv" responseTimeout="10000" doc:name="File"/>
</flow>
要在测试期间激活 MuleContext
,您需要延长 FunctionalTestCase
:
import org.mule.tck.junit4.FunctionalTestCase;
public class SampleTest extends FunctionalTestCase {
我收到错误“未解决的编译问题: muleContext 无法在 "MuleClient client = muleContext.getClient();" 行中的 JUnit 测试代码中解决”。根据我的理解,这段代码是正确的。因为我是 JUnit 的新手,所以我不明白为什么会出现这个错误。任何人都可以帮助我请摆脱这个问题。
下面是流程和 Junit 测试代码供您参考。
联合测试:
import java.io.IOException;
import org.mule.api.client.MuleClient;
import org.junit.Test;
import org.mule.api.MuleContext;
import org.mule.api.MuleMessage;
import org.mule.util.IOUtils;
import junit.framework.TestCase;
public class sampleTest extends TestCase {
protected String getConfigResources() {
return "src/main/app/file-transfer-test.xml";
}
@Test
public void testFile() throws Exception {
MuleClient client = muleContext.getClient();
String fileInputPath = "src/test/resources/InputFiles/Contacts1.csv";
String payload = IOUtils.getResourceAsString("src/main/app/file-transfer-test.xml", this.getClass());
client.dispatch(fileInputPath, payload, null);
Thread.sleep(10000);
MuleMessage result = client.request("src/test/resources/OutputFiles", 10000);
System.out.println("The result is \n" +result +"\n The payload is : \n" +payload);
}
}
骡子流:
<flow name="file-transfer-testFlow">
<file:inbound-endpoint path\Lineage="D:\AnyPointStudioSampleFTPFiles\InputFiles" moveToPattern="Contacts1.csv" responseTimeout="10000" doc:name="File"/>
<logger message="File content :: #[payload]" level="INFO" doc:name="Logger"/>
<file:outbound-endpoint path="D:\AnyPointStudioSampleFTPFiles\OtuputFiles" outputPattern="outputfile.csv" responseTimeout="10000" doc:name="File"/>
</flow>
要在测试期间激活 MuleContext
,您需要延长 FunctionalTestCase
:
import org.mule.tck.junit4.FunctionalTestCase;
public class SampleTest extends FunctionalTestCase {