Android Studio 简单的JunitTest
文章目录
最近使用 AndroidStudio 的时候想要使用单元测试 因为有一些数据需要 Activity 的支持, 从网上找了一些教程,但自己使用时感觉不理想,发现都是一些业务逻辑的类,很少有直接针对 Activity 的单元测试 所以想自己写一个简单的 demo
开发环境
Android Studio 2.2
步骤
首先新建工程 然后会自动生成 MainActivity
MainActivity 代码如下
1public class MainActivity extends AppCompatActivity {
2
3 // Used to load the 'native-lib' library on application startup.
4 static {
5 System.loadLibrary("kikt-camera");
6 }
7
8 @Override
9 protected void onCreate(Bundle savedInstanceState) {
10 super.onCreate(savedInstanceState);
11 setContentView(R.layout.activity_main);
12
13 // Example of a call to a native method
14 TextView tv = (TextView) findViewById(R.id.sample_text);
15 tv.setText(stringFromJNI());
16 }
17
18 /**
19 * A native method that is implemented by the 'native-lib' native library,
20 * which is packaged with this application.
21 */
22 public native String stringFromJNI();
23
24 public void showTest() {
25 Log.d("MainActivity", stringFromJNI());
26 }
27}
这里直接创建 Test 文件
点 ok 后 会生成一个文件
我在这里对代码进行了修改 修改如下
1@RunWith(JUnit4.class)
2public class MainActivityTest {
3
4 @Rule
5 public ActivityTestRule<MainActivity> rule = new ActivityTestRule<>(MainActivity.class);
6
7 @Test
8 public void stringFromJNI() throws Exception {
9 MainActivity activity = rule.getActivity();
10 TextView textView = (TextView) activity.findViewById(R.id.sample_text);
11 String s = textView.getText().toString();
12 Log.d("MainActivityTest", s);
13 Log.d("MainActivityTest", activity.stringFromJNI());
14 }
15
16}
这里通过 rule.getActivity()可以直接拿到 Activity 对象 可以获取到 View 对象 接着就可以将测试的相关所有逻辑写在里面了
这里可以直接点击运行 test 了
我这里只是做了几个日志输出,可以从 Android monitor 里面看到日志输出
后记
demo 比较简单,没有什么多余的东西,仅做参考