如何在同一个项目中定义多个 Cucumber 步骤定义以测试产品变体
How to have multiple Cucumber step definitions in the same project for testing product variants
我正在 ios 和 android 从事移动应用程序的自动化项目。
我正在使用 Java-Appium-Cucumber 框架来编写测试。
下面是我的项目结构
src
android
features
step_definitions
ios
features
step_definitions
android 和 ios 我都需要一个步骤 "User logins to the app"。但是 android 和 ios 中的实现是不同的。所以我在 android > step_definitions 和 ios > step_definitions.
中写了两个步骤定义
但这会导致重复步骤定义错误。
PS:
我不想像 if(android) {doAndroidWay()} else (doIOSWay) 这样的单步定义,因为那样我就必须检查平台所有方法。
我不想像 'User logs into the app in android' 和 'User logs into the app in ios'
那样有多个步骤
有没有其他方法可以消除重复步骤定义错误?告诉黄瓜只在 android > step_definitions 中寻找步骤,当 运行 来自 android > features ?
的场景时
感谢任何帮助。
如果您在 android 和 ios 之间没有任何共同的 stepdefinition 代码,则使用 glue 选项告诉各自的运行器在子文件夹中查找 stepdef 代码。 android 使用 'glue="android.step_definitions"',ios 使用 'glue="ios.step_definitions"'
我正在 ios 和 android 从事移动应用程序的自动化项目。 我正在使用 Java-Appium-Cucumber 框架来编写测试。
下面是我的项目结构
src
android
features
step_definitions
ios
features
step_definitions
android 和 ios 我都需要一个步骤 "User logins to the app"。但是 android 和 ios 中的实现是不同的。所以我在 android > step_definitions 和 ios > step_definitions.
中写了两个步骤定义但这会导致重复步骤定义错误。
PS:
我不想像 if(android) {doAndroidWay()} else (doIOSWay) 这样的单步定义,因为那样我就必须检查平台所有方法。
我不想像 'User logs into the app in android' 和 'User logs into the app in ios'
那样有多个步骤
有没有其他方法可以消除重复步骤定义错误?告诉黄瓜只在 android > step_definitions 中寻找步骤,当 运行 来自 android > features ?
的场景时感谢任何帮助。
如果您在 android 和 ios 之间没有任何共同的 stepdefinition 代码,则使用 glue 选项告诉各自的运行器在子文件夹中查找 stepdef 代码。 android 使用 'glue="android.step_definitions"',ios 使用 'glue="ios.step_definitions"'