2013年12月16日月曜日

自動テストプロジェクト 1

目指す環境
jenkins+selenium+uiautomaterでスマホの操作とブラウザでの操作を自動化する。

今回はselenium rcでwebの操作を自動化する話。

以下手順
①selenium IDEでシナリオの作成を行い、htmlで書き出す。
②selenium rcで書き出したファイルを実行する。

①をするにあたりツマッたところ。
・最新のselenium rcのjarファイル(selenium-server-standalone-2.38.0.jar)
だとテスト結果を書き出すファイルを作成できない。
下のやり取りもあるし、バグみたい。
https://code.google.com/p/selenium/issues/detail?id=6704
2.38はダメだよ!って書いてる。

したがい一つ前のversion(selenium-server-standalone-2.37.0.jar)を利用する。

②をするにあたりツマッたところ。
selenium IDEからの実行だと実行スピード調整できるからいいけど
rcだと早すぎてボタン見つからない、ってエラーが出る。
表示に時間がかかるところは

コマンド:pause
対象:3000

とか書いてwaitさせるようにする。



---その他---

はじめ、selenium builderを利用しようとしたが、自分の環境(windows 8 + firefox 25.0.1)だと
selenium builderが起動しなかった。
環境要因??
webdriverが使えて便利みたいだから、またしばらくしたら試してみたい。

以上です。

制御文字、ascii文字のテスト

0x00-0x1Fの範囲および0x7Fはutf-8,shift_jis,asciiともに同じ制御文字を表す。
また0x20-0x7Eは同じascii文字を表す。

mysqlで
SHOW VARIABLES LIKE 'character\_set\_%';
した結果は以下。

+--------------------------+--------+
| Variable_name            | Value  |
+--------------------------+--------+
| character_set_client     | utf8   |
| character_set_connection | utf8   |
| character_set_database   | utf8   |
| character_set_filesystem | binary |
| character_set_results    | utf8   |
| character_set_server     | utf8   |
| character_set_system     | utf8   |
+--------------------------+--------+

各テーブルのカラムはutf-8であることが分かる。

IFについてはshift_jisだが0x00-0x7Fについては
utf-8、shift_jisともに同じ文字列なので
正常に処理されるかどうかの確認は0x00-0x7Fを直接挿入すればよい。

したがい下記のようなupdate文をmysqlに対して実施後、
IFをたたけばよい。

UPDATE <テーブル名> SET <フィールド名> = CAST(0x<HEXの値> AS BINARY) WHERE ~

以上です。

jenkins(windows8)でhello world!

windows8でjenkins導入の際にハマったのでメモ。


jenkinsの導入はこのあたり参考。
http://appkitbox.com/knowledge/test/2012/11/12/jenkins-first

導入したのはjenkins-1.542

ツマッたところはシェルの実行をするところ。
上記ページ通りに実行すると下記のようなエラーが表示される。

windows環境だから/bin/shってないんだよね。
設定画面の中ほどに[ビルド]という欄の[ビルド手順の追加]ボタンをクリックし、
[シェルの実行]ボタンではなく[Windowsバッチコマンドの実行]
を選択し、コマンド欄に
echo "hellow world"で保存、実行で正常に挙動しました。



以下参考になりそうなサイトの覚書。

http://dev.classmethod.jp/tool/jenkins/jenkins-refactoring-jobs/
http://qiita.com/mechamogera/items/f689b95670127d5bf046

以上です。