Почему TestNG продолжает выполнять тест, если один TestCase (Class) не прошел?
Например, результат теста:
1 test passed, 1 test failed.(3599,0 s)
TestSuite FAILED
run FAILED: check5=3 Expected: <3> got: <5>
run passed (1.0s) // <--- this should not have been executed
почему второй прогон даже выполняется? мой testngsuite.xml:
<suite name="TestSuite_03">
<test name="TestCase_17">
<groups>
<run><include name="functest"/></run>
</groups>
<classes>
<class name="TestStep_003" desc="will fail" />
<class name="TestStep_012" desc="will pass" />
</classes> ...
Я использую Maven, TestNG и Java через NetBeans
моя структура:
public abstract class TestCommon
{
@BeforeSuite(groups={"functest})
public void BeforeSuite()
{
// clean report folder
}
@BeforeTest(groups={"functest})
public void BeforeTest()
{
// start selenium browser
}
@AfterMethod(groups={"functest})
public void AfterMethod()
{
// check for failure and capture screenshot
}
@AfterTest(groups={"functest})
public void AfterTest()
{
// close browser
}
}
public class TestStep_003 extends TestCommon
{
@Test(groups = {functest})
public void run()
{
assertThat(5, Matchers.equalTo(3)); // will fail
}
}
public class TestStep_012 extends TestCommon
{
@Test(groups = {functest})
public void run()
{
assertThat(5, Matchers.equalTo(5)); // will pass
}
}