chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用DevExpress Winforms實現(xiàn)UI自動化

Wildesbeast ? 來源:今日頭條 ? 作者:慧都科技 ? 2020-02-07 13:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

DevExpress Winforms Controls內(nèi)置140多個UI控件和庫,完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序。無論是Office風(fēng)格的界面,還是分析處理大批量的業(yè)務(wù)數(shù)據(jù),DevExpress WinForms都能輕松勝任。DevExpress廣泛應(yīng)用于ECM企業(yè)內(nèi)容管理、 成本管控、進程監(jiān)督、生產(chǎn)調(diào)度,在企業(yè)/政務(wù)信息化管理中占據(jù)一席重要之地。

【適用范圍】:各種桌面、Web應(yīng)用程序開發(fā),尤其是WinForms應(yīng)用程序開發(fā)。

點擊獲取DevExpress v19.2完整版試用下載:https://www.evget.com/product/740/download

在針對Visual Studio 2019的發(fā)行說明中,Microsoft 宣布Coded UI測試的生命周期終止。

Microsoft建議將Appium with WinAppDriver 一起用于測試桌面和UWP應(yīng)用,此消息引起廣大用戶的興趣:DevExpress控件是否與Appium兼容?經(jīng)過DevExpress團隊的反復(fù)測試,答案是肯定的!使用Appium創(chuàng)建自動UI測試的方法如下。

1. 跳轉(zhuǎn)到 https://github.com/Microsoft/WinAppDriver/releases然后下載兩個APP,

WinAppDriver- 允許您運行測試,需要安裝。

WinAppDriver UI Recorder- 允許您在運行時記錄測試,不需要安裝 - 將下載的存檔解壓到任何文件夾。

2. 在Windows中打開Developer Mode。

3. 以管理員身份運行WinAppDriver.exe并使其運行,請注意應(yīng)用程序正在偵聽的地址,稍后您將需要它。

4. 打開您要測試的Visual Studio解決方案,或創(chuàng)建一個新的示例解決方案。

5. 將新的單元測試項目添加到解決方案。

6. 在Solution Explorer中右鍵單擊Unit Test project,然后選擇“Manage NuGet Packages…”,安裝最新的穩(wěn)定Appium.WebDriver程序包。

7. 打開Unit Test項目的UnitTest1.cs文件,并添加兩個類:MainDemoSession(定義開始和結(jié)束測試會話的方法)和Helper(包含查找被測試的UI元素的方法),將步驟3中的地址用作WindowsApplicationDriverUrl值。

public class MainDemoSession{protected const string WindowsApplicationDriverUrl = "http://127.0.0.1:4723";private const string ApplicationPath = @"C:\Users\...\AppiumTest.exe"; protected static WindowsDriver desktopSession; public static void Setup(TestContext context) { // Launch a new instance of the tested application if (desktopSession == null) { // Create a new session to launch the tested application AppiumOptions options = new AppiumOptions(); options.AddAdditionalCapability("app", ApplicationPath); desktopSession = new WindowsDriver( new Uri(WindowsApplicationDriverUrl), options); Assert.IsNotNull(desktopSession); Assert.IsNotNull(desktopSession.SessionId); // Set implicit timeout to 1.5 seconds //to make element search to retry every 500 ms //for at most three times desktopSession.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(1.5); } } public static void TearDown() { // Close the application and delete the session if (desktopSession != null) { desktopSession.Close(); desktopSession.Quit(); desktopSession = null; } } } public static class Helper { public static WindowsElement FindElementByAbsoluteXPath( this WindowsDriver desktopSession, string xPath, int nTryCount = 3) { WindowsElement uiTarget = null; while (nTryCount-- > 0) { try { uiTarget = desktopSession.FindElementByXPath(xPath); } catch { } if (uiTarget != null) { break; } else { System.Threading.Thread.Sleep(400); } } return uiTarget; } }

8. 修改自動生成的UnitTest1類,如下所示:

[TestClass]public class UnitTest1 : MainDemoSession{[TestMethod]public void TestMethod1(){//test start //test finish } [ClassInitialize] public static void ClassInitialize(TestContext context) { Setup(context); } [ClassCleanup] public static void ClassCleanup() { TearDown(); } }

9. 運行您的應(yīng)用程序,并將其拖到主系統(tǒng)顯示屏上(如果您具有多屏幕設(shè)置)。

10. 啟動WinAppDriver UI Recorder然后點擊“Record”, 將鼠標懸停在要與之交互的第一個UI元素上,然后等待它開始閃爍藍色。Recorder的狀態(tài)欄會將其文本從“Active”更改為“XPath Ready”。

11. 當該元素閃爍時,recorder已準備就緒,您可以執(zhí)行UI操作:單擊此元素、將其拖動、輸入新值等。完成此元素后,將鼠標懸停在另一個UI元素上,等待 recorder的確認并重復(fù)該過程。

12. 記錄了要重現(xiàn)的一系列步驟后,請在recorder中單擊“Pause”,您可以打開actions selector確保已記錄所有UI操作。

13. 單擊“Generate and copy C# code to Clipboard”按鈕來復(fù)制所有記錄的操作代碼,將此代碼粘貼到UnitTest1.TestMethod1方法中。 例如,下面的代碼選擇“Job”標簽。

[TestMethod] public void TestMethod1() { //test start // LeftClick on TabItem "Job" at (20,31) Console.WriteLine("LeftClick on TabItem "Job" at (20,31)"); string xpath_LeftClickTabItemJob_20_31 = "/Pane\[@ClassName="#32769"\][@Name="Desktop 1"]/Window\[starts-with(@AutomationId,"XtraForm")]/Pane[@Name="The XtraLayoutControl"\][starts-with(@AutomationId,"dataLayoutControl")]/Table[@Name="Root"]/Table[@Name="autoGeneratedGroup0"]/Table[@Name="Root"]/Table[@Name="Photo"]/Table[@Name="FirstAndLastName"]/Tab[@Name="Tabs"]/TabItem[@Name="Job"]"; var winElem_LeftClickTabItemJob_20_31 = desktopSession.FindElementByAbsoluteXPath(xpath_LeftClickTabItemJob_20_31); if (winElem_LeftClickTabItemJob_20_31 != null) { winElem_LeftClickTabItemJob_20_31.Click(); } else { Console.WriteLine($"Failed to find element using xpath: {xpath_LeftClickTabItemJob_20_31}"); return; } //test finish }

14. 在內(nèi)部測試期間,自動生成的代碼可能無法通過其完整路徑找到UI元素:

/Pane\[@ClassName="#32769"\][@Name="Desktop 1"]/Window[starts-with…

如果發(fā)生這種情況,請縮短所有元素路徑,使其以“ / Window”開頭。

string xpath_LeftClickTabItemJob_20_31 = "/Window[starts-with(@AutomationId...";

此外,您可以使用Assert.Fail而不是Console.WriteLine來調(diào)試測試(如果找不到UI元素,則可以)。

Assert.Fail($"Failed to find element...");

15. 在Visual Studio中右鍵單擊Unit Test project,然后單擊“Run Tests”。測試將啟動您的應(yīng)用程序,重復(fù)所有記錄的步驟,然后關(guān)閉應(yīng)用程序。 所有測試操作都記錄在步驟3中啟動的WinAppDriver控制臺中。

您可以通過與Coded UI相同的方式啟動Appium測試,唯一的區(qū)別是您需要在測試執(zhí)行計算機上運行WinAppDriver。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Web
    Web
    +關(guān)注

    關(guān)注

    2

    文章

    1303

    瀏覽量

    73952
  • office
    +關(guān)注

    關(guān)注

    1

    文章

    110

    瀏覽量

    35759
  • ECM
    ECM
    +關(guān)注

    關(guān)注

    3

    文章

    61

    瀏覽量

    28712
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    沉降儀如何打造無人值守實現(xiàn)自動化監(jiān)測?

    自動化系統(tǒng)的深度融合,為實現(xiàn)無人值守的遠程監(jiān)測提供了堅實的技術(shù)基礎(chǔ)。實現(xiàn)自動化的核心在于沉降儀的數(shù)字輸出能力。以磁致式沉降儀為例,其輸出
    的頭像 發(fā)表于 12-25 15:53 ?175次閱讀
    沉降儀如何打造無人值守<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>自動化</b>監(jiān)測?

    羅克韋爾自動化邀您共赴2025年自動化博覽會

    11 月 17 - 20 日,作為工業(yè)自動化、信息和數(shù)字轉(zhuǎn)型領(lǐng)域的全球領(lǐng)先企業(yè)之一,羅克韋爾自動化將在芝加哥舉辦的 2025 年自動化
    的頭像 發(fā)表于 11-17 17:54 ?1839次閱讀

    訂單退款自動化接口:高效處理退款流程的技術(shù)實現(xiàn)

    ? ?在現(xiàn)代電子商務(wù)系統(tǒng)中,訂單退款是常見但繁瑣的操作。手動處理退款不僅耗時,還容易出錯。自動化退款接口通過API集成,能顯著提升效率、減少人工干預(yù),并確保準確性。本文將逐步介紹如何設(shè)計并實現(xiàn)一個
    的頭像 發(fā)表于 10-21 10:41 ?305次閱讀
    訂單退款<b class='flag-5'>自動化</b>接口:高效處理退款流程的技術(shù)<b class='flag-5'>實現(xiàn)</b>

    工業(yè)自動化的意義在哪

    工業(yè)自動化是現(xiàn)代工業(yè)發(fā)展的核心驅(qū)動力,其意義不僅體現(xiàn)在生產(chǎn)效率的提升,更深刻改變了產(chǎn)業(yè)結(jié)構(gòu)、經(jīng)濟模式和社會生活方式。它通過融合機械、電子、計算機、通信等技術(shù),實現(xiàn)生產(chǎn)過程的智能、柔性
    的頭像 發(fā)表于 09-23 17:32 ?860次閱讀

    使用Ansible實現(xiàn)大規(guī)模集群自動化部署

    當你面對1000+服務(wù)器需要部署時,你還在一臺臺手工操作嗎?本文將揭秘如何用Ansible實現(xiàn)大規(guī)模集群的自動化部署,讓運維效率提升10倍!
    的頭像 發(fā)表于 08-27 14:41 ?692次閱讀

    自動化測試平臺ATECLOUD推出AI算法功能

    作為納米軟件自主研發(fā)的自動化測試平臺,ATECLOUD 始終致力于為用戶提供高效優(yōu)質(zhì)的測試解決方案。面對5G、AI等前沿技術(shù)的迭代發(fā)展,平臺深度融合新技術(shù)持續(xù)升級測試能力,最新推出的AI算法功能更在自動化測試領(lǐng)域實現(xiàn)突破性創(chuàng)新。
    的頭像 發(fā)表于 07-22 16:10 ?667次閱讀
    <b class='flag-5'>自動化</b>測試平臺ATECLOUD推出AI算法功能

    電源模塊在配電自動化終端中的應(yīng)用

    配電終端設(shè)備的可靠性和自動化程度,直接影響到整個配電自動化系統(tǒng)的可靠性和自動化水平。由于配電終端設(shè)備一般安裝于戶外或比較偏僻的地方,不可能有直流電源提供,因此,配電網(wǎng)終端設(shè)備的直流供電方式成為各配網(wǎng)
    的頭像 發(fā)表于 07-22 10:20 ?2.2w次閱讀
    電源模塊在配電<b class='flag-5'>自動化</b>終端中的應(yīng)用

    自動化計算機的功能與用途

    任務(wù)都是通過使用控制機械和流程的自動化計算機來實現(xiàn)自動化的。什么是自動化計算機?自動化計算機是工業(yè)級計算機,其設(shè)計堅固,能夠在常規(guī)臺式計算機
    的頭像 發(fā)表于 07-15 16:32 ?639次閱讀
    <b class='flag-5'>自動化</b>計算機的功能與用途

    車機交互測試自動化實現(xiàn)路徑與案例分析

    測試設(shè)備是車機交互測試自動化實現(xiàn)的核心支撐,通過合理選型、部署和應(yīng)用北京沃華慧通測控技術(shù)有限公司汽車測試設(shè)備,結(jié)合科學(xué)的實現(xiàn)路徑和豐富的案例經(jīng)驗,能夠有效提高車機交互測試的效率和質(zhì)量,推動車機系統(tǒng)的不斷優(yōu)化和升級,為用戶帶來更加
    的頭像 發(fā)表于 07-10 09:24 ?1268次閱讀
    車機交互測試<b class='flag-5'>自動化</b><b class='flag-5'>實現(xiàn)</b>路徑與案例分析

    RFID在圖書館自動化中的應(yīng)用

    RFID系統(tǒng),可以實時獲取圖書的位置和狀態(tài)信息,便于及時調(diào)整管理計劃。自動化:RFID可以與自動管理系統(tǒng)結(jié)合,實現(xiàn)借還書的自動化,減少人力成本。具體應(yīng)用場景1.圖書
    的頭像 發(fā)表于 05-27 17:15 ?619次閱讀
    RFID在圖書館<b class='flag-5'>自動化</b>中的應(yīng)用

    APP自動化測試框架

    APP自動化測試框架是一套結(jié)合工具鏈、設(shè)計模式和技術(shù)規(guī)范的集成解決方案。以下是基于主流技術(shù)實踐的核心要點總結(jié): 一、核心模塊構(gòu)成 環(huán)境管理? 支持物理機/虛擬機/容器部署,集成ADB、Appium
    的頭像 發(fā)表于 05-07 07:35 ?565次閱讀
    APP<b class='flag-5'>自動化</b>測試框架

    工業(yè)DTU對工業(yè)自動化通信格局的重塑

    隨著工業(yè)4.0和智能制造的快速發(fā)展,工業(yè)自動化系統(tǒng)對通信技術(shù)的要求越來越高。工業(yè)數(shù)據(jù)傳輸單元(DTU,DataTransferUnit)作為一種新興的通信設(shè)備,正在逐步重塑工業(yè)自動化通信格局,為工業(yè)
    的頭像 發(fā)表于 03-28 14:09 ?751次閱讀
    工業(yè)DTU對工業(yè)<b class='flag-5'>自動化</b>通信格局的重塑

    HFSS 自動化建模工具

    因工作需求,自己寫的HFSS參數(shù)自動化建模工具,目前只實現(xiàn)了常用的四種模型,可定制,如需可聯(lián)系 qq:1300038043 附件下載鏈接:https://pan.baidu.com/s/1TVeTTFiJw-pxSyT1AT
    發(fā)表于 02-27 17:44

    環(huán)球儀器Uflex靈活自動化平臺概述

    在生產(chǎn)廠房全面走向自動化之際,最令廠家頭痛的莫過于生產(chǎn)線上一些難以自動化的組裝工序。若以功能單一的自動化平臺來解決,投資可能沒有保障。環(huán)球儀器的Uflex靈活自動化平臺提供一個完美的解
    的頭像 發(fā)表于 02-08 09:13 ?1039次閱讀
    環(huán)球儀器Uflex靈活<b class='flag-5'>自動化</b>平臺概述

    如何實現(xiàn)跌落式熔斷器的自動化控制

    實現(xiàn)跌落式熔斷器的自動化控制,可以通過以下技術(shù)和步驟進行: 一、技術(shù)原理 跌落式熔斷器的工作原理是將熔絲穿入熔管內(nèi),當被保護線路發(fā)生故障時,故障電流使熔絲熔斷,形成電弧。消弧管在電弧高溫作用下分解
    的頭像 發(fā)表于 02-05 10:46 ?1328次閱讀