Sikuli

Sikuli 教學 Part 1 操作介紹。

已有新版本,請看—>

前一篇Sikuli的介紹文中,我門能夠稍稍的了解到這一個轟動全世界的全新概念語言,經由我的試用與測試後,這個新興的語言目前較適合用於個人,還不夠成熟到廣泛的應用在各種電腦與儀器之中(手機或許可以)。

想試試看Sikuli的威力嗎? 還是你已經被滿滿的英文給嚇跑了呢?

別怕,因為在接下來的內容中,獨夜我將教您如何操作這款官方發表的軟體。

好的,首先呢你得要有Sikuli IDE這一套開發程式,而這是Sikuli目前唯一一套的開發程式,在我寫這一篇文章時的版本為0.9.8

我把Sikuli的開發介面分為三個部分,如下圖。

工具列

File(檔案)

在這一個選單裡面,有著最基本的功能。

依序為:開新檔案、開啟舊檔、儲存檔案、另存新檔、輸出執行檔、偏好設定、關閉頁籤、離開。

View(檢視)

裡面僅有一個選項Unit Test,我目前還不知道這是要做甚麼的,因為他在我的電腦上沒有辦法正常執行。

程式編輯區

也就是讓你輸入、編輯程式碼的區塊。

程式執行訊息區

如果你有在注意的話,每當你執行一個步驟,底下的字就會自動捲動。

這裡是要告訴你程式每一部所在做的事情,也就是他在向你報告,而當你程式出錯的時候,他也會在這裡列出錯誤的原因。

顏色意義

了解這三個主要區塊之後,我們要來了解一下Sikuli的語法顏色所代表的意義。

Sikuli的開發軟體跟許多程式語言的開發軟體一樣,會把不同功能的語法分顏色顯示,區分出這些字詞的意義,方便程式設計師的閱讀與設計。

  • 藍綠色:函數名稱,例如:click、type、wait。
  • 深藍色:Python的程式語法。
  • 暗紅色:字元敘述,例如:Hello!、123456789,目前不支援中文。
  • 官網範例。
  • 關於Python可以參考這一本電子書
  • 撰寫第一個程式

    了解以上的一些涵義之後,你是否已經等不及來弄一個了呢?

    我們這就來做這一個最簡單的程式,就給它叫做Hello,World.吧!

    接下來的動作為自動於記事本中輸入文字:Hello,World.。(不一定要在記事本,任何能輸入文字的地方都行。)

    按一下

    用滑鼠在拉出一一個框框,放開滑鼠之後,就會像下圖這樣跑出一個記事本捷徑的圖樣。

    doubleClick是把這一張圖片(記事本)點擊兩下,如果打成click的話就只有一下。

    type則是輸入後面引號內文字的意思。

    測試與執行

    點下工具列上的綠色箭頭後,視窗會消失隱藏起來,接下來你就會看到滑鼠自己動起來,並且自動輸入文字囉!

    在官網的範例是以搜尋框為例子,內容有提到一個wait的函式,這一個意思則是指等待與後面的圖片相似的圖案出來。

    儲存檔案

    當寫好了程式,或者想要放著之後在做修改的時候就需要把檔案儲存起來。

    步驟很簡單,點開File在點一下Save,即可以儲存檔案。

    檔案格式為*.sikuli

    這一個格式在Windows下似乎不能直接開啟,雖然原作者有提到可以,但我怎麼試都是長得像一個資料夾一樣。

    裡面的內容大致有:截圖、HTML網頁、.py的Python執行程式。

    開啟舊檔

    因為在Windows下,他是一個資料夾的類型,因此在開啟舊檔的時候不能點進去,僅能點一下那個檔案(不是兩下),不然你永遠都打不開這個檔案。

    匯出執行檔

    這應該是許多人最好奇的部分了吧,這功能是在0.9.7之後推出的功能,因此你必須要安裝0.9.7以上的版本才能正常運行。

    輸出之後的格式是*.skl的特殊格式,在Windows下沒有辦法直接開,判定是因為程式沒有去幫skl這個檔案登錄開啟程式是誰。

    要能開,請跟我這樣子做。

    這樣你的skl應用程式就可以直接執行了。

    但是會跑出一個在運行的CMD黑框,不知未來可不可以將它隱藏掉。

    這樣,你的第一支程式就完成囉!

    接下來你可以參考http://sikuli.org/documentation.shtml裡的資料,繼續摸索下一個步驟。

    或者,你也可以等我的下一篇文章,呵呵。

    在〈Sikuli 教學 Part 1 操作介紹。〉中有 15 則留言

    1. 之前摸了一個晚上還不知道怎麼用,現在看了比較懂了!
      只是不知道用不同台電腦效果如何!??

      1. Ubuntu 64位元的是沒辦法執行,不過前一陣子有人已經把64位元的編譯好了……
        我的文章…恩…你過獎了。

    2. 讚~
      本來想說不能直接執行
      原來可以透過這個方法去達到
      恍然大悟
      感謝~

    3. 博主你好,我现在需要用sikuli进行一些测试,但是同样出现你说的问题,unit test无法运行,点击unit test面板的那个run按钮后,窗口变小,而且就不动了,只能重启sikuli程序,不知道楼主解决这个问题没有?
      我在editor区域编写了一个简单的test case,如下:
      def testHelloWorld(self):
      print(“Hello World!”)
      就以它尝试unit test的运行,但是没有成功,忘楼主不吝赐教,万分感谢!

    4. 版主您好:
      我把SIKULI 裝置在 UBUNTU系統上執行
      但是 在執行中 程式會顯示CORE DUMPED
      程式自動關閉

      請問您有遇到這個問題麻??
      還是您知道這個問題的解法??

      煩請您教導一下 謝謝

      1. 近日我找時間看看,因為原作者自己也沒更新了,似乎有些 issue 出現,不過我沒有看就是了…

      2. 你好,晚回覆了。
        今天測試了一下並沒有出現您說的問題,請問您是如何安裝的呢?
        我是直接下指令安裝的,因為他在Debian上有發布套件,所以就…

        sudo apt-get install sikuli-ide

        開啟IDE方式:

        sikuli-ide

    您的見解

    這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料