【001】接口测试-常用工具介绍和使用

目前了解到的几种工具如下:

工具

接口测试

多线程并发

压测

Postman

暂无

×

Poswotman

还没了解

扫描二维码关注公众号,回复: 10798126 查看本文章

 

 

Jmeter

Charles

×

×

TestNG

注意点:
1、检查接口文档
2、看看返回的数据结构是否一致。  结构对比   json-schema-validator.
3、逻辑是否正确(看看传参和返回是否一致)

1、postman

  

2、jmeter

3、抓包

4、testNG
需要基本的代码能力

以idea的maven管理项目为例:
1、pom文件引入对应的jar包

    <dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.9.8</version>
<!-- <scope>test</scope>-->
</dependency>

2、引入插件testNG XML

  为了自动生成xml文件
  file——settings——plugins——搜索testNG XML——选中后点击ok,重启idea,搞定

3、新建Java的class,

  然后可以适用相应的testNG注解啦。如下代码所示:

 1 import org.testng.Assert;
 2 import org.testng.annotations.AfterClass;
 3 import org.testng.annotations.BeforeClass;
 4 import org.testng.annotations.Test;
 5 
 6 public class test1 {
 7 
 8     @Test
 9     public void abc1(){
10         System.out.println("testNG 1");
11     }
12     @Test
13     public void abcError(){
14         System.out.println(1/0);
15     }
16     @Test
17 //    @Test(enabled = false)
18     public void abcEnable(){
19         System.out.println("是否能执行");
20     }
21     @Test
22     public void abc2(){
23         System.out.println("testNG 2");
24     }
25     @BeforeClass
26     public void beforeClass(){
27         System.out.println("beforeClass ");
28     }
29     @AfterClass
30     public void afterClass(){
31         System.out.println("beforeClass ");
32     }
33 //    分组
34     @Test(groups = {"group1"})
35     public void groups1(){
36     System.out.println("group1");
37 }
38     @Test(groups = {"group1"})
39     public void group11(){
40         System.out.println("group11");
41     }
42     @Test(groups = {"group2"})
43     public void groups2(){
44         System.out.println("group2");
45     }
46     @Test(groups = {"group2"})
47     public void group22(){
48         System.out.println("group2 2");
49     }
50 
51 //    多线程
52     @Test(groups = {"group3"})
53     public void Thread1(){
54     System.out.println("Thread1");
55 }
56     @Test(groups = {"group3"})
57     public void Thread2(){
58         System.out.println("Thread 2");
59     }
60 //    断言
61     @Test(groups = {"group4"})
62     public void assert1(){
63         String str1="ydh";
64         String str2="ydh";
65         boolean bl1=!(str1.equals(str2));
66         boolean bl2=(str1.equals(str2));
67         Assert.assertEquals(str1,str2,"判断是否相等");
68         Assert.assertTrue(bl2,"判断是否为true");
69         Assert.assertFalse(bl1,"判断是否为false");
70         System.out.println("Thread 2");
71     }
72 }

可以直接在脚本运行某个方法,页可以通过生成的testng.xml文件来调用(其实自己页可以新建的)
xml代码如下:

这里需要强调的是test这个标签的name一定要和上面的类名对应起来(我这里的java文件较test1)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Test1">
<!--    preserve-order="true"表示顺序  thread-count="2"线程数-->
    <test name="test1" preserve-order="true" thread-count="1">
<!--    <test name="test1">-->
<!--        <classes>-->
<!--            <class name="test1">-->
<!--                <methods>-->
<!--                    <include name="abcEnable">-->
<!--                    </include>-->
<!--                    <include name="abc2"/>-->
<!--                </methods>-->
<!--            </class>-->
<!--        </classes>-->
<!--分组-->
<!--        <groups>-->
<!--            <run>-->
<!--                <include name="group1"></include>-->
<!--            </run>-->
<!--        </groups>-->
<!--        <classes>-->
<!--            <class name="test1"></class>-->
<!--        </classes>-->  
       <groups>
            <run>
                <include name="group4"></include>
            </run>
        </groups>
        <classes>
            <class name="test1"></class>
        </classes>
    </test>
</suite>

  

猜你喜欢

转载自www.cnblogs.com/keaihaizi/p/12701760.html