当前位置: 首页 > 知识库问答 >
问题:

通过rest assured(rest API自动化)连接到数据库

蓬英逸
2023-03-14

我们正在使用serentiity-lest-放心自动测试REST API。一个要求是连接到PostgreSQL数据库,并将GETAPI调用值与数据库表值进行比较。

我在网上搜索,没有找到答案。我可能没有使用正确的搜索关键字。

请指导,是否可以连接到数据库并测试API结果?

共有1个答案

郎刚捷
2023-03-14

只要尝试一下,下面的内容就足以证明您可以从数据库中获取值,并根据您获得的值进行验证,这是Rest Assured实现的一部分。

这是一小段代码,可用于此目的,您可以根据需要临时编写

这是我的类,我希望代码是自解释的

  public class S_62551943 {

    // Declaration of the variables
    
    private final String url = "jdbc:postgresql://localhost/dvdrental";
    private final String user = "postgres";
    private final String password = "root";
    public static String fname = null;

    // Method to initalize connection to the database and execute query
    
    public void connect() {

        try {
            Connection conn = DriverManager.getConnection(url, user, password);
            {
                if (conn != null) {

                    PreparedStatement pst = conn.prepareStatement("select first_name from actor where last_name = 'Lollobrigida'");
                    ResultSet rs = pst.executeQuery();
                    {
                        while (rs.next()) {

                            fname = rs.getString("first_name");
                            System.out.println("The value from the table is : "+fname);
                        }
                    }

                } else
                    System.out.println("Failed to connect");
            }

        } catch (SQLException e) {
            System.out.println(e.getMessage());
        }
    }

    // Main method and Rest Assured Code
    
    public static void main(String[] args) {
        S_62551943 app = new S_62551943();
        app.connect();      
        given().when().get("https://reqres.in/api/users/2").then().body("data.first_name", equalToIgnoringCase(fname));
        System.out.println("Execution Successful");
    }

}

更多关于Postgres的信息-https://www.postgresqltutorial.com/

 类似资料:
  • 用Python来编写网站,必须要能够通过python操作数据库,所谓操作数据库,就是通过python实现对数据的连接,以及对记录、字段的各种操作。上一讲提到的那种操作方式,是看官直接通过交互模式来操作数据库。 安装python-MySQLdb 要想通过python来操作数据库,还需要在已经安装了mysql的基础上安装一个称之为mysqldb的库,它是一个接口程序,python通过它对mysql数据

  • 问题内容: 大家好,我使用Hibernate + Struts2 + Tomcat6 + Mysql作为我的J2EE框架。我一直在使用hibernate的内置连接池机制,但事实证明,在8小时后mysql关闭其连接的地方,这是一个问题。无论如何,我在Google上搜索了一下,发现我应该通过JNDI数据源获得连接,但是我无法获得关于此的完整的教程。我应该采取什么步骤呢?请提供足够的详细信息,对此我有点

  • 问题内容: 我有一个客户端,一个服务器和一个数据库。客户端通过EJB远程接口与服务器通信。作为服务器-我使用Wildfly 8.2.0。作为数据库- 我使用MySQL。服务器通过JPA /休眠与MySQL通信。当我关闭MySQL服务器时,Wildfly当然会引发异常。但是,当我再次打开MySQL时- Wildfly仍然会抛出相同的错误。我必须关闭Wildfly,然后重新将Wildfly重新连接到数

  • 我正在尝试通过JDBC连接到使用Eclipse(版本Juno)的IBMDB2数据库。我已经将驱动程序(外部jar文件)添加到我的项目中,并且驱动程序已正确加载… 我还知道连接数据(数据库路径、用户名、密码)是正确的。但我得到一个java.lang.NoClassDefFoundError: 项目属性肯定有问题但是我真的不知道去哪里找。

  • 问题内容: 如何通过SQL将活动用户连接到PostgreSQL数据库?这可以是用户标识或用户数。 问题答案: (问题)你不知道那个信息吗 选择* from pg_user ; 或使用视图pg_stat_activity: 添加: 视图说: 每个服务器进程一行,显示数据库OID,数据库名称,进程ID,用户OID, 用户名 ,当前查询,查询的等待状态,当前查询开始执行的时间,进程开始的时间以及 客户端

  • 我想通过R从SQL数据库导入数据。我尝试了太多次(几乎6小时)连接到服务器。我运行这些命令,它显示错误:- jdbcDriver jdbc连接 我认为是司机的问题,但我无法解决。