首页 > 解决方案 > 如何在appium中获取不可见的页面源?

问题描述

当我滑动到下一页并获取page_source时,我无法获取最后的page_source内容

那就是我只能得到当前可见的page_source

但是我想抓取很多页面,只获取可见的页面源效率低下

有什么方法可以在 appium 中的 page_source 之外隐藏?我用蟒蛇。

谢谢

标签: pythonappiumappium-androidpython-appiumappium-desktop

解决方案


需要了解您想要捕捉哪个页面 - 原生页面还是 webview?尝试获取用于调试的页面源 - https://appium.io/docs/en/commands/session/source/

也许您需要切换上下文以获取页面源?

这里我是如何实现上下文切换的。

  1. 在某些页面对象文件中,我保留了 Android(或 iOS)上下文。

     ANDROID_CONTEXTS = {
         'webview': 'WEBVIEW_ru.myapp',
         'native': 'NATIVE_APP'
     }
    
  2. 在一些测试中,我将上下文从 Native 切换到 Webview。

     @allure.link(url='https://jira.project.tech/browse/TEST-1', name='TEST-1 - Fill payment form')
     @allure.title('Fill payment form')
     def test_card_standard_1_month(appdriver):
    
         Paywall(appdriver).press_one_month_button()
         PaymentsPage(appdriver).select_card_payment()
         PaymentsPage(appdriver).press_payment_button()
    
    
         appdriver.switch_to.context(ANDROID_CONTEXTS['webview'])
         Payform(appdriver).fill_and_submit_payoform()
    
         appdriver.switch_to.context(ANDROID_CONTEXTS['native'])
    
         assert SuccessPayment(appdriver).get_successful_payment_title_text() == 'Your subscription is successful!'
    

您可以检查应用程序中的所有可用上下文。更多信息在这里-> http://appium.io/docs/en/commands/context/set-context/


推荐阅读