问题标签 [qaf]
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.
cucumber - Cucumber - 如何配置 QAF Gherkin Scenario Factory?
由于具有以下类的 JUnit,我有一个 Cucumber 项目正在运行:
我想使用QAF Gherkin Scenario Factory将一些场景示例放在外部文件中以便重用它们(例如:Cucumber: Scenario Outline reusing examples table或CustomDataProvider for feature file (QAF))。
我阅读了最后一节名为“对于现有的黄瓜实现”并做了它所说的,但我目前在使用 QAF 运行 Cucumber 时遇到了一个异常(请参阅下面的编辑部分)。
爪哇:1.8
黄瓜:4.8.0
六月:4.12
src/test/resources/features/test.feature
src/test/java/com/steps/TestSteps.java
编辑:基于 user861594 帮助,这里是我所在的位置:
- 我通过maven配置下载了库QAF 2.1.15 。
我用@QAFTestStepProvider 注释了我的步骤类
我为 testNG 创建了一个 xml 配置文件,以便配置 cucumber 并使用名为 GherkinScenarioFactory 的 QAF 类运行它:
我使用 IntelliJ IDEA 的 testNG 插件运行了之前的配置(测试种类 = 套件。我也可以选择Class、Method、Group、Pattern或All in package)
运行时,我得到以下异常(在测试之前,所以它被忽略了):
- 我调试了,实际上有一个双重错误:运行期间发生 NullPointerException(见下文),所以我们到达 onConfigurationFailure,但又出现 NullPointerException(上面的那个)
回顾异常发生的时间和地点:
cucumber-java - Cucumber 和 QAF BDD2 有什么区别
Cucumber 和 QAF bdd 有什么区别,QAF 有哪些 Cucumber 中没有的功能,以及 Cucumber 中有哪些功能,而 QAF Bdd 中没有。
bdd - 是否可以使用 QAF BDD 强制执行标记规则,如果可以,我该怎么做?
使用 QAF BDD,我们可以将标签作为键和值对提供,是否可以确保功能文件中可以提供的值在定义的集合内,例如:
这里 testType 应该只接受值smoke
or regression
,例如,如果 sombody 提供了除此之外的值,functional
或者出现拼写错误,它应该抛出错误并且不应该执行该场景。
cucumber - qaf-cucumber - 无法在 BDD2 场景大纲中引用来自 CSV 数据提供者的数据
语境
我想使用 qaf-cucumber 来利用 QAF 功能,同时仍将 Cucumber 与 JUnit 一起使用。主要是,我需要 QAF 的数据提供者功能,允许在 .csv 中外部化场景示例,以便在多个场景和功能中使用它们。
六月:4.12
黄瓜:5.0.0-RC2
QAF : 2.1.15
qaf-cucumber : 2.1.15-beta-3 (最新版本,因为还没有发布)
问题
当使用@dataFile
场景上方的 QAF 标签来指定 .csv 的位置时:
正如预期的那样,我得到了 INFO 跟踪“c.qmetry.qaf.automation.util.CSVUtil - 加载 csv 数据文件:src/test/resources/data/testdata.csv”。
正如预期的那样,该场景的执行次数与 .csv 中示例的行数一样多。
在这些步骤中,类似
<column1>
或的引用${column1}
被视为字符串,而不是引用 .csv 中列的值。
另外(但我不寻求任何解决方案):
关于 CSV的QAF 文档说这
@dataFile:resources/data/logintestdata.csv
相当于Examples: {"dataFile":"resources/data/logintestdata.csv"}
BDD2,但第二个不会触发任何场景,好像没有给出示例一样。关于 BDD2 语法的QAF 文档说
Scenario
在使用 QAF 标签时应该使用Gherkin 关键字@dataFile
。尽管如此,这样做会给出下面的堆栈跟踪。相反,Scenario Outline
必须使用关键字。
例子
黄瓜赛跑者在src/java/com
特色在src/test/resources/features
测试数据.csv 在src/test/resources/data
踩在src/test/java/com/steps
qaf - QAF 是否支持后缀为 .xlsx 的 excel 版本
我使用后缀为“.xlsx”的excel文件,qaf使用CSVUtil分析这个文件,并抛出异常。如果我使用“.xls”文件,它运行良好。
java - 在 ivy.xml 中为 Qmetry 框架项目添加依赖项以自动化移动原生应用程序的逻辑
我正在尝试了解基于 QAF 的项目。它使用 ANT 和 Apache IVY 来管理依赖关系。在浏览 ivy.xml 时,我看到在 ivy.xml 中添加了这些依赖项。
问题:在线搜索“qaf-support-mobile”以查找 Maven 依赖项时,没有相同的搜索结果?但是这种依赖关系仍然存在于 ivy.xml 中,并且工作正常。这意味着什么?
bdd - 如何使用 QAF BDD2 框架排除 BDD 中的特定场景?
我有一个包含多个场景的功能文件,其中很少是手动的。当我运行我的场景时,我想排除手动场景。如何使用 QAF BDD2 排除手动场景?
当我运行它时,它会选择所有场景并跳过带有 @Manual 标记的场景,说 no def found 这是有效的,但我不希望这个场景运行并跳过。我想排除这种情况,我尝试在配置 xml 文件中添加排除标记,如下所示,但它不起作用。
bdd - 如何在使用 QAF BDD2 框架运行 BDD 场景时应用过滤器?
我们有功能文件,其中包含仅适用于移动和桌面的场景。我只想在回归中运行移动场景。我应该如何添加这个过滤器,以便它只选择使用 QAF BDD2 的移动场景?
当我尝试运行它时,它会运行并跳过桌面场景。我应该如何添加过滤器来运行移动场景并避免跳过桌面场景?我尝试在配置 xml 中添加以下代码不起作用
并添加
在xml中也是。过滤器不工作。请在这里帮助我。
maven - 带有 Junit 的 QAF-Cucumber:没有在 Maven 安装上执行的场景
已经使用 QAF-Cucumber 和 Junit 创建了一个项目。如果在我的 POM.xml 中添加了依赖项,则在下面
'''
'''
黄瓜跑者代码
'''
'''
在 Maven Install 上,没有选择执行任何场景,请在控制台日志下方找到
'''
'''
maven - 带有 Junit 的 QAF-Cucumber:Maven 安装在 ConfigurationManager 处抛出错误
我们正在使用 QAF-Cucumber 和 Junit,在我们的 POM.xml 中添加了相同的依赖项
并在黄瓜运行器 plugin = { "com.qmetry.qaf.automation.cucumber.QAFCucumberPlugin" } 中添加了插件信息
在进行 Maven 安装时,出现错误
'''
'''