我现在正在寻找一段时间,如何在Appium中使用TestCafe。
长话短说:测试环境是一个node.js环境;自动化测试脚本使用TestCafe以打字稿编写 ; 计划是在台式机浏览器和手机上执行这些测试。
桌面浏览器:涵盖了TestCafe和testcafe-browser-provider-selenium以及Selenium网格服务器。
移动电话:我试图通过执行使用移动电话测试,来弥补这一TestCafe连同Appium。
在这里,文档不容易找到,而且我在取得任何进展方面也没有运气。我对从Testcafes端需要执行的操作很感兴趣,因为在LAN内,我可以访问已运行的Appium服务器,并将其连接到实际设备。
是否有人使用上述工具并想分享专有技术?有人可以建议任何链接/ YouTube视频/或任何可能在这个方向上有所帮助的东西吗?TIA!
PS:我已经看到了此链接,但它没有帮助,因为它需要人机交互并且还不是完全自动化的:TestCafe移动设备测试的QR码建议
以后编辑:
使用testcafe-browser-provider-webdriverio软件包不能解决问题,因为它存在一些连接问题。因此,我重新寻找解决方案,但我拒绝相信上述方案没有选择 ...
我在这里做了一个简单的测试,但是我看到很多人都遇到了这个问题,但不幸的是,我无法找到解决方案,所以,因此,我要求你的意见。\n现在,我在链接内有这个字符串对象:
\n\n...\n<div class="price">12,45 \xe2\x82\xac</div>\n...\nRun Code Online (Sandbox Code Playgroud)\n\n我创建了这个小测试来检查字符串值:
\n\nimport { t, Selector } from \'testcafe\';\nfixture `OfferPage`.page `https://www.verivox.de/applications/broadband/#/offer?i=eyJmaWx0ZXIiOltudWxsLDE2MDAwLDEsbnVsbCwiMDIyMSIsMSwxLDEsbnVsbCwxLDEsbnVsbCwtMSxudWxsLG51bGwsInByaWNlLWFzYyIsMixudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsNl0sImRpYWxvZyI6W251bGxdLCJvZmZlckNyaXRlcmlhIjpbIjYxMzQ0NyIsIjE4MjkyIixudWxsLCIyNCIsMywyLCI1MDAwMCIsIjEwMDAwIixudWxsLG51bGwsMSxudWxsLG51bGwsbnVsbCwiMiIsMSxudWxsLCIwMjIxIixudWxsLG51bGwsbnVsbCxudWxsLG51bGwsMSw2LG51bGwsbnVsbCxudWxsXX0%3D`;\ntest(\'1\', async () => {\n const string = Selector(\'div.price\');\n await t.expect(string.innerText).eql(\'12,45 \xe2\x82\xac\');\n});\nRun Code Online (Sandbox Code Playgroud)\n\n我在终端中收到的错误是这样的:
\n\nAssertionError: expected \'12,45 \xe2\x82\xac\' to deeply equal \'12,45 \xe2\x82\xac\'\nRun Code Online (Sandbox Code Playgroud)\n\n我确实试图找到解决方案,但要么我正在更改定义const并let尝试应用其他方法,最终都会出现失败错误,并显示不同的错误消息。\n那么,我该如何解决问题,在上述情况下?\n谢谢!
编辑:感谢您的提示!我编辑了这篇文章,因为我意识到我没有提到我已经尝试过你的建议......
\n\nlet price = Selector(\'div\').withAttribute(\'class\', \'price\');\nconst result = price.parent(\'div.centered-content effective-price-wrapper\');\nconsole.log(result);\nawait t.expect(result.innerText).eql(\'12,45 \xe2\x82\xac\');\nRun Code Online (Sandbox Code Playgroud)\n\n呃:
\n\nCannot obtain information about the node because the specified selector does not match any node in the …Run Code Online (Sandbox Code Playgroud) 即使我已经阅读了TC提供的文档,但仍不确定之间有什么区别:
await t.expect(element.visible).ok();
Run Code Online (Sandbox Code Playgroud)
和
await t.expect(element.exists).ok();
Run Code Online (Sandbox Code Playgroud)
我有一种预感,以某种方式可见的包括存在检查,但是另一方面,元素可能存在,但是不在可见区域...
先感谢您
为了解决这个问题,我必须向您简要介绍:
问题:
对于移动电话设备:考虑到上述配置,你们在移动设备上使用什么来运行/执行e2e自动化测试?
考虑到上面的配置(但没有Testcafe),如何将Testcafe排除在讨论之外并再次解决问题:你们在移动设备上使用/运行/执行e2e自动化测试的方式是什么?
先感谢您