2

在工作中测试我的应用程序的 QA 部门使用他们共享的 Oracle 数据库。随着他们的案件发生变化,事情变得非常棘手。提交的错误报告 + 我花时间只是为了找出测试用例已被更改 = 浪费时间。

我希望 dev 和 qa 都在我们的机器上运行我们自己的 Oracle 副本,这样我们就可以保护我们的数据并追逐我们的尾巴......更少。

据我所知,问题是我们没有为所有这些许可证提供资金。使用开源数据库是行不通的,因为我们有各种各样的 PL/SQL 包和触发器,我确信它们将我们与 Oracle 联系在一起。

有谁知道“伪造”Oracle 数据库的方法(或者可能是开源产品)?根本没有性能要求。我不是指模拟对象(我们确实将其用于单元测试),而是实际的“在端口上侦听您的请求”RDMS。这是一个长镜头,但我不得不问。

4

3 回答 3

7

为此,请使用 Oracle Express。

http://www.oracle.com/technetwork/products/express-edition/overview/index.html

Oracle 数据库 11g 快捷版

免费开发、部署和分发

Oracle Database 11g Express Edition (Oracle Database XE) 是基于 Oracle Database 11g 第 2 版代码库的入门级、占用空间小的数据库。它可以免费开发、部署和分发;快速下载;并且易于管理。

Oracle Database XE 是一个很好的入门数据库,用于:

从事 PHP、Java、.NET、XML 和开源应用程序的开发人员

需要免费的入门数据库进行培训和部署的 DBA

希望免费分发初始数据库的独立软件供应商 (ISV) 和硬件供应商

需要免费课程数据库的教育机构和学生

借助 Oracle Database XE,您现在可以使用功能强大、经过验证、行业领先的基础架构来开发和部署应用程序,然后在必要时进行升级,而无需进行昂贵且复杂的迁移。

Oracle Database XE 可以安装在具有任意数量 CPU 的任何大小的主机上(每台机器一个数据库),但 XE 将存储多达 11GB 的用户数据,使用多达 1GB 的内存,并在主机上使用一个 CPU。

通过由 Oracle 员工和社区专家监控的免费 Oracle 论坛提供支持。

于 2012-08-10T20:39:08.023 回答
2

您可以使用免费的 Oracle XE (Express Edition)。

你可以在这里下载。

于 2012-08-10T20:39:14.327 回答
2

假设每个开发人员在他们的个人数据库副本中需要少于 11 GB 的数据,您是否考虑过使用Oracle 数据库的免费快速版?您可以将其安装在本地计算机上,甚至可以免费将其部署到生产环境中。您不能使用企业版功能,但基本的 PL/SQL 应该与您现在使用的任何版本的数据库完全一样。

然而,这对我来说并不明显,这确实是解决您遇到的问题的方法。如果测试用例在没有将信息传达给开发人员的情况下发生更改,或者一个人所依赖的测试数据正在被其他人更改,那么创建更多具有相同数据的更多副本的数据库实例不太可能有很大帮助。如果您有数据库的本地副本,则需要某种方法来获取所有对象(表、包、触发器等)的当前版本。您需要某种方式来获取特定测试人员所依赖的数据。您需要某种方式将您的更改从您的机器转移到共享数据库中,而这种方式不会影响其他开发人员所做的更改。这些障碍都不是不可逾越的,但它们确实需要一个非常可靠的构建和部署过程——否则,您最终会陷入混乱,您的数据库中的代码版本与其他所有人数据库中的代码版本略有不同,并且您系统中的测试数据略有不同与 QA 使用的测试数据相比,这些特征会导致许多错误在一个系统上可重现,但在另一个系统上则无法重现。如果您当前的构建和部署过程甚至无法确保在调查错误时测试用例不会发生变化,我倾向于认为添加更多实例会使问题变得更糟,而不是更好。s 数据库和系统中的测试数据与 QA 使用的测试数据的特征略有不同,这会导致在一个系统上可重现但在另一个系统上无法重现的许多错误。如果您当前的构建和部署过程甚至无法确保在调查错误时测试用例不会发生变化,我倾向于认为添加更多实例会使问题变得更糟,而不是更好。s 数据库和系统中的测试数据与 QA 使用的测试数据的特征略有不同,这会导致在一个系统上可重现但在另一个系统上无法重现的许多错误。如果您当前的构建和部署过程甚至无法确保在调查错误时测试用例不会发生变化,我倾向于认为添加更多实例会使问题变得更糟,而不是更好。

于 2012-08-10T20:41:27.263 回答