Open chang6666 opened 6 months ago
Is your java file name the same as your test primary class name? e.g.
class AbstractPropertyAccessorTests {
...
}
@jdneo yes it is the same,I run the same code in idea without any exception,The source code address is at https://github.com/spring-projects/spring-framework/blob/6.1.x/spring-beans/src/test/java/org/springframework/beans/AbstractPropertyAccessorTests.java
wait, what's the version of the test runner extension you are using? We've deprecated the code lens shortcuts for years.
@jdneo
Where do those Run Test | Debug Test
come from? I don't understand. We are using gutter icon now. Do you install other java extension?
@jdneo Now that I have removed other test plug-ins, I still get an error
Thank you. I need to make some investigation. Highly likely that we could not handle abstract test class.
To reproduce, simply use:
public abstract class AbstractTest {
@Test
void testName() {
}
}
Is the extension able to handle test cases in an abstract class? We recently shifted from Eclipse to VSCode. The following example test file matches your example above:
public abstract class QueueTest {
/**
* Invokes the appropriate {@code Queue} constructor for the implementation
* under test and returns the result.
*
* @return the new queue
* @ensures constructorTest = <>
*/
protected abstract Queue<String> constructorTest();
/**
* Invokes the appropriate {@code Queue} constructor for the reference
* implementation and returns the result.
*
* @return the new queue
* @ensures constructorRef = <>
*/
protected abstract Queue<String> constructorRef();
@Test
public final void testNoArgumentConstructor() {
/*
* Set up variables and call method under test
*/
Queue<String> q = this.constructorTest();
Queue<String> qExpected = this.constructorRef();
/*
* Assert that values of variables match expectations
*/
assertEquals(qExpected, q);
}
}
The tests correctly have run buttons next to the line numbers, but clicking them raises an error (i.e., no tests found with testrunner JUnit 4). The class that inherits these tests can be executed just fine. I've been trying to figure out a workaround because my students often click these run buttons and wonder what's wrong.
For the record, switching to JUnit 5 actually makes the issue worse. Test failures no longer show alongside the correct test case and instead all of them show up on the class declaration line.
I can open another issue if this is not the appropriate location.
as title,When I run the spring source code test class, I get an error: No tests fount with test runner 'JUnit 5' eg:spring-beans/src/test/java/org/springframework/beans/AbstractPropertyAccessorTests.java