エディタやIDEのRobot Frameworkプラグインについて

この記事は「Robot Framework Advent Calendar 2017 - Qiita」の12日目の記事です。

 
Robot Frameworkのテストケースはプレーンテキスト(.robot.txt)で書けるため、任意のエディタやIDEを使えます。

ただ、効率的にテストケースを書くためには、

  • シンタックスハイライト
  • キーワード補完
  • キーワードや変数の定義へジャンプ

などが欲しいです。

Robot Frameworkの公式サイトの Tools > Editor では、エディタやIDEプラグインについて紹介されています。
http://robotframework.org/#tools

そこで今回は、その中から

を試してみました。

 
目次

 

環境

 
ちなみに、自分は普段JetBrains系のIDEを使っているため、プラグインintellibot を使っています。

 

注意:SeleniumLibraryの補完について

2017/12/12現在、SeleniumをRobot Frameworkから扱う SeleniumLibrary の最新版(3.0.1)を参照した場合、JetBrains系のIDEVisual Studio Codeのプラグインではキーワード補完がうまく動作しないです*1

Selenium2Library 1.8.0 であればキーワード補完ができるようです。が、Python3.x系では動作しないです...

 

JetBrains系IDEプラグイン

3つのプラグインがありました。

このうち、 Robot PluginJava向けらしく、今回は試しませんでした。

 

Robot Framework Support (robot-plugin)

手元の環境で試したところ、

ができました。

一方、

がありました。

 

IntelliBot

手元の環境で試したところ、

  • シンタックスハイライト
  • キーワード補完
    • 標準ライブラリや、ユーザ定義のキーワード(日本語のキーワードもOK)
  • 定義へのジャンプ

などができました。

一方、

という問題がありました。

とはいえ、日本語のキーワード補完もできるので、こちらを使っています。

 
また、intelliBotにはオプション設定がいくつかあります。自分の場合はデフォルト設定に加え、Robot Frameworkのサンプルの書式に合わせ、 Capitalize Keywords にチェックを入れています。

これにより、 should be equalShould Be Equal として補完されます。少々挙動が怪しいですが、許容範囲内です。

 

Visual Studio Codeのプラグイン

現在は4つほど見つかりました。

Robot Framework Intellisense

手元の環境では

ができました。

一方、

  • 実装されているはずのコード補完やコードジャンプが効かない

がありました。

その他の既知の問題については、以下に記載がありました。
https://github.com/tomi/vscode-rf-language-server/blob/master/client/KNOWNISSUES.md

 

robotframework

手元の環境では

ができました。

コード補完やコードジャンプの機能は元々無いようです。

 

robot framework language

手元の環境では

ができました。

 

RobotF Extension

手元の環境では

  • 英語のキーワードを補完
  • 英語のキーワードの定義へ移動
  • 英語のキーワード名を置換

などができました。

一方、日本語については上記の機能が実行できませんでした。

また、シンタックスハイライトについては機能は実装されていないようです。説明にも、

You need to have robotframework language support for visual studio code if you want text highlighter

とありました。

 

Atomプラグイン

Atomプラグインを見たところ、階層的な依存が見られたため、すべてを入れてみます。

なお、インストール方法はこちらを参考にしました。
https://gist.github.com/Tset-Noitamotua/22e9edaade89e52fb10fcefd51a4547b

$ apm install language-robot-framework
$ apm install autocomplete-robot-framework
$ apm install hyperclick
$ apm install hyperclick-robot-framework

 
試してみたところ、

ができました。

一方、

  • 日本語のコード補完
  • キーワード定義へのジャンプ

ができませんでした。

 

その他

以下にも情報がありました。

 
ここで紹介した以外にも、エディタやIDEのRobot Frameworkのプラグインがあるため、いろいろと試してみてはいかがでしょうか。

シンタックスハイライトがあるだけでも分かりやすくなります。

*1:後述の通り、Atomプラグインでは動作しました