导入静态io.restassured.RestAssured.*;不工作

问题描述 投票:0回答:8

我正在尝试编写一个用于 API 测试的 BDD 框架。 导入静态 io.restassured.RestAssured.*;不工作。 另外,当我使用给定()关键字时它会抛出错误。 我已经添加了各自的 Maven 依赖项,但静态导入不起作用。不明白需要添加什么或者需要更改添加的依赖项。

代码片段: 封装restApi;

import org.testng.annotations.Test;
import static io.restassured.RestAssured.*;
import static org.hamcrest.Matcher.*;

public class Test1_BasicFeature 

{

@Test
public void testStatusCode()
{
    given().

}

}

Pom.xml

<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>com.servicetest</groupId>
<artifactId>maven-servicetest</artifactId>
<version>0.0.1-SNAPSHOT</version>

<dependencies>
<!-- https://mvnrepository.com/artifact/io.rest-assured/rest-assured -->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>3.0.0</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/io.rest-assured/json-path -->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>json-path</artifactId>
<version>3.0.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.rest-assured/json-schema-validator -->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>json-schema-validator</artifactId>
<version>3.0.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.rest-assured/xml-path -->
<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>xml-path</artifactId>
<version>3.0.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.14.3</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.hamcrest/hamcrest-all -->
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>java-hamcrest</artifactId>
<version>2.0.0.0</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/info.cukes/gherkin -->
<dependency>
<groupId>info.cukes</groupId>
<artifactId>gherkin</artifactId>
<version>2.12.2</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-testng -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-testng</artifactId>
<version>2.0.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/info.cukes/cucumber-java -->
<dependency>
<groupId>info.cukes</groupId>
<artifactId>cucumber-java</artifactId>
<version>1.2.5</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.11</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
java maven gherkin
8个回答
6
投票

我可以看到你在pom.xml中设置了restassured的范围仅限于test

"<scope>test</scope>"

这意味着您将无法在测试之外的其他地方使用该库。删除它以使范围默认为项目。即

<dependency>
<groupId>io.rest-assured</groupId>
<artifactId>rest-assured</artifactId>
<version>3.0.0</version>
</dependency>

3
投票

使用

 import static io.restassured.*;
import static org.hamcrest.*;

而不是

import static io.restassured.RestAssured.*;
import static org.hamcrest.Matcher.*;

3
投票

在测试中添加以下内容:

import static io.restassured.RestAssured.given;
import static io.restassured.RestAssured.when;
import static io.restassured.RestAssured.then;

这也可以解决一些问题。


2
投票

打开 pom.xml 文件并进行更改

    <dependency>
            <groupId>io.rest-assured</groupId>
            <artifactId>rest-assured</artifactId>
            <version>4.4.0</version>
            <scope>compile</scope>
        </dependency>


0
投票

如果给定()引发编译时间,则使用

RestAssured.given()

RestAssured.given().get(url).getStatusCode();

0
投票

如果您添加了依赖项,但仍然出现错误

轻松构建您的项目。

路径(mac用户)步骤:

  1. 项目->

  2. 构建项目。


0
投票

打包演示;

导入静态io.restassured.RestAssured.given;

公共类 oAuthTest {

public static void main(String[] args) {
    // TODO Auto-generated method stub

    
    given()
}

}

我仍然发现导入无法解决。有人可以帮助我吗


-1
投票
import static io.restassured.RestAssured.*;

这应该在所有其他导入之上声明,如下所示:

import static io.restassured.RestAssured.*;
import org.testng.annotations.Test;
import static org.hamcrest.Matcher.*;
© www.soinside.com 2019 - 2024. All rights reserved.