首页 > 解决方案 > 是否可以使用 Appium Python 和 AWS Device Farm 为离子应用程序(在 iOS 和 Android 上运行)创建自动化测试?

问题描述

我在 MAC 上测试。所以我想有一个适用于 iOS 和 Android 的代码。

标签: python-3.xselenium-webdriveraws-device-farmpython-appium

解决方案


答案是那种。这取决于应用程序的 Android 和 iOS 版本中使用的元素是否相同。AWS Device Farm 应该允许我们使用自定义环境及其环境变量找出我们正在测试的平台。

https://docs.aws.amazon.com/devicefarm/latest/developerguide/custom-test-environment-env.html

使用该DEVICEFARM_DEVICE_PLATFORM_NAME变量应该允许我们在 yml 文件中执行 if 语句来测试正在测试的平台。然后从那里你可以执行你想要的任何测试命令。

这能回答问题吗?

[更新]

我在自定义环境模式下执行了以下命令,看起来我们可以将 python 3 与 Android 运行一起使用(不确定 iOS)。

[DeviceFarm] python -c "import sys; print(sys.version_info[:])"
(2, 7, 6, 'final', 0)
[DeviceFarm] whereis python
python: /usr/bin/python2.7-config /usr/bin/python3.4m /usr/bin/python /usr/bin/python2.7 /usr/bin/python3.4 /etc/python /etc/python2.7 /etc/python3.4 /usr/lib/python2.7 /usr/lib/python3.4 /usr/bin/X11/python2.7-config /usr/bin/X11/python3.4m /usr/bin/X11/python /usr/bin/X11/python2.7 /usr/bin/X11/python3.4 /usr/local/lib/python2.7 /usr/local/lib/python3.4 /usr/include/python2.7 /usr/share/python /usr/share/man/man1/python.1.gz
[DeviceFarm] which python
/usr/bin/python
[DeviceFarm] python --version
Python 2.7.6
[DeviceFarm] python3 -c "import sys; print(sys.version_info[:])"
(3, 4, 3, 'final', 0)
[DeviceFarm] whereis python3
python3: /usr/bin/python3 /usr/bin/python3.4m /usr/bin/python3.4 /etc/python3 /etc/python3.4 /usr/lib/python3 /usr/lib/python3.4 /usr/bin/X11/python3 /usr/bin/X11/python3.4m /usr/bin/X11/python3.4 /usr/local/lib/python3.4 /usr/share/python3 /usr/share/man/man1/python3.1.gz
[DeviceFarm] which python3
/usr/bin/python3
[DeviceFarm] python3 --version
Python 3.4.3

这不是默认选项。我认为我们只能在自定义环境模式下更改它,因为标准环境将代表您运行测试。


推荐阅读