打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
三、TestNG的基本注解(1)

Before类别和After类别注解

 

举例说明

创建两个TestNGAnnotationTest.java和TestNGAnnotationTest2.java的类

TestNGAnnotationTest.java

package com.lc.testngTest;

import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class TestNGAnnotationTest {

 

    @BeforeSuite
    public void beforeSuite() {

        System.out.println(this.getClass().getName() + " beforeSuite");

    }

 

    @AfterSuite
    public void afterSuite() {

        System.out.println(this.getClass().getName() + " afterSuite");

    }

 

    @BeforeTest
    public void beforeTest() {

        System.out.println(this.getClass().getName() + " beforeTest");

    }

 

    @AfterTest
    public void afterTest() {

        System.out.println(this.getClass().getName() + " afterTest");

    }

 

    @BeforeClass
    public void beforeClass() {

        System.out.println(this.getClass().getName() + " beforeClass");

    }

 

    @AfterClass
    public void afterClass() {

        System.out.println(this.getClass().getName() + " afterClass");

    }

 

    @BeforeMethod
    public void beofreMethod() {

        System.out.println(this.getClass().getName() + " beforeMethod");

    }

 

    @AfterMethod
    public void afterMethod() {

        System.out.println(this.getClass().getName() + " afterMethod");

    }

 

    @Test
    public void test1() {

        System.out.println(this.getClass().getName() + " test1");

    }

 

    @Test
    public void test2() {

        System.out.println(this.getClass().getName() + " test2");

    }

 

}

TestNGAnnotationTest2.java

package com.lc.testngTest;

import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterSuite;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

public class TestNGAnnotationTest2 {

 

    @BeforeSuite
    public void beforeSuite() {

        System.out.println(this.getClass().getName() + " beforeSuite");

    }

    @AfterSuite
    public void afterSuite() {

        System.out.println(this.getClass().getName() + " afterSuite");

    }

    @BeforeTest
    public void beforeTest() {

        System.out.println(this.getClass().getName() + " beforeTest");

    }

    @AfterTest
    public void afterTest() {

        System.out.println(this.getClass().getName() + " afterTest");

    }

    @BeforeClass
    public void beforeClass() {

        System.out.println(this.getClass().getName() + " beforeClass");

    }

    @AfterClass
    public void afterClass() {

        System.out.println(this.getClass().getName() + " afterClass");

    }

    @BeforeMethod
    public void beofreMethod() {

        System.out.println(this.getClass().getName() + " beforeMethod");

    }

    @AfterMethod
    public void afterMethod() {

        System.out.println(this.getClass().getName() + " afterMethod");

    }

    @Test
    public void test1() {

        System.out.println(this.getClass().getName() + " test1");

    }

    @Test
    public void test2() {

        System.out.println(this.getClass().getName() + " test2");

    }

}

创建运行项目的xml文件

testng2.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="suite1" verbose="1" >
    <test name="test1">
        <classes>
            <class name="com.lc.testngTest.TestNGAnnotationTest"></class>
            <class name="com.lc.testngTest.TestNGAnnotationTest2"></class>            
        </classes>
    </test>
    
</suite>

运行结果

[TestNG] Running:
  D:\workspace\webTestNG\WebContent\testng2.xml

com.lc.testngTest.TestNGAnnotationTest beforeSuite
com.lc.testngTest.TestNGAnnotationTest2 beforeSuite
com.lc.testngTest.TestNGAnnotationTest beforeTest
com.lc.testngTest.TestNGAnnotationTest2 beforeTest
com.lc.testngTest.TestNGAnnotationTest beforeClass
com.lc.testngTest.TestNGAnnotationTest beforeMethod
com.lc.testngTest.TestNGAnnotationTest test1
com.lc.testngTest.TestNGAnnotationTest afterMethod
com.lc.testngTest.TestNGAnnotationTest beforeMethod
com.lc.testngTest.TestNGAnnotationTest test2
com.lc.testngTest.TestNGAnnotationTest afterMethod
com.lc.testngTest.TestNGAnnotationTest afterClass
com.lc.testngTest.TestNGAnnotationTest2 beforeClass
com.lc.testngTest.TestNGAnnotationTest2 beforeMethod
com.lc.testngTest.TestNGAnnotationTest2 test1
com.lc.testngTest.TestNGAnnotationTest2 afterMethod
com.lc.testngTest.TestNGAnnotationTest2 beforeMethod
com.lc.testngTest.TestNGAnnotationTest2 test2
com.lc.testngTest.TestNGAnnotationTest2 afterMethod
com.lc.testngTest.TestNGAnnotationTest2 afterClass
com.lc.testngTest.TestNGAnnotationTest afterTest
com.lc.testngTest.TestNGAnnotationTest2 afterTest
com.lc.testngTest.TestNGAnnotationTest afterSuite
com.lc.testngTest.TestNGAnnotationTest2 afterSuite

===============================================
suite1
Total tests run: 4, Failures: 0, Skips: 0
===============================================

 

 其中beforeSuite,afterSuite和beforeTest,afterTest区分不明显,下面修改xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="suite1" verbose="1" >
    <test name="test1">
        <classes>
            <class name="com
[TestNG] Running:
  D:\workspace\webTestNG\WebContent\testng.xml

com.lc.testngTest.TestNGAnnotationTest beforeSuite
com.lc.testngTest.TestNGAnnotationTest2 beforeSuite
com.lc.testngTest.TestNGAnnotationTest beforeTest
com.lc.testngTest.TestNGAnnotationTest beforeClass
com.lc.testngTest.TestNGAnnotationTest beforeMethod
com.lc.testngTest.TestNGAnnotationTest test1
com.lc.testngTest.TestNGAnnotationTest afterMethod
com.lc.testngTest.TestNGAnnotationTest beforeMethod
com.lc.testngTest.TestNGAnnotationTest test2
com.lc.testngTest.TestNGAnnotationTest afterMethod
com.lc.testngTest.TestNGAnnotationTest afterClass
com.lc.testngTest.TestNGAnnotationTest afterTest
com.lc.testngTest.TestNGAnnotationTest2 beforeTest
com.lc.testngTest.TestNGAnnotationTest2 beforeClass
com.lc.testngTest.TestNGAnnotationTest2 beforeMethod
com.lc.testngTest.TestNGAnnotationTest2 test1
com.lc.testngTest.TestNGAnnotationTest2 afterMethod
com.lc.testngTest.TestNGAnnotationTest2 beforeMethod
com.lc.testngTest.TestNGAnnotationTest2 test2
com.lc.testngTest.TestNGAnnotationTest2 afterMethod
com.lc.testngTest.TestNGAnnotationTest2 afterClass
com.lc.testngTest.TestNGAnnotationTest2 afterTest
com.lc.testngTest.TestNGAnnotationTest afterSuite
com.lc.testngTest.TestNGAnnotationTest2 afterSuite

===============================================
suite1
Total tests run: 4, Failures: 0, Skips: 0
===============================================

 

.lc.testngTest.TestNGAnnotationTest"></class>
        </classes>
    </test>
    
    <test name="test2">
        <classes>
            <class name="com.lc.testngTest.TestNGAnnotationTest2"></class>            
        </classes>
    </test>
</suite>

运行结果

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
七、TestNG传递参数2
十二、TestNG分组测试2
JUnit 4 Vs TestNG – Comparison
TestNG取得测试类名的方法
TestNG 入门教程
TestNG入门到
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服