2015-05-25 1 views
0

Я получаю сообщение об ошибке «Неразрешенная проблема компиляции: muleContext не может быть разрешен» в строке «MuleClient client = muleContext.getClient();» в тестовом коде JUnit в Mule. По моему пониманию этот код правильный. Поскольку я новичок в JUnit, я не понимаю, почему эта ошибка наступает. Может ли кто-нибудь помочь мне избавиться от этой проблемы, пожалуйста.Ошибка «muleContext не может быть разрешена» в mule Код теста 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); 
    } 
} 

Mule потока:

<flow name="file-transfer-testFlow"> 
     <file:inbound-endpoint path\Lineage="D:\AnyPointStudio\1SampleFTPFiles\InputFiles" moveToPattern="Contacts1.csv" responseTimeout="10000" doc:name="File"/> 
     <logger message="File content :: #[payload]" level="INFO" doc:name="Logger"/> 
     <file:outbound-endpoint path="D:\AnyPointStudio\1SampleFTPFiles\OtuputFiles" outputPattern="outputfile.csv" responseTimeout="10000" doc:name="File"/> 
    </flow> 

ответ

1

Чтобы иметь активный MuleContext во время теста, вам необходимо расширить FunctionalTestCase:

import org.mule.tck.junit4.FunctionalTestCase; 

public class SampleTest extends FunctionalTestCase { 
+0

Hi Da vid, я сделал, как вы сказали, но все равно получал такую ​​же ошибку. Есть ли еще какое-то решение для решения этой проблемы? – anusha

+0

Привет, Ошибка «Проблема неразрешенной компиляции: muleContext не может быть разрешена» разрешена, и теперь я получаю новую ошибку. I.e, «org.mule.api.registry.ServiceException: Не удалось загрузить транспорт: org/mule/transport D». Помогите мне это решить. – anusha

+0

Вероятно, вам не хватает JAR для переноса файлов в пути сборки. –

Смежные вопросы