Java自动化测试框架(TestNG)——忽略测试


Java自动化测试框架(TestNG)——忽略测试文章插图
使用 TestNG 的时候 , 有时候会忽略掉某些测试方法 , 比如代码并没有准备就绪是 。我们可以使用注释 @Test(enabled = false) 来忽略此测试用例 。
忽略某个测试方法在如下示例中 , 我们将演示如何使用@Test(enabled = false)来忽略测试方法 。
package testng.base.demo;import org.testng.Assert;import org.testng.annotations.Test;?public class exceptionTest {@Testpublic void testDemo1() {System.out.println("Running testDemo1");Assert.assertTrue(true);}?@Test(enabled = false)public void testDemo2() {System.out.println("Running testDemo2");Assert.assertFalse(false);}?@Test(enabled = true)public void testDemo3() {System.out.println("Running testDemo3");Assert.assertFalse(false);}?}运行上面代码 , 得到以下结果 。
Running testDemo1?Running testDemo2?===============================================Default SuiteTotal tests run: 2, Failures: 0, Skips: 0===============================================除此之外 , 我们可以在xml配置文件中进行设置 , 如下
?运行testng.xml 配置测试 , 结果如下 , 实际运行时忽略了testDemo2测试方法 :
Java自动化测试框架(TestNG)——忽略测试文章插图
忽略某个测试类在上述的例子中 , 使用注释 @Test(enabled = false) 来忽略某个测试方法 , 那么当我们想要跳过测试类时 , 需要使用 @Ignore 对测试类进行注解 , 示例如下:
package testng.base.demo;import org.testng.Assert;import org.testng.annotations.Ignore;import org.testng.annotations.Test;@Ignorepublic class exceptionTest {?@Testpublic void testDemo1() {System.out.println("Running testDemo1");Assert.assertTrue(true);}?@Test(enabled = true)public void testDemo2() {System.out.println("Running testDemo2");Assert.assertFalse(false);}?@Test(enabled = true)public void testDemo3() {System.out.println("Running testDemo3");Assert.assertFalse(false);}?}运行上面代码 , 得到以下结果 。
?===============================================Default SuiteTotal tests run: 0, Failures: 0, Skips: 0===============================================同样 , 忽略某个测试类 , 也可以通过xml配置实现 , 在testng.xml文件中的test标签中添加 enable="false" 属性 , 如下:
??运行 testng.xml 配置测试 , 结果如下 , 实际运行时忽略了exceptionTest测试类的所有方法 :
【Java自动化测试框架(TestNG)——忽略测试】?===============================================suiteDemoTotal tests run: 0, Failures: 0, Skips: 0===============================================