我正在使用cucumber-jvm
,并试图实现全局的@After
方法,该方法应该在所有场景的执行完成后只执行一次。方法应该退出appium驱动程序。
目前,在每个运行场景之后执行@After
钩子,这意味着每次都应该从头开始创建驱动程序,但我确实希望重用它。
任何帮助都将不胜感激
您可以尝试使用支持小cucumber的QAF,其中驱动程序管理由框架负责。它是基于TestNG构建的专用框架,用于网络、移动网络、移动本地和网络服务功能测试自动化。
使用QAF时,您不需要编写任何代码来设置/拆卸驱动程序。您可以根据需要通过测试xml配置文件和属性进行配置。可以使用属性selenium.singletone
指定行为。例如:
#will reuse driver session for close browser after all testcase configured under xml test node
selenium.singletone=true
#will teardown after each scenario/testcase
selenium.singletone=Method
#will reuse driver session for group
selenium.singletone=Groups
如果你在并行运行,你可以在同一个线程中运行的测试之间共享驱动程序会话。您可以通过执行配置实现的所有组合。
此外,您可以使用所有TestNG侦听器和注释。例如:
@Beforemethod
:在每个测试用例/场景之前调用@BeforeSuite
:在整个套件之前调用一次@BeforeTest
:为配置中的每个xml测试节点在每个xml测试节点之前调用一次@BeforeGroup
:在组中为每个组开始执行测试之前调用一次@AfterSuite
:在整个套件之后调用一次@AfterTest
:在整个xml测试节点后调用一次@AfterGroup
:对每个组在组中调用一次测试@Aftermethod
:在每个测试用例/场景之后调用用QAF推荐小cucumber
在QMetry中,我试图在一个测试用例中从appiumDriver切换到androidDriver。这是由于函数<code>驱动程序之一而产生的。IsKeyboardShowed()显示为应用程序未定义。因此需要将其更改为androidDriver并使用此功能。 当前在Qmetry项目中,对于appiumDriver,功能在application.properties文件中设置为: 现在想切换到a
我正在使用appium来自动化android应用程序。在这种情况下,无法对文本字段执行sendkeys():单击Add Customer选项。翻开了新的一页。我正在尝试在文本字段中输入值。我能够使用XPath找到页面上的文本字段。我可以点击文本字段。但是当我执行sendkeys()时,它失败了。参考下面的截图。 链接:2-添加客户-打开新页面(第2页)并尝试输入详细信息
我是一个新的Appium和尝试的android设备,所以在编写代码时,我想使用android驱动程序,但每次出现错误,请检查下面的错误 “线程”main“org.openqa.selenium.WebDriverException中出现异常:返回的值无法转换为WebElement:{element=1}生成信息:版本:”3.4.0“,修订:”unknown“,时间:”unknown“系统信息:主机
我试图执行一个测试在移动设备但我有下一个错误 Chrome版本:83.04103.101 我正在寻找解决方案,但什么也没找到。
我正在尝试用Java向下滚动APK页面。我正在使用Appium和Selenium。 我试过: 和
我已经重构了我的脚本几次,以使它工作,现在得到和错误。请谁能帮助我了解屏幕上实际显示的是什么,我哪里出了问题? 在0.014s内运行2个测试 失败(错误=2)