为什么Xml.newPullParser()在Android测试中返回null?

时间:2016-05-15 09:41:05

标签: android junit

我使用的是Android Studio 2.0,而且我对Android更新鲜。 在我的源代码中,Xml.newPullParser()运行良好 但是,当我在junit test(测试目录)中输入它时,我发现它返回null。为什么会发生这种情况?我对此感到困惑。

第二个问题,有两个目录(test和androidTest),它们之间的区别是什么?我应该使用哪一个?

apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.ecust.ecusthelper"
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 2
        versionName '1.1'
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    testOptions {
        unitTests.returnDefaultValues = true
    }
}

dependencies {
    testCompile 'junit:junit:4.12'
    debugCompile 'com.squareup.leakcanary:leakcanary-android:1.4-beta2'
    releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta2'
    testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta2'
    compile 'com.android.support:appcompat-v7:23.2.1'
    ....
}

我的build.gradle

function view(idjob, name)
{
    document.getElementById('jtitle').innerHTML = name;
    $.ajax({ url: 'passJobID.php',
        data: {'vals' : idjob},
        type: 'post',
        dataType:'html',
        success: function(output) {
            alert(output);
        },
        error: function(request, status, error){
            alert("Error");
        }
    });
}

1 个答案:

答案 0 :(得分:0)

我认为您需要在defaultConfig的{​​{1}}部分指定测试跑步者:

build.gradle

所以它看起来像这样:

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"