ささいなことですが。

Windowsアプリテスト自動化ライブラリFriendly開発者の日記です。

Quick Shot を公開しました

Quick Shot っていう VisualStudio拡張を作成しました。
VisualStuido Marketplace からダウンロードできます。
marketplace.visualstudio.com

関数を単体で実行、デバッグできます。

ざっくりいうと、そんな感じです。
右クリックした関数を実行、デバッグできます。
f:id:ishikawa-tatsuya:20171012065412p:plain

対応環境

現在の対応状況です。
余裕ができたら増やして行きます。
.NetCoreと.NetStandardはちょっと遅いので(特に一回目)、何とか早くしたいと思ってます。(何とかならんかも)

【VisualStuido】

  • 2015
  • 2017

【言語】

【.net】

  • .NetFramework
  • PortableLibraly
  • .NetCore(project.jsonのないタイプ)
  • .NetStandard(project.jsonのないタイプ)
  • Sharedはソリューション内で上記から参照されている場合のみ

実行結果の表示

Enumerable以外
f:id:ishikawa-tatsuya:20171012070347p:plain
Enumerable
f:id:ishikawa-tatsuya:20171012070438p:plain
もともとLambdicSql用に作っていて、SQLの実行結果をいい感じに見れるような仕様にしました。

static以外で引数がある場合

こんな感じのモーダレスウィンドウが出てくるので、値を設定して Execute を押してください。
f:id:ishikawa-tatsuya:20171012070827p:plain
一回設定したら、VisualStudioを起動している間はキャッシュされて、それが使われます。
変えたい場合は、その関数内で右クリックして、Edit setup codes を選んでください。
f:id:ishikawa-tatsuya:20171012071318p:plain

共通初期化

各プロジェクトごとで、共通で最初に実行したい処理があれば、Edit setup codes で __CommonInitializer.Initializeに実装しておけます。
f:id:ishikawa-tatsuya:20171012071815p:plain
それから、先ほどの引数設定の時もそうでしたが、ヘルパーメソッドが使えます。

public abstract dynamic New(string name, params object[] args);

関数が属するアセンブリのinternalなクラスを生成できます。
dynamicで返ってきて、internalなプロパティやメソッドの操作ができます。

public abstract void WriteLine(string line);

ログ出力できます。

public abstract __DefaultValues DefaultValues { get; }

次に説明するデフォルト値が使えます。

デフォルト値

引数でよく使うものはデフォルト値を設定しておくと、それがデフォルト値として使われるようになります。(もちろん変えたらそちらが優先されます。)コネクションとかDbContextとか。
EntityFrameworkで使うと結構便利です。
f:id:ishikawa-tatsuya:20171012072149p:plain
こう書いておくと、Sample.TestModelを引数に取るメソッドを実行するときはデフォルトで、これを使ってくれます。もちろん手動でも使えます。
f:id:ishikawa-tatsuya:20171012072527p:plain
実行すると、SQLのログまで出力できて超便利!
f:id:ishikawa-tatsuya:20171012073119p:plain

みんな使ってね。

フィードバックお待ちしております!