testng关键词

本文分享了一位开发者从使用开源接口测试平台转向Java+TestNG进行接口自动化测试的经历。介绍了如何搭建Java接口测试环境,包括IDEA、Maven、TestNG等工具的配置,以及依赖的添加。并提供了TestNG注解的详细解释,帮助读者理解自动化测试的流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一开始雄心壮志想二次开发开源的接口测试平台为我们所用,后来在遇到各种报错中手足无措,寸步难行~~

一句总结我这一小个星期:接口测试平台:从开始到放弃

现在老老实实先自己用代码写写脚本,从瘦子变胖子吧,嗯~身材上我已经实现了,明年的愿望就是瘦10斤,女人,就是要作!!!

这次是准备用java+testng+idea写接口测试,之前是用的postman工具做的自动化,思来想去,虽然我代码上是个白痴,但也不能不学,毕竟大势所趋,只能向金钱低头,能学习到多少便学多少吧!

首先,默认你已经下载了idea,破解了,并且安装了jdk,配置好了环境变量,然后下载好了maven,不懂百度

然后新建一个maven项目,在pom文件里下载依赖或者手动去下,我选第一个

<?xml version="1.0" encoding="UTF-8"?>

<project
         xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>evanui</groupId>
    <artifactId>evanui</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.11</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.54</version>
        </dependency>

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.2</version>
        </dependency>

        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
            <version>2.1</version>
            <classifier>jdk15</classifier>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.3</version>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.5</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <!--<testFailureIgnore>true</testFailureIgnore>-->
                    <forkMode>never</forkMode>
                    <argLine>-Dfile.encoding=UTF-8</argLine>
                    <suiteXmlFiles>
                        <suiteXmlFile>xml/testNG.xml</suiteXmlFile>
                        <suite name="evanui" parallel="false">
                            <test name="testcase1">
                                <classes>
                                    <class name="xzt.Test1"></class>
                                </classes>
                            </test>
                        </suite>

                    </suiteXmlFiles>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

如果反复下载不了,确认下名字是否拼写正确,并且版本是否正确 ,可以去这个网站查看最新的依赖版本--https://mvnrepository.com/

然后,学习使用testng的关键词,嗯,我先抄下来了,后面接口脚本写好了再贴上来哈

@BeforeSuite: The annotated method will be run before all tests in this suite have run. 
@AfterSuite: The annotated method will be run after all tests in this suite have run. 
@BeforeTest: The annotated method will be run before any test method belonging

to the classes inside the <test> tag is run. 
@AfterTest: The annotated method will be run after all the test methods belonging 

to the classes inside the <test> tag have run. 
@BeforeGroups: The list of groups that this configuration method will run before. 

This method is guaranteed to run shortly before the first test method that belongs 

to any of these groups is invoked. 
@AfterGroups: The list of groups that this configuration method will run after. 

This method is guaranteed to run shortly after the last test method that belongs

 to any of these groups is invoked. 
@BeforeClass: The annotated method will be run before the first test method in 

the current class is invoked. 
@AfterClass: The annotated method will be run after all the test methods in the 

current class have been run. 
@BeforeMethod: The annotated method will be run before each test method. 
@AfterMethod: The annotated method will be run after each test method.

中文版的

注解

描述

@BeforeSuite

注解的方法将只运行一次,运行所有测试前此套件中。

@AfterSuite

注解的方法将只运行一次此套件中的所有测试都运行之后。

@BeforeClass

注解的方法将只运行一次先行先试在当前类中的方法调用。

@AfterClass

注解的方法将只运行一次后已经运行在当前类中的所有测试方法。

@BeforeTest

注解的方法将被运行之前的任何测试方法属于内部类的 <test>标签的运行。

@AfterTest

注解的方法将被运行后,所有的测试方法,属于内部类的<test>标签的运行。

@BeforeGroups

 

按组( @Test(groups= "findyou") )运行时,此注解在组(findyou组)执行之前运行,可做组(findyou组)执行之前,初始化数据准备类工作。

 

@AfterGroups

 

按组( @Test(groups= "findyou") )运行时,此注解在组(findyou组)执行之后运行,可做组(findyou)执行之后,数据还原类工作。

 

@BeforeMethod

注解的方法将每个测试方法之前运行。

@AfterMethod

被注释的方法将被运行后,每个测试方法。

@DataProvider

标志着一个方法,提供数据的一个测试方法。注解的方法必须返回一个Object[] [],其中每个对象[]的测试方法的参数列表中可以分配。

该@Test 方法,希望从这个DataProvider的接收数据,需要使用一个dataProvider名称等于这个注解的名字。

@Factory

作为一个工厂,返回TestNG的测试类的对象将被用于标记的方法。该方法必须返回Object[]。

@Listeners

定义一个测试类的监听器。

@Parameters

介绍如何将参数传递给@Test方法。

@Test

标记一个类或方法作为测试的一部分。

 

转载于:https://my.oschina.net/EvanDev/blog/2996441

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值