Classformaterror beim Schreiben des Junit 4 -Tests mit MockitojunitrunnerJava

Java-Forum
Guest
 Classformaterror beim Schreiben des Junit 4 -Tests mit Mockitojunitrunner

Post by Guest »

Ich versuche, den Junit -Test für mein Android -Projekt zu schreiben. Ich verwende den Android Junit: 4.13.2 und Mockito org.mockito: Mockito-Core: 5.15.2 Abhängigkeiten. Ich habe < /p>
verwendet

Code: Select all

sourceSets {
main {
java.srcDirs =  ["/src/main/java"]
aidl.srcDirs = ["/src/main/java"]

res.srcDirs = ['/src/main/res']
}

test {
test.setRoot('/src/test/')
}
}
< /code>
Hier sind die Testabhängigkeiten < /p>
dependencies {

// Required -- JUnit 4 framework
testImplementation group: 'junit', name: 'junit', version: '4.13.2'
// Optional -- Mockito framework
testImplementation 'org.mockito:mockito-core:5.15.2'
}
< /code>
Hier ist die Testklasse < /p>
package com.example.android;

import static org.mockito.Mockito.mock;

import android.content.Context;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.junit.MockitoJUnitRunner;

@RunWith(MockitoJUnitRunner.class)
public class MyClassTest {

private MyCodeClass mCodeClass;
private Context mContext;

@Before
public void setUp() throws Exception {
mContext = mock(Context.class);
mCodeClass = new MyCodeClass(mContext);
}

@After
public void tearDown() throws Exception {

}

@Test
public void testHello(){

}
}
Beim Ausführen des Testfall Br />Absent Code attribute in method that is not native or abstract in class file android/content/Context
java.lang.ClassFormatError: A b s e n t C o d e a t t r i b u t e i n m e t h o d t h a t i s n o t n a t i v e o r a b s t r a c t i n c l a s s f i l e a n d r o i d / c o n t e n t / C o n t e x t < b r / > a t j a v a . b a s e / j a v a . l a n g . C l a s s L o a d e r . d e f i n e C l a s s 1 ( N a t i v e M e t h o d ) < b r / > a t j a v a . b a s e / j a v a . l a n g . C l a s s L o a d e r . d e f i n e C l a s s ( C l a s s L o a d e r . j a v a : 1 0 1 7 ) < b r / > a t j a v a . b a s e / j a v a . s e c u r i t y . S e c u r e C l a s s L o a d e r . d e f i n e C l a s s ( S e c u r e C l a s s L o a d e r . j a v a : 1 5 0 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . l o a d e r . B u i l t i n C l a s s L o a d e r . d e f i n e C l a s s ( B u i l t i n C l a s s L o a d e r . j a v a : 8 6 2 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . l o a d e r . B u i l t i n C l a s s L o a d e r . f i n d C l a s s O n C l a s s P a t h O r N u l l ( B u i l t i n C l a s s L o a d e r . j a v a : 7 6 0 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . l o a d e r . B u i l t i n C l a s s L o a d e r . l o a d C l a s s O r N u l l ( B u i l t i n C l a s s L o a d e r . j a v a : 6 8 1 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . l o a d e r . B u i l t i n C l a s s L o a d e r . l o a d C l a s s ( B u i l t i n C l a s s L o a d e r . j a v a : 6 3 9 ) < b r / > a t j a v a . b a s e / j d k . i n t e r n a l . l o a d e r . C l a s s L o a d e r s $ A p p C l a s s L o a d e r . l o a d C l a s s ( C l a s s L o a d e r s . j a v a : 1 8 8 ) < b r / > a t j a v a . b a s e / j a v a . l a n g . C l a s s L o a d e r . l o a d C l a s s ( C l a s s L o a d e r . j a v a : 5 2 5 ) < b r / > a t j a v a . b a s e / j a v a . l a n g . C l a s s . g e t D e c l a r e d F i e l d s 0 ( N a t i v e M e t h o d ) < b r / > a t j a v a . b a s e / j a v a . l a n g . C l a s s . p r i v a t e G e t D e c l a r e d F i e l d s ( C l a s s . j a v a : 3 2 9 7 ) < b r / > a t j a v a . b a s e / j a v a . l a n g . C l a s s . g e t D e c l a r e d F i e l d s ( C l a s s . j a v a : 2 3 7 1 ) < b r / > a t o r g . j u n i t . r u n n e r s . m o d e l . T e s t C l a s s . g e t S o r t e d D e c l a r e d F i e l d s ( T e s t C l a s s . j a v a : 7 7 ) < b r / > a t o r g . j u n i t . r u n n e r s . m o d e l . T e s t C l a s s . s c a n A n n o t a t e d M e m b e r s ( T e s t C l a s s . j a v a : 7 0 ) < b r / > a t o r g . j u n i t . r u n n e r s . m o d e l . T e s t C l a s s . & l t ; i n i t & g t ; ( T e s t C l a s s . j a v a : 5 7 ) < b r / > a t o r g . j u n i t . r u n n e r s . P a r e n t R u n n e r . c r e a t e T e s t C l a s s ( P a r e n t R u n n e r . j a v a : 1 1 1 ) < b r / > a t o r g . j u n i t . r u n n e r s . P a r e n t R u n n e r . & l t ; i n i t & g t ; ( P a r e n t R u n n e r . j a v a : 9 1 ) < b r / > a t o r g .junit.runners.BlockJUnit4ClassRunner.(BlockJUnit4ClassRunner.java:74)
at org.mockito.internal.runners.DefaultInternalRunner$1.(DefaultInternalRunner.java:31)
at org.mockito.internal.runners.DefaultInternalRunner.(DefaultInternalRunner.java:30)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
at org.mockito.internal.runners.util.RunnerProvider.newInstance(RunnerProvider.java:29)
at org.mockito.internal.runners.RunnerFactory.create(RunnerFactory.java:75)
at org.mockito.internal.runners.RunnerFactory.createStrict(RunnerFactory.java:40)
at org.mockito.junit.MockitoJUnitRunner.(MockitoJUnitRunner.java:154)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
at org.junit.internal.requests.ClassRequest.createRunner(ClassRequest.java:28)
at org.junit.internal.requests.MemoizingRequest.getRunner(MemoizingRequest.java:19)
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:77)
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:40)
at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:60)
at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:52)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:94)
at jdk.proxy1/jdk.proxy1.$Proxy2.processTestClass(Unknown Source)
at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:176)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:129)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:100)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:60)
at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:113)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:65)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
< /code>
Kann mir jemand helfen, die Hauptursache für dieses Problem zu identifizieren? Ich habe es mit sauberem Build versucht, Cache ungültig und startete das Android -Studio neu, aber nichts hat

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post