Android Studio 簡單的JunitTest
阿新 • • 發佈:2018-11-14
最近使用AndroidStudio的時候想要使用單元測試
因為有一些資料需要Activity的支援,
從網上找了一些教程,但自己使用時感覺不理想,發現都是一些業務邏輯的類,很少有直接針對Activity的單元測試
所以想自己寫一個簡單的demo
開發環境
Android Studio 2.2
步驟
首先新建工程
然後會自動生成MainActivity
MainActivity程式碼如下
public class MainActivity extends AppCompatActivity {
// Used to load the 'native-lib' library on application startup.
static {
System.loadLibrary("kikt-camera");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Example of a call to a native method
TextView tv = (TextView) findViewById(R.id.sample_text);
tv.setText(stringFromJNI());
}
/**
* A native method that is implemented by the 'native-lib' native library,
* which is packaged with this application.
*/
public native String stringFromJNI();
public void showTest() {
Log.d("MainActivity", stringFromJNI());
}
}
這裡直接建立Test檔案
點ok後
會生成一個檔案
我在這裡對程式碼進行了修改
修改如下
@RunWith(JUnit4.class)
public class MainActivityTest {
@Rule
public ActivityTestRule<MainActivity> rule = new ActivityTestRule<>(MainActivity.class);
@Test
public void stringFromJNI() throws Exception {
MainActivity activity = rule.getActivity();
TextView textView = (TextView) activity.findViewById(R.id.sample_text);
String s = textView.getText().toString();
Log.d("MainActivityTest", s);
Log.d("MainActivityTest", activity.stringFromJNI());
}
}
這裡通過rule.getActivity()可以直接拿到Activity物件
可以獲取到View物件
接著就可以將測試的相關所有邏輯寫在裡面了
這裡可以直接點選執行test了
我這裡只是做了幾個日誌輸出,可以從Android monitor裡面看到日誌輸出
後記
demo比較簡單,沒有什麼多餘的東西,僅做參考