当前位置: 首页 > 知识库问答 >
问题:

我们如何在使用Cucumber实现的相同场景中使用Selenium WebDriver和Appium?

卢伟志
2023-03-14

我有一种情况,我需要在网站(Selenium)中执行一些步骤,在那里我执行一些步骤来创建一些数据,并将它们推送到移动应用程序。我想在移动端(Appium)上工作,并将流量领先。一旦我在手机上完成操作。我必须再次在网站上验证相同的内容。这一切都需要在一个场景中完成,因为我不希望我的场景依赖于其他场景。基本上,web流将出现在我将要写的每个场景中。

现在,当我尝试使用Background或@before来完成此操作时,甚至我的Appium对象也被实例化了,并且在WebDriver执行其步骤之前一直处于空闲状态。我希望我的AppiumDriver只在WebDriver步骤执行后被实例化。我很感激你的帮助。蒂亚!

共有1个答案

徐英锐
2023-03-14

在某个功能的任何场景之前,背景在该功能中一次。

在任何场景之前每次执行。

根据您的需求,这取决于您何时初始化AppiumDriver实例,这意味着如果您在gherkin语句中初始化appium驱动程序,那么使用before可以对您起作用,请使用

Feature: web text munger kata
  @web
  Scenario: It should process a sentence
@Before("@web")
public void beforeScenario() {
  // perform your webdriver code
}

为了更好地理解,请通过下面的链接:

https://zsoltfabok.com/blog/2012/09/cucumber-jvm-hooks/

 类似资料:
  • 这种方法的优点是,每当我添加一个新模板时,我就不需要更新特性测试。 谢谢

  • 真希望有人能帮上忙。 在cucumber的“示例”中是否可以使用两个不同的外部数据文件?如下所示: @play_movie 场景概述:在网站上播放视频 在这个场景中有一个数据文件,但是如果我想在这个场景中使用两个或更多不同的数据文件呢。有可能用cucumber做吗? 我使用Java作为编码语言。 谢谢

  • 使用Serenity-Cucumber,我正在尝试构建一个测试套件,以便我可以通过多个功能文件重用步骤定义(给定、何时、然后和...)。 例如: 上面的测试用例记录在一个用户中,我需要将其用于其他场景。例如,如果我添加了一个测试用例来更新密码,则需要在更新密码场景之前执行上述场景。 测试将需要执行登录步骤,然后更新密码步骤。从我有限的知识来看,似乎我需要在步骤。因此,在更新密码方案之前,我将有以下

  • 大家好,如果有人能帮忙的话——我正在尝试使用Cucumber标签运行一个特定的场景——这是我用来运行用Webdriver-Cucumber框架构建的测试的表达式- npx wdio运行wdio。conf.js——cucumber。tagExpression='@Tag 当我使用上面的命令时,什么也不会发生——我已经在功能级别定义了标记-“@tag”——所以我希望功能文件中的所有场景都会得到执行,但

  • 在我的cucumber jvm项目中,我希望在不使用场景大纲的情况下,使用相同的数据集执行场景10次(数据在excel中提供)。 有人能指导我如何做到这一点吗?

  • 问题内容: 如下所示,使用Python 3的模块进行并行工作非常容易。 将项目插入和检索到队列中也非常方便。 我有一个脚本在后台运行,以监听更新。现在,理论上假设,随着这些更新的到来,我将对它们进行排队,并使用进行并发处理。 现在,单独地,所有这些组件都是独立工作的,并且很有意义,但是我如何一起使用它们呢?我不知道是否有可能实时从队列中馈送工作,除非预先确定要工作的数据? 简而言之,我要做的就是,