TestNG实例

用TestNG测试方法是否正确的一个例子

1、在Eclipse中新建一个TestLogin的类,此类代码如下:

package com.yxl.test;

import static org.testng.AssertJUnit.assertTrue;
import static org.testng.AssertJUnit.assertEquals;
import org.testng.annotations.Test;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeTest;

public class TestLogin {

    /**
     * @param args
     */
@BeforeTest    // 标记指定所有测试进行前呼叫此 method

 public void beforeAllTest(){

     System.out.println("Before All Test");       

 }

@BeforeMethod    // 标记指定每个测试进行前呼叫此 method

 public void setUp() {

     System.out.println("Before Each Test Method");

 }

 @Test(groups = { "group1" })    // 标记为测试程式,并为分组 group1

 public void group1Test() {

     System.out.println("Group 1");

 }

 @Test(groups = { "group2" })    // 标记为测试程式,并为分组 group2

 public void group2Test() {

     System.out.println("Group 2");

 }

@Test(groups = { "group3" })    // 标记为测试程式,并为分组 group3

 public void group3Test() {

     System.out.println("Group 3");

 }

@Test                          //测试两个数是否相等
public void add()
{
    assertEquals(5,6);
}

Login log = new Login();
boolean tt =log.logintest("test", "test") ;

@Test                         //测试登录方法是否正确
public void testLogin()
{    
    assertTrue(tt);
}


 @AfterMethod   // 标记指定每个测试进行后呼叫此 method

 public void tearDown(){

     System.out.println("After Each Test Method");

 }



 @AfterTest   // 标记指定所有测试进行后呼叫此 method

 public void afterAllTest(){

     System.out.println("After All Test");       

 }

}

2、新建一个被测试的类Login

package com.yxl.test;

public class Login {

    public boolean logintest(String username,String password)
    {
        boolean flag = false ;
        if(username=="test" && password=="test" )
        {
            flag = true ;
            return flag ;
        }
        else
        {
            return flag ;
        }
        
    }
}

3、我们要测试Login 类中的方法是否正确,如果username,password的值均为test,则返回True,否则认为是登陆失败。

故在第1步中这样写代码:

Login log = new Login();
boolean tt =log.logintest("test", "test") ;

@Test                         //测试登录方法是否正确
public void testLogin()
{    
    assertTrue(tt);
}


4、在工程中需要配置testng.xml,配置如下:

<!DOCTYPE suite SYSTEM "http://beust.com/testng/testng-1.0.dtd" >
  
<suite name="Example" verbose="1">

  <listeners>
    <listener class-name="priority.PriorityInterceptor" />
  </listeners>
  
  <test name="Simple example" >
<!--
      <groups>
      <run>
        <include name="assert" />
        <include name="fail" />
        <include name="odd" />
        <include name="even" />
        <exclude name="broken" />
      </run>        
    </groups>
-->
    <classes>
      <class name="com.yxl.test.TestLogin" />
    </classes>
  </test>
<!--  
  <test name="Method interceptor example" >
    <classes>
      <class name="priority.PriorityTest" />
    </classes>
  </test>
-->  

</suite>


5、Run TestLogin这个类As TestNG,如果Eclipse中的Results of running of class TestLogin的Toolbar变绿,说明测试通过,

如果是红色的,说明测试失败。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值