如何检查元素是否存在,以便在元素存在的情况下可以执行某些步骤。否则,如果元素不存在,则可以执行某些不同的步骤。
我尝试了类似下面的方法,但没有奏效:
Cypress.Commands.add('deleteSometheingFunction', () => {
cy.get('body').then($body => {
if ($body.find(selectors.ruleCard).length) {
let count = 0;
cy.get(selectors.ruleCard)
.each(() => count++)
.then(() => {
while (count-- > 0) {
cy.get('body')
// ...
// ...
}
});
}
});
});
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个简单的解决方案,它可以与简单的 javascript if else block 或then()部分合并
类似于 Webdriver 协议的以下实现:
driver.findElements(By.yourLocator).size() > 0好心提醒。谢谢
我在新的TouchActions课程中遇到错误.
TouchActions actions = new TouchActions(appiumDriver);
Run Code Online (Sandbox Code Playgroud)
运行时错误:
java.lang.ClassCastException:io.appium.java_client.ios.IOSDriver无法强制转换为org.openqa.selenium.interactions.HasTouchScreen
然而,旧的以下工作都很好:
TouchAction touchAction = new TouchAction(appiumDriver);
Run Code Online (Sandbox Code Playgroud) 我需要使用carthage来运行Appium测试.虽然Appium社区仍在努力支持XCode9.2,但我们需要依赖XCode 8.3.3 OS:MacOS High Sierria XCode版本:XCode 8.3.3 Java:1.9
但是当我运行命令brew install carthage时,我得到以下错误:
Error: Your Xcode (8.3.3) is too outdated.
Run Code Online (Sandbox Code Playgroud)
请参考下面的链接,这意味着-XCode9对Appium的支持尚未推出
[ https://github.com/facebook/WebDriverAgent/issues/639] [1 ]
请建议同时解决.谢谢
我正在开发一个 Web 测试自动化框架,并且希望通过另一个describe()cypress ..spec.js文件中存在的方法,在一个 cypress ..spec.js 文件中的块中提供一些功能?
请阅读Mocha 中提供的
共享行为工具: https://github.com/mochajs/mocha/wiki/Shared-Behaviours

我尝试过,但它不起作用。1.是否可以实现类似于Mocha Shared步骤的东西(如上所述)?2.或者有类似Cucumber-ruby/Pico-container的WORLD对象的东西吗?
好心提醒。
我的测试应用程序是基于 ReactNative 的本机应用程序(Android 和 iOS) 存在对“Metro Bundler”的依赖,以便填充数据。尝试访问 Browserstack 上的开发应用程序时,如何确保运行 Metro Bundler 依赖项?
谢谢
我们有配备 High Sierra (10.13.6) 的全新 MacBook。其他系统信息:
JAVA Version: java version "11.0.1" 2018-10-16 LTS
Run Code Online (Sandbox Code Playgroud)
Java(TM) SE 运行时环境 18.9(构建 11.0.1+13-LTS)
JAVA_HOME:/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home
当尝试打开 Android UIAutomatorViwer 时,我们收到以下错误:
/Library/Android/sdk/tools/bin/uiautomatorviewer ; exit;
Run Code Online (Sandbox Code Playgroud)
不支持 /Library/Android/sdk/tools/lib。请改用 -classpath。错误:无法创建 Java 虚拟机。错误:发生了致命异常。程序将会退出。注销 保存会话... ...复制共享历史... ...保存历史... 截断历史文件... ...完成。删除过期会话...111 已完成。
更多细节:Java 位于:/usr/bin/java
我们正在致力于多层服务驱动的项目。CRM驱动的UI项目用于设置规则引擎。(UI - 我们使用 Cypress.io 自动化此操作)
更改需要几分钟才能反映在面向最终用户的前端应用程序中(它也由 Cypress.io 框架单独涵盖)
We would like to have e2e UI tests, which starts first on Rules engine and same test should wait for few minutes & then continue to check the affect on Frontend UI
In selenium we could do something like -
driver.get("http://www.siteA.com/rules");//internal rules engine CRM
..
..
driver.manage().timeouts().implicitlyWait(5, TimeUnit.MINUTES);
..
..
driver.get("http://www.siteB.com/public");//customer facing Frontend
Run Code Online (Sandbox Code Playgroud)
Is it possible to achieve something similar in Cypress.io
Thanks
appium ×3
cypress ×3
appium-ios ×1
browserstack ×1
carthage ×1
detox ×1
ios ×1
java ×1
javascript ×1
mocha.js ×1
selenium ×1
xcode ×1