我将假设您已经下载了Python SDK,已经配置了代理和开发人员令牌,并且代理正在运行。如果没有,您可以在这篇文章中阅读如何做。另外,我将假设您已经创建并启动了运行Android的模拟器。 让我们以这个测试为例: import pytest from appium import webdriver from tests.pageobjects.web import LoginPage, ProfilePage @pytest.fixture def driver(): desired_capabilities = { "udid": "emulator-5554", "browserName": "chrome", "platformName": "Android", } driver = webdriver.Remote(desired_capabilities=desired_capabilities) yield driver driver.quit() def test_example_on_chrome_on_android(driver): LoginPage(driver).open().login_as("John Smith", "12345") profile_page = ProfilePage(driver) profile_page.update_profile( "United States", "Street name and number", "john.smith@somewhere.tld", "+1 555 555 55", ) assert profile_page.saved_message_is_displayed() is True 如您所定义的 要将这个Appium测试变成一个基于TestProject的测试,类似于基于Selenium的测试,您需要做的就是更改此import语句: from appium import webdriver # 到 from src.testproject.sdk.drivers import webdriver 另外:您不再需要运行自己的Appium服务器,因为TestProject Agent可以为您充当Appium服务器! 运行此测试时,它将在您的Android模拟器上启动Chrome浏览器并运行该测试: 测试完成执行后,SDK将报告发送到代理,代理将依次在TestProject平台上创建新的测试报告: 使用真实设备在iOS上运行本机应用测试如您先前所读,TestProject Python SDK同时支持Android和iOS。让我们看一个示例测试,该示例测试在真实iPhone上运行的本机iOS应用程序: import pytest from src.testproject.sdk.drivers import webdriver from tests.pageobjects.android import LoginPage, ProfilePage @pytest.fixture def driver(): desired_capabilities = { "udid": "<my_device_udid_here>", "deviceName": "iPhone van Bas", "browserName": "", "platformName": "iOS", "bundleId": "io.testproject.Demo", } driver = webdriver.Remote(desired_capabilities=desired_capabilities) yield driver driver.close_app() driver.quit() def test_example_on_native_ios_app(driver): LoginPage(driver).login_as("John Smith", "12345") profile_page = ProfilePage(driver) profile_page.update_profile( "United States", "Street name and number", "john.smith@somewhere.tld", "+1 555 555 55", ) assert profile_page.saved_message_is_displayed() is True 没有指定浏览器 fact 有趣的事实:此处使用的iOS设备已连接到Windows计算机!通过TestProject,您可以在iOS设备上运行测试,而无需运行macOS或XCode,也无需自己运行Appium服务器。 正如我们在发送到TestProject的报告中看到的那样,该测试也通过了: 如您所见,使用TestProject Python SDK(或 Java或C# SDK),您可以轻松地将现有基于Appium的测试转换为TestProject驱动的测试,无论它们是用于Android还是iOS,都可以使用仿真器或真实设备,在macOS,Linux和Windows上测试移动Web或本机应用程序。 |
|