ソフトウエアテストや日常業務を自動化するTipsを集めてまとめサイトを作ろうと思っています。
以下のサイトに載っていない自動化テクがありましたら教えてください。
http://www11.atwiki.jp/autotest/pages/1.html
私だったらExcelのVBAを用いてSendkeyで プログラムしちゃいますね。
ソフトはだいたいキー操作でできるものが多いです。
それわ利用して キーを 送るソフトを作ります。
キーを送ることにより自動化します。
操作は ソフトによって違いますので、それなりに面倒ですが、応用性はありますね。
スクリプト言語(僕はRuby)を身に付けて、面倒なことを自動化しています。
あと、Emacs Lispなどソフトウェアのマクロを活用しています。
ソフトウェアテスト?テスティングフレームワークの出番でしょう。
面倒だと思ったら、どこかに自動化の手段はあるはず。
rubikitchさん、こんにちは。
URL先は範囲広すぎですよ(^^;)
>ソフトウェアテスト?テスティングフレームワークの出番でしょう。
元々このまとめサイトを作ろうと思ったのは
「リモコンの操作を自動で行う方法はないでしょうか?」と質問されたからなんですね。
なぜそれがソフトウエアテストなんだ???と言われるかも知れませんが、
リモコン機能を持った電子機器の機能試験ではテストする人がリモコン操作をして動作確認するわけです。
その時にリモコン操作をPCで制御できればその機能試験が自動化できるわけですね。
自動テストと書くと判定がどうのこうのとなるので、まず、いろんな操作を自動化するまとめを作ってみようと思ったのです。
何かいいのをご存知でしたら再回答してみてください。
後、プログラマなら何でも自動化できるけど、プログラマ以外の人にも自動化の便利さを味わってもらいたいという願望もあります。何かのアプリを使ったりマクロくらいで自動化できると嬉しいです。
システムテスト、受け入れテストの段階になるとプログラマ以外の方がテストされることが多く、そういう場所でどんどん自動化をやってもらいたいなと思いました。
後、個人的に面倒なことは嫌いなので、定型業務を自動化して楽をするのは大好きです。なので、いろんな仕事で、こんなことを自動化しているという例があれば教えてもらいたいです。
なるほど。それでは…Perl、Ruby、Python等のスクリプト言語の処理系をインストールしてみるといいでしょう。
自分でスクリプトを書けというわけではありません。
自動化の言語としてスクリプト言語は手軽なので、使っている人は多いです。
そこで、誰かが使っているスクリプトをインストールしてそのまま使えばいいでしょう。
また、言語について知識があれば、既存のスクリプトを自分用に改変できます。
# garyoさんならばすでに揃っていそう(^^;
あとはgcc等フリーなCコンパイラもあるといいです。
C言語などで制御プログラムを書いている人がいると、コンパイルして実行できます。
http://ja.wikipedia.org/wiki/GCC
というわけで、言語処理系を揃えると、世界中の人達の助けを得られると思います^^
インターネットは広い。同じことをやっている人はきっとどこかにいる。
例えば、こちらで紹介した
http://www11.atwiki.jp/autotest/pages/1.html#id_e6043237
「BASIC認証のあるサイトに自動ログイン」
にある以下の例など
良く知られたTipsですが、これを知らないとBASIC認証のサイトを開く必要のあるテストをやるときにIDとパスワードを人が入力する必要があり自動化が出来なくなるわけです。
(使えないサイトもある、Rubyなら自動化できる、Seleniumならryというのは置いておきます)
こんな感じの自動化をするのに便利なTipsを求めています。
何回でも再回答できますのでいいのがあればお願いします。
こんなのでもいいのかな?日常業務の範疇に入るか微妙かもしれませんが、MetaTraderを使った自動為替売買。あらかじめプログラムした売買ルールにしたがって為替取引をしてくれます。過去の為替変動データに自分のルールを適用して有効(儲かる)かどうかを調べることもできます。
ありがとうございます。
こんなソフトもあるんですね。知りませんでした。
参考になります。
テストの自動化ではないですが、
・ビルドの自動化
・VSS から最新ソースの取得
・自動ビルド(VB/VC++)
・更新のあったファイルのみをサーバーにアップロード
・障害管理表との連携(Excel シートから当日ビルドしたものを抽出しレポート出力(修正ファイル、修正内容等))
・ソース管理の効率化(バイナリリソースをテキストファイル出力し管理することでバージョン比較を容易に)
・Excel 内の VBA をファイル出力
・SQL Server の DB オブジェクト(DDL/DML 等)をファイル出力
と言った内容をバッチファイル&VBScriptにして、開発の自動化を図ってます。
(以前は、ビルド毎にレポートをメールするようにしてましたが、メールが多すぎるとチームの人に言われて止めました。)
■ VSS データ取得
SET VSSWORK=C:\WORK
SET VSSDIR=\\ServerName\vss\win32
SET SSDIR=\\ServerName\vss
SET SSUSER=admin
SET PATH=%VSSDIR%;%PATH%
SS workfold $/ProjectName/ %VSSWORK%\ -I-Y
CD %VSSWORK%\
SS get $/ProjectName/*.* -I-Y -R
■ VB6 (Visual Studio 6.0)
VB6 /make <ProjectName>.vbp
VB6 /? … コマンドラインビルドの使用方法が表示されます。
■ VC++6.0 (Visual Studio 6.0)
MSDEV <ProjectName>.dsw /MAKE [<target>]
MSDEV /? … コマンドラインビルドの使用方法が表示されます。
■ VC++7.1 (Visual Studio .NET 2003)
DEVENV <SolutionFile>.sln /Build SolutionConfig /Project <ProjectName>.vcproj /ProjectConfig <Name>
DEVENV /? … コマンドラインビルドの使用方法が表示されます。
■ VC++8.0 (Visual Studio 2005)
DEVENV <SolutionFile>.sln /Build SolutionConfig /Project <ProjectName>.vcproj /ProjectConfig <Name>
DEVENV /? … コマンドラインビルドの使用方法が表示されます。
■ 教えて!goo VBAのバージョン管理
For Each prj In book.VBProject.VBComponents proj.Export path & pro.Name & ".bas" Next
■ CodeProject: How to Script Out SQL Server Objects. Free source code and programming help
Set oSql = CreateObject("SQLDMO.SQLServer2") For Each sp In oSQL.Databases(database).StoredProcedures sp.Script options, sp.Name + ".sql" Next
cx20さん、色々紹介して頂きありがとうございます。
「UWSC」というソフトを使っています。
このソフトは、簡単なスクリプトを書くだけでWindowsの様々な動作を処理できるソフトです。
動作を記録することにより、スクリプトを書けない人にも容易に使えます。スクリプト作成のひな形にもなります。
多数のアプリに渡った動作や、一般的な動作を自動化したいときに大変便利なソフトです。
サンプルスクリプトも用意されてますので、まずは使ってみてはいかがでしょうか。
takntさん、こんにちは
ありがとうございます。
早速追記してみました。