2017-02-18 68 views
0

我是Xamarin的初學者,學習使用NUnit框架編寫測試。我正在測試一個應用程序,在編寫測試用例時遇到一些問題,其中一些解決了,但我需要一些幫助來解決其他正在面臨的問題。參考官方Xamarin文檔和學習腳本,但我無法找到解決以下問題的解決方案。停止執行,直到頁面加載或xamarin中的某個時間(毫秒)

  1. 當我使用repl()和樹方法的應用程序的屏幕無法獲取的元素,如果我使用uiautomatorviewver然後獲取屏幕上的所有元素。所以要點擊這些元素,我使用TapCoordinates方法點擊元素並且工作正常。 我的問題是爲什麼我沒有得到UI中的元素,如果我使用repl和樹命令? 如果我們使用tapcoordinates該腳本是否適用於可擴展性,即其他屏幕尺寸?如果它不適用於其他屏幕尺寸,那麼如何解決這個問題?
  2. 我有腳本需要等待一段時間才能執行一個命令是否有任何方法來停止執行,直到一些微秒?

    //點擊可在

    第一個四頁Next按鈕

    app.TapCoordinates(752,1650);

    app.TapCoordinates(752,1650);

    app.TapCoordinates(752,1650);

    app.TapCoordinates(752,1650);

    //點擊啓動按鈕移動到我同意複選框

    app.TapCoordinates(752,1650);

    //點擊我同意按鈕

    app.TapCoordinates(772,1685);

    //點擊在同一屏幕上登錄按鈕,我同意複選框

    app.TapCoordinates(315,1240);

    //輸入用戶名

    app.EnterText(E => e.Css( 「輸入#cwsUID」), 「qaqa68」);

    //輸入密碼

    app.EnterText(E => e.Css( 「輸入#cwsPwd」), 「Harmony1」);

    //點擊登錄按鈕

    app.Tap(E => e.Css( 「輸入#提交按鈕」));

在上面的腳本中,我想延遲步驟之間的執行。問題是它執行的腳本,當我在設備上運行第一行執行後,它試圖執行第二行,但直到那時第二頁沒有加載,所以我不得不停止執行,直到下一頁加載或一些MS。

回答

0

您可以使用app.WaitForElement()並等待第二頁上存在的元素,然後測試將暫停,直到該頁面加載完畢。

+0

我該怎麼做?因爲當我使用repl()時,所有使用座標(前4個命令)的元素和所有元素都沒有任何id。這是啓動屏幕,將有下一個按鈕,其中沒有得到任何使用repl()的id。我經歷了可以用id,class,xpath等待元素的文檔,但是我怎麼能等待一個帶有座標的元素? – user3625533

相關問題