testng的安装和使用

时间:2024-03-22 12:13:27

1、testng是什么?

  是一种测试框架,可以更方便的执行测试用例。

2、如何安装?

  Eclipse——Help——Install New Software

  work with输入:http://beust.com/eclipse

  等待几秒钟,,选中Testng,一路next

testng的安装和使用

window——preferences 能看到testng,就是安装成功了。

3、项目右键——Build Path ——Add libraries——TestNG——finish

4、在包com.lx上,右键——new——other——TestNG class    一路next,默认创建NewTest

5、在f方法中,增加内容,运行(右键——Run As——TestNG test )

package com.lx;
import org.testng.annotations.Test;
public class NewTest {
  @Test
  public void f() {
      System.out.println("test1");
  }
}

testng的安装和使用testng的安装和使用

一条名为f的用例测试通过

 6、增加测试用例、断言(判断用例是否通过)

package com.lx;
import static org.testng.Assert.assertTrue;

import org.testng.annotations.Test;
public class NewTest {
  @Test
  public void f() {
      System.out.println("test1");
      assertTrue(true);
  }
  @Test
  public void g() {
      System.out.println("test2");
      assertTrue(false);
  }
  @Test
  public void h() {
      System.out.println("test3");
      assertTrue(true);
  }
  @Test
  public void j() {
      System.out.println("test4");
      assertTrue(false);
  }
}

运行结果:Tests run: 4, Failures: 2, Skips: 0  

运行4个测试用例,2个失败

assertTrue()用来断言当前测试用例是否通过

 7、以Demo1为例

 如果接口正常,那么接口返回数据中,含有文字“and”;

s.indexOf("and") 表示在返回数据中寻找和字所在的位置
如果找的到 s.indexOf("and")!=-1  就是true(测试通过)
如果找不到 就是false(测试不通过)
@Test
  public void f() {
      System.out.println("test1");
        String s =    HttpRequest.sendGet("https://translate.google.cn/translate_a/single", "client=t&sl=en&tl=zh-CN&hl=zh-CN&dt=at&dt=bd&dt=ex&dt=ld&dt=md&dt=qca&dt=rw&dt=rm&dt=ss&dt=t&ie=UTF-8&oe=UTF-8&otf=1&ssel=0&tsel=0&kc=1&tk=640089.1025185&q=and");
        System.out.println(s);
      assertTrue(s.indexOf("and")!=-1);
  }

将此代码替换NewTest的f方法,将其他方法删除,运行

 如果中文出现乱码,需设置编码格式后重试。window——preferences——General——workspace——other:UTF8

 8、使用testng.xml运行用例

项目右键——new——file——File name:testng.xml——finish

testng.xml内容:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite1">
    <test name="test12">
        <classes>
            <class name="com.lx.NewTest" />
        </classes>
    </test>
</suite>

右键Run As ,效果与运行NewTest一致