⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 forwardingtest.java

📁 Android的应用实例
💻 JAVA
字号:
/* * Copyright (C) 2008 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * *      http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package com.example.android.apis.app;import com.example.android.apis.R;import com.example.android.apis.view.Focus2ActivityTest;import android.content.Context;import android.content.Intent;import android.test.ActivityUnitTestCase;import android.widget.Button;/** * This demonstrates completely isolated "unit test" of an Activity class. * * <p>This model for testing creates the entire Activity (like {@link Focus2ActivityTest}) but does * not attach it to the system (for example, it cannot launch another Activity).  It allows you to * inject additional behaviors via the  * {@link android.test.ActivityUnitTestCase#setActivityContext(Context)} and  * {@link android.test.ActivityUnitTestCase#setApplication(android.app.Application)} methods.   * It also allows you to more carefully test your Activity's performance  * Writing unit tests in this manner requires more care and attention, but allows you to test * very specific behaviors, and can also be an easier way to test error conditions. *  * <p>Because ActivityUnitTestCase creates the Activity under test completely outside of * the usual system, tests of layout and point-click UI interaction are much less useful * in this configuration.  It's more useful here to concentrate on tests that involve the  * underlying data model, internal business logic, or exercising your Activity's life cycle. * * <p>See {@link com.example.android.apis.AllTests} for documentation on running * all tests and individual tests in this application. */public class ForwardingTest extends ActivityUnitTestCase<Forwarding> {    private Intent mStartIntent;    private Button mButton;    public ForwardingTest() {        super(Forwarding.class);      }    @Override    protected void setUp() throws Exception {        super.setUp();        // In setUp, you can create any shared test data, or set up mock components to inject        // into your Activity.  But do not call startActivity() until the actual test methods.        mStartIntent = new Intent(Intent.ACTION_MAIN);    }    /**     * The name 'test preconditions' is a convention to signal that if this     * test doesn't pass, the test case was not set up properly and it might     * explain any and all failures in other tests.  This is not guaranteed     * to run before other tests, as junit uses reflection to find the tests.     */    public void testPreconditions() {        startActivity(mStartIntent, null, null);        mButton = (Button) getActivity().findViewById(R.id.go);                assertNotNull(getActivity());        assertNotNull(mButton);    }        /**     * This test demonstrates examining the way that activity calls startActivity() to launch      * other activities.     */    public void testSubLaunch() {        Forwarding activity = startActivity(mStartIntent, null, null);        mButton = (Button) activity.findViewById(R.id.go);                // This test confirms that when you click the button, the activity attempts to open        // another activity (by calling startActivity) and close itself (by calling finish()).        mButton.performClick();                assertNotNull(getStartedActivityIntent());        assertTrue(isFinishCalled());    }        /**     * This test demonstrates ways to exercise the Activity's life cycle.     */    public void testLifeCycleCreate() {        Forwarding activity = startActivity(mStartIntent, null, null);                // At this point, onCreate() has been called, but nothing else        // Complete the startup of the activity        getInstrumentation().callActivityOnStart(activity);        getInstrumentation().callActivityOnResume(activity);                // At this point you could test for various configuration aspects, or you could         // use a Mock Context to confirm that your activity has made certain calls to the system        // and set itself up properly.                getInstrumentation().callActivityOnPause(activity);                // At this point you could confirm that the activity has paused properly, as if it is        // no longer the topmost activity on screen.                getInstrumentation().callActivityOnStop(activity);                // At this point, you could confirm that the activity has shut itself down appropriately,        // or you could use a Mock Context to confirm that your activity has released any system        // resources it should no longer be holding.        // ActivityUnitTestCase.tearDown(), which is always automatically called, will take care        // of calling onDestroy().    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -