何でも自動化サイト
ソフトウェアテストや日常業務を自動化するTipsを集めています。
「○○で自動化できる」とか「○○は自動化できる?」という情報がありましたら掲示板までお願いします。
自動化できたら追記します。
ソフトウェアテストでは単体テストではxUnitなどのテスティングフレームワークが導入されていますが、システムテスト、受け入れテストの段階になると実際にソフトや製品を動かしてのテストになり大変です。そういった所を自動化できるTipsをまとめています。
「○○で自動化できる」とか「○○は自動化できる?」という情報がありましたら掲示板までお願いします。
自動化できたら追記します。
ソフトウェアテストでは単体テストではxUnitなどのテスティングフレームワークが導入されていますが、システムテスト、受け入れテストの段階になると実際にソフトや製品を動かしてのテストになり大変です。そういった所を自動化できるTipsをまとめています。
テスト自動化とは
色々なことを実現するために
リモコンをパソコンで操作したい
RS-232Cで38.4kHzBPSの通信をそのまま変調として使うというアイデア
55hがON,00hがOFFを意味する
リンク先ではWindows用専用ソフトとハードウエアの作り方が公開されている。部品の数も少ないので部品が入手できれば作ってみるのも楽しそう。
55hがON,00hがOFFを意味する
リンク先ではWindows用専用ソフトとハードウエアの作り方が公開されている。部品の数も少ないので部品が入手できれば作ってみるのも楽しそう。
ブラウザをパソコンで操作したい
FireFoxにSelenium IDEをプラグインで組み込むとWEBの操作を記録し、各種言語(HTML,Ruby,Java,C#,PHP,Python)でマクロとして保存し、再生できる。本格的にはSelenium Coreを使うと良いです。
Windows操作の自動化
PCで行った操作を記録して再生してくれるソフトです。
記録データはマクロとして保存されて、それを編集したりすることで色々な操作を自動で行うことができます。
記録データはマクロとして保存されて、それを編集したりすることで色々な操作を自動で行うことができます。
キーボード操作の記録、再生してくれるソフトです。
プログラムを起動したり、指定したウィンドウにキーを送るなど自動化のための機能を備えています。
プログラムを起動したり、指定したウィンドウにキーを送るなど自動化のための機能を備えています。
電話機の自動着信をするため自動で連続発信
パソコンとモデムをつないで、tetatermのマクロでATコマンドを送ると連続発信(発信先に対しては連続着信)ができます。
発信は「ATD電話番号」を送った後「CONNECT」が出るとOK、切断は「+++」を送って少し待った後「ATH」
着信は「RING」を受けた後に「ATA」、切断は上と一緒
teraTermマクロサンプル
発信は「ATD電話番号」を送った後「CONNECT」が出るとOK、切断は「+++」を送って少し待った後「ATH」
着信は「RING」を受けた後に「ATA」、切断は上と一緒
teraTermマクロサンプル
MAILの送受信を自動化したい
EXCEL VBAやWSH,Visual BASIC,ASPの VBScriptから呼び出せてメール関連の操作ができます。
メールの連続着信試験やループバック(メールをPCが受信すると試験対象に返す)、あるいは試験結果をメールで自動配信するとか連続試験でエラーが起こったら担当者にメールを送るとかアイデアしだいで色々使えるモジュールです。
Visual BASICが無くても、EXCELのマクロから呼び出したり、Windowsで標準で使えるスクリプトのWSHで動かすことができます。
メールの連続着信試験やループバック(メールをPCが受信すると試験対象に返す)、あるいは試験結果をメールで自動配信するとか連続試験でエラーが起こったら担当者にメールを送るとかアイデアしだいで色々使えるモジュールです。
Visual BASICが無くても、EXCELのマクロから呼び出したり、Windowsで標準で使えるスクリプトのWSHで動かすことができます。
FTP操作の自動化
FTPのコマンドはあらかじめテキストファイルに書いてバッチファイルとして実行することで自動実行することができて便利です。
TELNET操作の自動化
TeraTermはtelnet接続もできるので、そのままマクロが使えます。
こちらはRubyなどを使った方法
RS-232C操作の自動化
TeraTermのマクロは元々オートパイロット(自動実行)用なので、送信したり、特定の文字列を受信するまで待ったりという自動操作ができます。
シェアウエアですが、秀Termというツールもあります。
Apacheライセンス2.0の OSS な Windows 用高機能ターミナルエミュレータです.プラグインでシリアル通信もできます.
指定の時間に自動実行
Windowsの標準機能の「タスクスケジューラー」を使うと決まった日時にアプリケーションを自動起動させることができます。定型処理をさらに自動実行で無人運転できます。
サイトの自動取得
色々なフリーソフトがありますが、wgetはコマンドでサイトをローカルに保存してくれるため、自動処理でマクロなどで使う時に使いやすいです。
例えば URLをプログラムで作ってダウンロードしたり、GETやPOSTでCGIにデータを送る処理が自動化できます。
※wgetは大抵の UNIX には標準で入っているコマンドです。
#FreeBSD では /usr/ports/ftp/wget からどうぞ
例えば URLをプログラムで作ってダウンロードしたり、GETやPOSTでCGIにデータを送る処理が自動化できます。
※wgetは大抵の UNIX には標準で入っているコマンドです。
#FreeBSD では /usr/ports/ftp/wget からどうぞ
サイトに自動ログイン
色々なサイトに自動ログインするHTMLが公開されています。
こちらを参考にすれば、テスト対象のWEBアプリへの自動ログインがかけると思います。
こちらを参考にすれば、テスト対象のWEBアプリへの自動ログインがかけると思います。
BASIC認証のあるサイトに自動ログイン
BASIC認証のあるサイトを開こうとするとID,PASSWORDの入力を求められますが、自動でID,PASSWORDを入力する方法があります。
ユーザーID:User
パスワード:Password
接続先サイト:url
の場合ブラウザで以下のアドレスを開くとBASIC認証を自動入力できます。
パスワード:Password
接続先サイト:url
の場合ブラウザで以下のアドレスを開くとBASIC認証を自動入力できます。
キャッシュとかにパスワードが残ると危険なので注意。テストの自動化などで使ってください。
ファイルを関連付けされたプログラムで開く
start ファイル名 でファイルを関連付けられたプログラムで開きます。
例 start book1.xls book1.xlsをExcelで開く
ファイル(例えばExcel,ワードなど)を決められた順序で開いたりする処理の自動化で使えます。
ファイル(例えばExcel,ワードなど)を決められた順序で開いたりする処理の自動化で使えます。
リレーボード
パソコンのプリンタポートを使うと簡易のリレーボードができます。
またプリンターポートは出力だけでなく入力にも使えて自動制御には便利です。
リレーボードがあると各種電子機器を制御できます。昔はプリンターポートで同期通信用冶具を良く作ってました。
自作も簡単ですが、市販もされています。
リレーボード
EPS簡易PICシーケンサーキット
PCの拡張ボードにさす業務用のリレーボードもあります。
リレーボードがあると、1.回路を切断、接続する。2.信号を切り替えるということができます。
例えばデジタルマルチメーターをRS-232Cで制御して、その接続先をリレーで切り替えていろんな箇所の電圧を測定したりします。またスイッチを入り切りしたりするのにも使えます。便利。
またプリンターポートは出力だけでなく入力にも使えて自動制御には便利です。
リレーボードがあると各種電子機器を制御できます。昔はプリンターポートで同期通信用冶具を良く作ってました。
自作も簡単ですが、市販もされています。
リレーボード
EPS簡易PICシーケンサーキット
PCの拡張ボードにさす業務用のリレーボードもあります。
リレーボードがあると、1.回路を切断、接続する。2.信号を切り替えるということができます。
例えばデジタルマルチメーターをRS-232Cで制御して、その接続先をリレーで切り替えていろんな箇所の電圧を測定したりします。またスイッチを入り切りしたりするのにも使えます。便利。
測定器を自動制御
GPIB制御可能な測定器であればGPIBで制御できます。
さすがに業務用なのでフリーのツールはありません。
パソコンのUSBポートにGPIB機器を接続
上記のようなツールとGPIBケーブルで測定器を接続して使います。
最近はLAN、USB接続可能な測定器も増えてるみたいです。
これが出来ると、デジタルマルチメーターで電圧測定とか、パワーメーターで出力測定とか、オーディオアナライザーや周波数カウンターやファンクションジェネレーターで音声信号の計測やスペクトラムアナライザーでスプリアスの計測や、プログラマブル電源で電源制御とか、可変アッテネーターの制御とか恒温槽の制御とか色々出来ます。
さすがに業務用なのでフリーのツールはありません。
パソコンのUSBポートにGPIB機器を接続
上記のようなツールとGPIBケーブルで測定器を接続して使います。
最近はLAN、USB接続可能な測定器も増えてるみたいです。
これが出来ると、デジタルマルチメーターで電圧測定とか、パワーメーターで出力測定とか、オーディオアナライザーや周波数カウンターやファンクションジェネレーターで音声信号の計測やスペクトラムアナライザーでスプリアスの計測や、プログラマブル電源で電源制御とか、可変アッテネーターの制御とか恒温槽の制御とか色々出来ます。
オシロスコープでは、画面のコピーやトリガの設定などができます。
日本テクトロニクスは、ナショナルインスツルメンツのLabviewを使用して、独自のフリーソフトを作成し提供しています。
日本テクトロニクス
日本テクトロニクスは、ナショナルインスツルメンツのLabviewを使用して、独自のフリーソフトを作成し提供しています。
日本テクトロニクス
テスト結果自動カウント
https://sourceforge.jp/projects/testlinkjp/files/?release_id=27860#27860
testcaseCount
WORD文書に書いてある以下の文字を自動でカウントするWORDマクロです。
□←未実行のテストケース
囲みレ←実行結果がOKのテストケース
囲み×←実行結果がNGのテストケース
数えるのが面倒だったので自動化しました。
testcaseCount
WORD文書に書いてある以下の文字を自動でカウントするWORDマクロです。
□←未実行のテストケース
囲みレ←実行結果がOKのテストケース
囲み×←実行結果がNGのテストケース
数えるのが面倒だったので自動化しました。
アプリケーションのキーを自動で押す方法
アプリケーションの操作がキーのみで出来る時はSendKeysというVBの命令が便利です。
※マクロを組むのが面倒な方は以下のアプリを使う手もあります。
sendkeys ウィンドウにキー送信して他アプリを遠隔操作
※マクロを組むのが面倒な方は以下のアプリを使う手もあります。
sendkeys ウィンドウにキー送信して他アプリを遠隔操作
SENDKEY EXCEL VBA
自動化のソフトの作り方を教えてください
WHSでアプリを自動操作するサンプルソフトが掲載されています。
キー・ストロークの送信:SendKeysメソッド
WHSでアプリケーションのキーを自動で押す方法が紹介されています。
自動化のソフトの作り方を教えてください
WHSでアプリを自動操作するサンプルソフトが掲載されています。
キー・ストロークの送信:SendKeysメソッド
WHSでアプリケーションのキーを自動で押す方法が紹介されています。
テキストファイルが更新されたら何かプログラムなどを実行
テキストファイルを監視して更新時に任意の処理を実行できる「Tails」
ファイル更新時にできること
更新差分のみの別ファイル保存、メール・音声・バルーンヘルプによる通知、指定コマンドの実行など
複数ファイルを同時に監視可能
更新部分のテキストに指定した文字列が含まれている場合のみ、あるいは含まれていない時のみ処理を実行を可能にするフィルタリング機能あり。
ファイル更新時にできること
更新差分のみの別ファイル保存、メール・音声・バルーンヘルプによる通知、指定コマンドの実行など
複数ファイルを同時に監視可能
更新部分のテキストに指定した文字列が含まれている場合のみ、あるいは含まれていない時のみ処理を実行を可能にするフィルタリング機能あり。
today
57
total
77785
yesterday
96