Qaf: excel xlsx 文件支持

创建于 2016-09-09  ·  17评论  ·  资料来源: qmetry/qaf

p1 feature data-driven

最有用的评论

此功能目前不是优先事项。 请让我们知道它是否必须具有功能。

所有17条评论

@cjayswal您是否已经在 qaf 中添加了对 xlsx 的支持?

此功能目前不是优先事项。 请让我们知道它是否必须具有功能。

@cjayswal就我而言,我直接从企业收到 XLSX 文件。 我需要从 XLSX 表中选择数据并进行自动化。 但由于不支持 XLSX,我需要将 excel 格式更改为 XLS。 支持 XLSX 也很好。 否则无论如何现在可以自定义 XLSX 实现。

嗨鲁帕克,

是的,有一种方法可以为数据提供者进行自定义实现。

这是https://github.com/qmetry/qaf/issues/82 中提供的示例

我如何支持这个问题?

您可以单击表情符号,然后选择大拇指作为点赞来发表评论。

+1 此功能支持 xlsx

这是必须具备的功能,因为 xls 格式限制最多允许 256 列。 有些情况下需要超过 256 列的数据,为此我们需要 xlsx 格式。

再次对此表示赞同。 我们使用 qmetry 和 excel 文件作为我们的数据源。
问题陈述:我们在共享点维护我们的数据表,以便测试人员/BA 可以协作并添加测试数据。
用于支持数据的 xlsx 格式的增值:

  1. 共享点上仅允许使用 xlsx 格式进行协作。
  2. 不能仅仅因为我们的框架不支持就要求 BA 和其他项目利益相关者使用 old(xls) 格式
  3. xlsx 比旧格式轻得多 --> 这在具有多个文件作为数据源的大型测试套件时变得非常重要

支持此功能。 刚刚在我当前的项目中遇到了这个 XLS 文件的 256 列限制 - 使用大量测试数据的端到端测试。 希望这项支持能尽快实施。

感谢@cjayswal关闭这个。 当前 3.0.0 版本是否提供此修复程序,或者它将在新版本中提供?

此功能将在下一个版本中提供。

感谢@cjayswal关闭这个。 当前 3.0.0 版本是否提供此修复程序,或者它将在新版本中提供?

你好呀! 在等待下一个版本时,您可能想尝试手动将必要的类和依赖项添加到您的项目中:

  1. QAFInetrceptableDataProvider.java类_(这个类名拼写错误吗?)_添加到包com.qmetry.qaf.automation.testng.dataprovider
  2. PoiExcelUtil.java类添加到包com.qmetry.qaf.automation.util
  3. 添加以下依赖项:

    • 阿帕奇poi v4.1.2

    • apache poi-ooxml v4.1.2

    • apache poi commons-collections4 v4.4

请注意,我将此用于当前项目,并且在更新 XLSX 文件和运行测试时,您可能会遇到 _"Label [tableName] for end data range not found in sheet [sheetName]"_ 错误。 我只是在 XLSX 数据文件中的数据表之前插入/删除一列来修复该错误。

希望这可以帮助!

感谢@cjayswal@amitbhoraniya关闭此问题!

谢谢@darkzcythe。 当您开始使用此功能时,如果您发现任何问题,请告诉我们。 所以我们可以在下一个版本之前修复它。

感谢@cjayswal关闭这个。 当前 3.0.0 版本是否提供此修复程序,或者它将在新版本中提供?

你好呀! 在等待下一个版本时,您可能想尝试手动将必要的类和依赖项添加到您的项目中:

  1. QAFInetrceptableDataProvider.java类_(这个类名拼写错误吗?)_添加到包com.qmetry.qaf.automation.testng.dataprovider
  2. PoiExcelUtil.java类添加到包com.qmetry.qaf.automation.util
  3. 添加以下依赖项:
  • 阿帕奇poi v4.1.2
  • apache poi-ooxml v4.1.2
  • apache poi commons-collections4 v4.4

请注意,我将此用于当前项目,并且在更新 XLSX 文件和运行测试时,您可能会遇到 _"Label [tableName] for end data range not found in sheet [sheetName]"_ 错误。 我只是在 XLSX 数据文件中的数据表之前插入/删除一列来修复该错误。

希望这可以帮助!

感谢@cjayswal@amitbhoraniya关闭此问题!

感谢@darkzcythe的解释。 你有 XLSX 示例的任何 git repo。 那会很好。

谢谢@darkzcythe。 当您开始使用此功能时,如果您发现任何问题,请告诉我们。 所以我们可以在下一个版本之前修复它。

当然, @amitbhoraniya

到目前为止,我遇到的唯一问题是,当我对 xlsx 测试数据文件或数据表中的数据进行更改或更新时,例如添加/删除列或更改一个或多个单元格中的数据,当我运行 XML 测试运行程序时,会出现 _"Label [tableName] for end data range not found in sheet [sheetName]"_ 控制台错误。

目前,我已经有 400 多列用于单个测试场景(端到端脚本)的测试数据,并且是与其他测试分开的数据文件(我保留了 XLS 数据文件用于测试数据为 256 或以下的测试),以便在发生上述 XLSX 错误时不会影响其他测试。 当我使用 XLSX 数据文件运行测试时遇到上述问题时,我只需执行以下操作:

  • a) 向数据表的_LEFT_添加或删除空白列_(“key”数据表关键字的左侧)_
  • b) 在数据表中添加或删除空行_ABOVE_
  • 或同时做 a) 和 b)

这有点乏味,如果你错过了给定的临时修复,你的测试很容易出错。 希望您可以为此提供永久修复。 谢谢!

@rupakgithub - 抱歉,我没有公共 git 存储库可以与您分享。 虽然,如果您有一个现有的项目 - qaf 框架,您可以按照我已经给出的步骤进行尝试。

@amitbhoraniya @cjayswal @reidleingod
我尝试按照 .xlsx 的上述实现作为驱动程序文件运行。 我能够运行我的测试。 但是它无法作为数据提供者运行,因为我无法使用 QAF 的现有关键功能运行一个场景 n 次,其中包含 n 种可能的行组合。 请指导其实施。 使用 .xls 键功能可以正常运行测试 n 次,其中 n 行添加了开始键和结束键

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

raviguptasmarsh picture raviguptasmarsh  ·  8评论

Nandesh7 picture Nandesh7  ·  8评论

Rupak-66 picture Rupak-66  ·  12评论

APrem picture APrem  ·  7评论

BChitrakannan picture BChitrakannan  ·  9评论