How do I run a Junit 4.8.1 Test suite from command line ? Also I want to use the categories introduces with JUnit 4.8 , is there a way where I can specify from command line the category which I want to run.
问题:
回答1:
There is no way (as of 4.8) to specify categories from the command line.
回答2:
Using java
run JUnitCore class (also see here).
Categories are supposed to be used with test suites with @RunWith(Categories.class)
, @IncludeCategory
and @ExcludeCategory
. I am not aware of any dynamic way to use categories to run tests but I'd like to know of such it it exists. You can have pre-defined test suites for certain categories to run them.
回答3:
I can suggest two approaches: 1. Create Ant file with junit target and then invoke this target from commend line. 2. Implement test suite class, in it in some class with main() method. So you will be able to run it.
回答4:
In 4.10, we do this:
mvn verify -p(your profiles) -Dit.test=(SuiteClass)
where SuiteClass
is an empty class (no methods or fields) that is annotated with @RunWith(Categories.class)
and @Suite.SuiteClasses({FooIT.class, BarIT.class, ...})
. FooIT
and BarIT
are the integration tests.