2011-09-19 5 views
-2

나는 매개 변수화하고 데이터 지향적으로 만들 수 있도록 데이터베이스를 구현하려고 노력했지만 완전히 가이드를 잃어 버렸습니다. 내 robotium 코드는 아래에 나와 있습니다. 어떻게 데이터베이스를 열 수 있습니까? sqlite와의 연결.robotium의 매개 변수

package com.dialog.test; 

import android.test.ActivityInstrumentationTestCase2; 
import com.jayway.android.robotium.solo.Solo; 

public class TestNew extends ActivityInstrumentationTestCase2 { 
    private Solo solo; 


    //private Activity Main; 
    private static Class class1; 
    static 
    { 
     try { 
      class1=Class.forName("com.botskool.DialogBox.DialogBox"); 
     } catch (ClassNotFoundException e) { 
      e.printStackTrace(); 
     } 
    } 
    public TestNew() { 
     super("com.botskool.DialogBox", class1); 
    } 

    @Override 
    protected void setUp() throws Exception { 
     super.setUp(); 
     this.solo = new Solo(getInstrumentation(), getActivity()); 
    } 

    @Override 
    protected void tearDown() throws Exception{ 
     try { 
      this.solo.finalize(); 
      } catch (Throwable e) { 
       e.printStackTrace(); 
      } 
      getActivity().finish(); 
       super.tearDown(); 
      } 

    public void testDisplay(){ 
     solo.clickOnButton(0); 
     solo.clickOnButton("Ok"); 
     solo.clickOnButton(2); 
    } 
} 

심지어 작은지도가 큰 도움이 될 것입니다 당신이

+0

어떤 문제가 발생합니까? – njzk2

+0

나는 데이터 구동이 가능하도록 sqlite db에 연결할 수 없다. 나는 apk을위한 robotium과 workign입니다. –

+0

더 나은 방법으로 질문의 헤더를 다시 작성해야합니다. – TechSpellBound

답변

0

당신은 robotium 스크립트에 통합하기 위해 자바의 파일 IO를 사용할 수 있습니다 감사합니다. /system/docs/test1.txt와 같은 안드로이드 장치의 경로로 파일 경로를 제공하십시오. 파일에 세부 사항을 제공하고 adb push 명령을 사용하여 파일을 장치에 푸시 할 수 있습니다. 스크립트가 실행되면 매개 변수가 액세스됩니다. 로봇 테스트 케이스의 샘플 코드를 제공합니다 :

public void test(){ 


    String strLine = "",PHN1="", MSG="", siters=""; 
    File f = null; 
    try { 

     f = new File("/system/SendSMS.txt"); 
     FileInputStream fileIS = new FileInputStream(f); 
     BufferedReader buf = new BufferedReader(new InputStreamReader(fileIS)); 
     String readString = new String(); 
     while ((readString = buf.readLine()) != null) { 
      strLine = strLine + readString; 
     } 

    } catch (Exception e) { 

     Log.e("ERROR", "" + e.getMessage()); 
     e.printStackTrace(); 
    } 
    PHN1 = strLine.substring(strLine.indexOf("[PHN1]")+"[PHN1]".length(), strLine.indexOf("[$PHN1]")); 
    MSG = strLine.substring(strLine.indexOf("[MSG]")+"[MSG]".length(), strLine.indexOf("[$MSG]")); 
    siters = strLine.substring(strLine.indexOf("[ITERS]")+"[ITERS]".length(), strLine.indexOf("[$ITERS]")); 
    int iters = Integer.valueOf(siters); 
    Log.i("D2Tech","SMS Contact : "+PHN1); 
    Log.i("D2Tech","SMS Message : "+MSG); 
    Log.i("D2Tech","SMS Iterations : "+iters); 
    PHN1="0183030689,0183030687"; 
    iters=50; 

    for(int j = 1; j<= iters ; j++){ 

      solo.clickOnText("New message"); 


      solo.enterText(0, PHN1); 

      solo.enterText(1, MSG + j); 
      solo.goBack(); 
      solo.clickOnButton("Send"); 
      solo.goBack(); 
      Log.i("D2Tech","SMS Message number : "+j); 

    } 
    solo.waitForDialogToClose(1000); 
} 
+1

위의 코드는 다른 장치에 여러 개의 SMS를 전송하는 것입니다 – Killy

+0

방금 ​​시도해 보니 잠시 후에 알려 드리겠습니다 :) –