问题标签 [database-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1166 浏览

jmeter - JMeter JDBC 数据库测试 - Max Wait (ms)

JDBC 连接配置中 Max Wait (ms) 值的最佳实践是什么? JDBC

我正在执行两种类型的测试:

  1. 每个线程数 20 个循环 - 以获得最大吞吐量
  2. 每个线程数 30 分钟的运行时间 - 以获得响应时间

使用 Max Wait = 10000ms,我可以执行 10、20、30、40、60 和 80 个线程的 JDBC 请求而不会出错。使用 Max Wait = 20000ms,我可以走得更高,执行 100、120、140 个线程而不会出错。这似乎是合乎逻辑的行为。

现在提问。我可以根据需要增加 Max Wait 值吗?如何获得更多测试结果是正确的方法吗?如果某些报告中出现任何错误,我应该停止测试并且不增加线程数吗?我从 10000 个样本中得到了例如 0.06% 的错误。这是我的测试站吗?谢谢。

0 投票
1 回答
736 浏览

c# - 如何使用动态值运行 Specflow/Specrun 特征文件

我对 Specflow/Specrun 和 C# 编程非常陌生。我需要帮助来解决我面临的问题。

我有一个查询数据库的 Specrun 功能文件。以下是功能文件的代码:

这绝对没问题。但我想注释第二行并在运行时使用 default.srprofile 文件指定数据库名称。

我想runtests.cmd使用 default.srprofile 文件执行文件(从命令行)并在运行时提供数据库名称。有可能实现这一目标吗?

0 投票
1 回答
679 浏览

sql - 如何在 sql server 中现有创建的表的列上添加标识(自动增量)?

如果不添加新列,我们可以在现有列中更新吗?

我创建了一个如下表:

创建表 SalesInfo (Sales_ID int Not Null , Product_ID int Not Null , Sales_Status varchar(50) , Remarks varchar(200));

因此,在此表中,想要在不删除现有列的情况下向 Sales_ID 添加自动增量,有什么解决方案吗?

0 投票
0 回答
189 浏览

selenium-webdriver - 我在线程“main”com.mysql.jdbc.exceptions.jdbc4.CommunicationsException 中收到错误异常:通信链接失败

如何连接到具有私有 IP 的数据库。线程“主”com.mysql.jdbc.exceptions.jdbc4.CommunicationsException 中的异常:通信链接失败

0 投票
3 回答
2471 浏览

rest - 在集成测试中可以访问数据库吗?

我在集成测试中有一个非常具体的情况。

我正在使用 Spring Boot 开发由几个微服务组成的 Rest API。其中一些服务基本上具有供 UI 应用程序访问或用于内部验证/查询的粗略操作。

所有数据库操作都是通过遗留库(没有 jpa)的过程完成的,我使用的是非标准数据库。我知道良好做法说不要使用真实数据库,但在这种情况下,我无法想象如何在测试时使用虚拟数据库(如 dbunit 或 h2)。这样:

1 - 可以在集成测试中访问真实数据库吗?

如果 1 没问题,我还有一个问题:

通常,我们不会在单元/集成测试中更改数据状态;并且测试应该彼此独立。

但是,就我而言,我只知道 post 方法的响应中的实体 id 是什么,因此难以实现 get/put/delete 方法。当然在 get/put/delete 方法中我可以先插入,然后再进行另一个操作,但是从这个角度来看,最后,我将拥有一个与测试开始时处于不同状态的数据库。这样,我的另一个问题是:

2 - 如何在测试前将数据库恢复到相同的状态?

我知道这可能是一个特定的情况,但我真的很感谢任何帮助找到一种优雅的方式来测试这个场景。

提前致谢。

0 投票
1 回答
115 浏览

mysql - 从 sql 迁移到弹性搜索后如何使用 sql 数据验证弹性搜索数据

任何从事弹性搜索工作的人。需要如主题中所述的输入。我有一个要求,将 sql 数据迁移到弹性搜索现在有大量数据,所以我无法手动检查每个字段。那么用 sql 测试迁移数据的最佳方法是什么?

0 投票
1 回答
151 浏览

unit-testing - 您将如何对仅用于进行数据库调用的方法进行单元测试?

我有这样的方法:

我应该如何对此进行单元测试?如果我只是为 uni test 调用此方法,那么我将不得不创建调用所针对的测试数据库。我不知何故觉得这将成为集成测试的一部分,因为我们正在调用 DB。

如果我模拟 db 对象,那么它将永远不会测试实际的实现。

我应该对此进行测试吗?作为编写单元测试的主要目标,如果数据是否插入到数据库中,并且此类功能已经在库本身中进行了测试,在我的例子中是 mgo 库。

请分享您对上述场景进行单元测试的最佳方法的想法。

0 投票
1 回答
312 浏览

java - Mockito - 模拟结果集

这是我正在测试的方法以及测试代码。我的测试方法取决于 runExecuteQueryStatement 生成的结果集。如果 resultSet 为 null 并且 resultSet.next 为 false,则当 resultSet.next 返回某些内容时,它将返回 0,否则将返回 1。这就是我嘲笑 ResultSet ResultSet.next() 的原因。但我仍然得到 0 作为返回值。任何帮助都感激不尽。谢谢

被测方法

依赖方法代码 (runExecuteQueryStatement)

测试代码

0 投票
1 回答
2379 浏览

sql - 如何在不同的选项卡中生成输出以在 Oracle SQL Developers 中同时执行查询?

我们正在测试一张桌子。在给定的表格中有 20 种不同的测试要做。所以我们执行了 20 个不同的查询。有没有办法让我在同一张表上运行 20 个不同的查询并为同一张表生成 20 个不同的输出?我们使用的是 Oracle SQL Developer 和 Standard Edition 2。

请让我知道是否可能,因为它会节省很多时间。如果您需要更多信息,请告诉我。

谢谢。

0 投票
1 回答
238 浏览

java - 如果Mysql端口被阻塞,如何防止应用程序(使用hibernate + c3po)挂起?

我一直在尝试让我的 Java 应用程序数据库失败证明,这样如果数据库不可用,它们就不会出现意外滞后。当数据库完全关闭时,我已经成功处理了简单的情况。

当我的机器的 mysql 端口被阻止并且我尝试访问它时,我陷入了困境。在这种情况下,应用程序永远挂起, c3po 文档中没有提到超时配置似乎可以预见地处理这种情况。在调试时,我可以看到它挂在 mysql 连接器中的 ReadAheadInputStream 类上。该类的文档显示它仅阻塞以满足读取请求。

到目前为止,我已经使用了以下属性。

除此之外,用于配置连接池的其他属性如文档中所述

版本:

有人可以指导我吗?除了 c3po 文档中提到的那些还需要配置的超时参数之外,是否还有其他超时参数?