亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Xamarin UI 測試給出錯誤:查詢標記(“Click Me!”)給出 0 個結果

Xamarin UI 測試給出錯誤:查詢標記(“Click Me!”)給出 0 個結果

C#
隔江千里 2023-09-16 16:00:24
我正在為示例 Xamarin 應用程序實現頁面對象模式框架,當我嘗試運行一個簡單的測試來驗證按鈕單擊時,出現以下錯誤: Query for Marked("Click Me!") 給出 0 結果。我曾嘗試在不設置框架的情況下運行測試,它運行良好,但在設置框架后,它給了我錯誤。這是我的頁面對象文件namespace SampleUITests.Pages{    using Query = System.Func<Xamarin.UITest.Queries.AppQuery, Xamarin.UITest.Queries.AppQuery>;    public class WelcomePage : BasePage    {        readonly Query ClickButton;        readonly Query Label;        protected override PlatformQuery Trait => new PlatformQuery        {            Android = x => x.Marked("Click Me!")            //Can add iOS trait as well         };        public WelcomePage()        {            if (OnAndroid)            {                Label = x => x.Marked("Welcome To Xamarin.Forms!");                ClickButton = x => x.Marked("Click Me!");            }            if (OniOS)            {                //add iOS identifiers here            }        }        public void OnClick()        {            app.Repl();            app.WaitForElement(ClickButton);            app.Tap(ClickButton);            Assert.Equals("You clicked 1 times.", app.Query(ClickButton).First().Text);        }    }}這是我的代碼,我在其中調用 Page 對象的對象并運行測試。
查看完整描述

1 回答

?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

經過進一步的調試和研究,我發現應該 ClickButton = x => x.Marked("Click Me!");通過 ID 而不是按鈕上的文本來識別,因為按鈕上的文本在單擊時會發生變化。將標識符更改為以下內容并測試通過:

ClickButton = x => x.Id("NoResourceEntry-3");



查看完整回答
反對 回復 2023-09-16
  • 1 回答
  • 0 關注
  • 105 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號