【发布时间】:2016-12-18 01:09:54
【问题描述】:
我有一个我认为是相当常见的场景:我想通过 FitNesse 测试一个 Web 服务,同时还能够从 Web 服务后面的数据库中注入和读取数据。例如,我想做以下事情:
1) 将记录直接保存到数据库中;那么
2) 使用网络服务更新已创建的记录;那么
3) 检查数据库记录是否已正确更新。
美中不足的是,数据库是 SQL Server,我正在本地计算机上针对我的 (localdb) SQL Server 实例进行开发。所以我需要 FitNesse 能够连接到 (localdb)。
据我所知,RestFixture 用于测试 Web 服务,仅在 FitNesse 的 Java 版本中运行。但是,Java 版本的 DbFit 连接数据库只能使用微软的 JDBC 驱动连接 SQL Server。根据this Stackoverflow question,MS JDBC 驱动程序不支持命名管道,因此无法连接到 (localdb)。因此,我将不得不使用 DbFit 的 FitSharp (.NET) 版本,它可以与 (localdb) 一起正常工作。
现在的问题是将 Java RestFixture 与 FitSharp DbFit 结合起来。例如,如果我通过 DbFit 在数据库中创建一条新记录,我想读回我刚刚创建的记录的标识值,并使用该值来标识要通过 Web 服务更新的记录。所以我需要将变量或一些信息从 FitSharp DbFit 测试页面传递到 Java RestFixture 测试页面。这可能吗?
【问题讨论】:
-
我看到(stackoverflow.com/questions/11345746/…)jTDS 确实支持 JDBC 连接到 localdb。这是你的选择吗?
-
@FriedHoeben:很遗憾没有。 Java 版本的 DbFit 仅支持 SQL Server 的 Microsoft JDBC 驱动程序。