TestNG_Maven_Idea环境搭建(自用笔记)

TestNG_Maven_Idea

1,安装JDK,略

2,安装maven,下载包
注意点:
    a)M2_HOME 或 MAVEN_HOME,Maven 说只是添加 M2_HOME , 但一些项目仍引用 Maven 的文件夹 MAVEN_HOME, 因此,为了安全也把它添加进去。
    b)默认仓库为~/.m2/repository,可在%MAVEN_HOME%/conf/setting.xml中修改
    
3,安装Idea,略

4,打开Idea,new->project->选择maven工程->next->输入groupid和artifactid->next->选择工程路径->finish

项目基础目录规划如下:
/src为项目目录;
/src/main为工程目录,里面存放了服务的开发源代码;
/src/test为测试目录,里面存放了测试代码及一些测试类;
/target为maven执行maven install时创建的目录,原则上应配置在.gitignore里不提交git;

运行机制:
开发人员在main目录下开发项目代码;
测试人员在test目录下开发项目代码,测试代码能引用main目录下的类方法进行单元测试,并能引用test的测试类方法构建其他测试;

5,编辑pom.xml,添加依赖:

<?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>apitest</groupId>
    <artifactId>apitest</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.8</version>
        </dependency>
    </dependencies>

</project>

6,编写基础类:

a)/src/main/java/com/Utils/UtilsFunc.java

//此处定义了业务类方法
package com.Utils;

public class UtilsFunc {
    static double PI = 3.1415;
    public static double area(double r){
        System.out.println("I'm in /src/main/com/Utils");
        return r*r*PI;
    }
}

b)/src/test/java/com/APItools/ToolsFunc.java

//此处定义了基础的工具类
package com.APItools;

public class ToolsFunc {
    static double PI = 3.1415;
    public static double area(double r){
        System.out.println("I'm in /src/test/com/APItools");
        return r*r*PI;
    }
}

c)/src/test/java/com/TestUtils/UtilsFunc.java

//此处定义了业务类方法
package com.TestUtils;

public class UtilsFunc {
    static double PI = 3.1415;
    public static double area(double r){
        System.out.println("I'm in /src/test/com/TestUtils");
        return r*r*PI;
    }
}

7,编写case:

import org.testng.Assert;
import org.testng.annotations.Test;
import com.APItools.ToolsFunc;
import com.TestUtils.UtilsFunc;


public class TestDemo {
    @Test
    public void testcase1(){
        System.out.println("I'm in assert false");
        Assert.assertTrue(false);

    }
    @Test
    public void testcase2(){
        System.out.println("I'm in assert true");
        Assert.assertTrue(true);
    }
    //调用测试包内的工具类进行测试
    @Test
    public void testcase3(){
        double a = ToolsFunc.area(20);
        System.out.println("res is :"+a);
        Assert.assertEquals(1256.6000000000001,a);
        System.out.println(a);
    }
    //调用测试包内的业务类进行测试
    @Test
    public void testcase4(){
        double a = UtilsFunc.area(20);
        System.out.println("res is :"+a);
        Assert.assertEquals(1256.6000000000001,a);
        System.out.println(a);
    }
    //调用开发目录的业务类进行测试
    @Test
    public void testcase5(){
        //对于重名的类,可以用全路径引用
        double a = com.Utils.UtilsFunc.area(20);
        System.out.println("res is :"+a);
        Assert.assertEquals(1256.6000000000001,a);
        System.out.println(a);
    }
}

 直接运行TestDemo或者在case方法上右击单个运行即可输出执行结果。

阅读更多

没有更多推荐了,返回首页