MacacaUIFinder元素查找器

MacacaUIFinder元素查找器

1. 這是什麼?

  1. 這是一個用JavaSwing寫的Macaca元素查找器,方便測試的小夥伴們定位元素,若是以爲不錯,還請點個Star鼓勵下,嘿嘿.
    地址:https://github.com/MatrixSeven/MacacaUIFinder

2. 爲了什麼?

  1. 爲了解決在app-inspector上找到元素後,沒一次在Java中啓動Macaca(啓動連接MacacaServer的過程)定位元素巨慢,有時候一個元素定位失敗了,
    就要關閉macaca-server,而後啓動app-inspector,找到元素,而後在次切換到macaca-server.我這裏推薦啓動app-inspector後開不少
    瀏覽器tab頁面,把須要定位元素的頁面都在tab中打開,而後打開本軟件一次尋找元素,確認無誤後拷貝出可用的定位串,直接在Java的測試用例中使用,而沒必要
    爲了一個元素沒有定位到反覆重啓Macaca-client(啓動連接是一個很是耗時的動做).
  2. 還爲了什麼?爲了個人女友...也爲了更多掙扎在自動化UI測試的小夥伴們.java

    3. 爲何代碼這麼Low.

  3. 沒辦法,代碼幾乎一天抽時間寫出來的.並且Swing的佈局實在是噁心,原本想用JavaFX,可是沒有找到好的資料,不過寫完後發現了個TornadoFX,用
    Kotlin寫DSL,真是在好用了.你們能夠嘗試下android

4. 配置文件格式

  1. 具體參照官方Demo裏面的Json字段來填寫sample-java
[
    {
        "name":"iphoneX",
        "deviceName":"iPhone X",
        "bundleId":"測試包bundleId",
        "udid":"真實設備的udid",
        "platformName":"iOS"
    },
    {
        "name":"小米8",
        "deviceName":"xiaomi 8",
        "app": "apk下載路徑",
        "udid":"真實設備的udid",
        "platformName":"android"
    }
]

5. 啓動命令

直接git clone本項目或者下載MacacaElementUI-1.0.jar而後直接執行java -jar MacacaElementUI-1.0.jar食用該軟件.git

6. 關於設計

  1. 雖然很low,可是整體仍是有設計可尋
    在寫這個UI的時候爲了不層層嵌套,採用了事件發佈訂閱模式,每觸發一個按鈕/組件,
    就會發布對應的事件到事件管理者,而後事件管理者會才用線程分發的模式來分發這個事件給對應的
    訂閱者,從而完成UI/事件的處理與各個JComponent的分離.

7. 實際效果

  1. 配置頁面
    github

  2. 執行頁面
    json

8. 提示

  1. 軟件可能有未知bug.
  2. 目前處於測試階段,勿噴.

做者:Accelerator

Email:hacker.kill07@gmail.com

吾愛Java(QQ羣):170936712(點擊加入)

相關文章
相關標籤/搜索