サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ドラクエ3
qiita.com/mima_ita
はじめに パターンによるソフトウェア構成管理はソフトウェア開発課題のシリーズとして日本では2006年、原著は2002年に発売されたソフトウェアの構成管理に関する書籍です。 パターンによるソフトウェア構成管理 (IT Architects’ Archive―ソフトウェア開発の課題) ステファン・P・バーチャック (著), ブレッド・アップルトン (著), 宗 雅彦 (翻訳) https://www.amazon.co.jp/dp/4798112593 発表時期からわかる通り、当時は今のようにとりあえずGitかSvnでも使っていればいいだろうという時代ではありませんでした。様々なバージョン管理ツールが群雄割拠をつげており、それぞれ一長一短ありました。その中で「ツールの使い方」ではなく構成管理をどうすべきかを論じる本著は貴重な資料でした。 本書では構成管理を成功に導くいくつかのパターンが紹介され
Jestとは JestはJavaScriptの単体テストのフレームワークです。 https://jestjs.io/ja/ テストランナーだけでなく、モック機能やカバレッジの取得を使用することができます。npmのトレンドとしては2019年から伸びてmochaを超えるものとなっています。 https://www.npmtrends.com/jest-vs-jasmine-vs-mocha-vs-qunit この記事は公式のサンプルコードを弄ってその挙動を確認するものとなっています。 また、実験環境は以下の通りです。 OS:MacOS Catalina 10.15.6 node.js: v14.10.1 簡単なはじめ方 jestを使用するためにnode.jsのプロジェクトを以下のように作成します。 # package.jsonを作成する npm init -y # package.jsonにj
e-Statでは政府が提供する様々な統計データをXMLやJSONで取得するAPIを使用できます。 APIの利用登録と動作テスト 1.下記のURLからAPIの利用申請をします。 http://www.e-stat.go.jp/api/regist-login/ 2.APIを登録申請が完了すると「メールアドレス」と「パスワード」でログインが可能になります。 3.ログイン後、再度ログイン画面に行くと「利用者情報変更/削除」と「アプリケーションIDの取得」がおこなえる画面が表示されます。 利用者情報変更では、登録時に指定したデータを変更することができます。 4.appIDの発行を行う。 「アプリケーションIDの取得」画面で名称とURLを入力して、「発行」ボタンを押すとappIDが取得できます。 urlは存在しない場合は「http://localhost/」等を入力してください。 appIDは3個ま
コンテキストメニューまたは、メニューバーのRubberduckメニューからRefactorを実行することでリファクタリングが行えます。 下記の例では関数名を変更しています。 他にも引数の削除や順番が行えます。 テスト用のモジュールとメソッドの追加方法 Rubberduck→Unit Tests→Test Moduleでテストモジュールを追加、Rubberduck→Unit Tests→Test Methodでテストメソッドを追加します。 テストモジュール中の「'@TestMethod」というコメントが記載された関数がテストメソッドとなります。 テスト実行例 まず以下のようなテストモジュールを用意します。 Option Explicit Option Private Module '@TestModule '@Folder("Tests") Private Assert As Object
まえがき どこの環境でもだいたいはいっているWinSCPですが、これをコマンドラインベースで自動操作できることを知っている人は、そんなに多くありません。 今回はWinSCPの自動化について話をしようと思います。 主な話題としては以下の通りです。 ・CUIでのWinSCPの実行 ・スクリプトファイルを利用したWinSCPの実行 ・PowerShellからのWinSCPの実行 コマンドラインでの実行方法 CUIでのWinSCPの実行 WinSCPをインストールしたディレクトリの「WinSCP.com」を実行するか「WinSCP.exe」に-consoleオプションを付与して実行します。 "C:\Program Files (x86)\WinSCP\winscp.com" or "C:\Program Files (x86)\WinSCP\winscp.exe" /console 以下のようなコ
はじめに PDFを機械翻訳する方法は色々ありますが、レイアウトを維持して翻訳をするという意味ではDocTranslatorが使いやすいです。 しかしながら、サイズの制限があるらしく、PDF32000_2008.pdfなどは翻訳に失敗してしまいます。 今回はレイアウトを崩さずに翻訳する方法を考えてみます。 なお、結論からいうと、今回説明する方法は面倒くさいので、別の方法でいいなら別の方法をお勧めします。 PDFに注釈として訳を埋め込む DocTranslatorのように本文にレイアウトを崩さずに訳を埋め込めるならば、いいのですが、色々うまくいかなと予測できるので、注釈として訳を埋め込むことにします。 たとえば、PDF32000_2008.pdfを翻訳した場合の結果は以下の通りになります。 http://needtec.sakura.ne.jp/doc/tmp/output.pdf ※Adob
まえがき Pythonを使えばテキストを含むPDFの解析は簡単だ・・・ 文字情報が含まれていればPDFから文字やテーブルの情報を抽出して、そのデータを利用してWebサービスなんて簡単につくれるぜ、ひゃっほーいっという安易な思考の結果が以下になります。 新型コロナウイルス感染症の感染拡大を踏まえたオンライン診療のPDFデータを利用してみた https://qiita.com/mima_ita/items/c0f28323f330c5f59ed8 ここで得た最も重要な知見は「PDFデータをコンピュータで読むのはやめとけ、あれは人間が読むものだ」ということと、わずかなPythonを使用したPDFの取り扱いの方法です。 今回はそのわずかなPythonを使用したPDFの取り扱い方法について説明します。 なお、実験環境はWindow10のPython 3.7.5 64bitになります。 operand
はじめに 新型コロナウイルス感染症の感染拡大を踏まえたオンライン診療の対応機関一覧リストが以下に公開されています。 これを用いて、近所のオンライン診療の対応機関がどんな感じになっているか取り出す処理を作成してみます。 これにより政府の提供するPDFのデータを使用することができるかも合わせて検討してみます。 成果物 https://needtec.sakura.ne.jp/yakusyopdf/ https://github.com/mima3/yakusyopdf 経度と緯度を入力して検索すると・・・ 近くの病院の一覧が表示されるので、行をクリックします。 すると地図に詳細情報が表示されます。 説明 処理の流れ (1)新型コロナウイルス感染症の感染拡大を踏まえたオンライン診療の対応機関一覧リストのホームページからPDFを取得します。 (2)PDFからテーブル情報を抜き出してJSONに変換し
はじめに 一つのサービスに依存するのは、リスクだと思うのでQiitaの記事をGitHubに移行するスクリプトを書いてみます。 なお、私の記事は以下のようになりました。 https://github.com/mima3/note (2020/3/29 追記) WordPressへの移行は以下を参照してください。 https://qiita.com/mima_ita/items/f4beb31c0ba65e6ab409 動作環境 Python 3.7.4 Windows10 事前準備 Qiitaのアクセストークンを取得します。 (1)設定画面のアプリケーションタブから「新しいトークンを発行する」を押下します。 (2)読み取り権限を付けて「発行」を押下します (3)アクセストークンをメモしておきます 使用方法 (1)以下のリポジトリからスクリプトを取得する https://github.com/
概要 Sikuli(シークリー)は画像認識を用いて、Windows/Mac/Linuxの画面を操作することが可能です。 http://sikulix.com/ なお、語源としてはインディアンの文化の奉納物で未知のものを見て理解する力という意味とのことです。 今回は1.1.4を使って検証しますが、最新バージョンは現時点で色々とドキュメントと実装の食い違いがあったり、最新のコードをビルドしないと動かなかったりするので、画像認識で自動操作したいだけの人は1.1.3を使用した方がいいと思います。 また、今回は「アカネチャンカワイイヤッタ-」よりちょっと詳しく記載してます。 現在のリリース状況 2019/10時点のリリースの状況は以下の通りになっています。 本記事は1.1.4時点の記事なので注意してください。 ※以下を読んで軽く使った感じだと、1.1.4と2.0で大きな違いは感じませんでしたが・・・
はじめに 2019/11時点でGitHubにあるWYSIWYGタグでスターが多いライブラリを調べてみます。 Quill 概要 GitHub https://github.com/quilljs/quill Demo https://quilljs.com/ ・テーブルの作成はできないようです(ver2.x用にテーブル追加のプラグインはある) ・クリップボードを経由して画像のアップロードが可能です。 ・highlight.jsを使用してコードブロックのハイライトが可能のようです 対象ブラウザ IEは非推奨のようです。 ライセンス BSD 3-clause サンプル 1.3.7のサンプル <!doctype html> <html> <head> <meta charset="utf-8"> <title>Test Quill</title> <!-- highlight.js を使う場合はq
※基本的にWindows10+PowerShell5.1で確認していますが、シンボリックリンク、ハードリンク等の挙動が変わりそうな箇所はCentOS+PowerShell7.0でも確認してます。 やりたい事リスト やりたい事 Windows10 コマンドプロンプト CentOS7 シェル Powershell
はじめに コンピュータを使用した多くの操作は自動化することができます。 この技術は運用や試験工程で大きな力を発揮します。 自動化の技術は一般的なソフトウェア技術者が、ちょっと努力すれば普通に身につく能力であって、特別なものではありません。 ただ残念なことにこれらの技術はあまり知られておらず、活用されているとは言い難い現場も多いです。 ユーザー企業さんができないのはしょうがないですが、ITで飯を食べているはずの自称IT企業においても、自動化を拒否して手動で心をこめて作業をしてリソースを無駄にするケースを稀によく見かけます。 自動化の拒否が「余剰人員のための経済対策だよ!」という身もふたもない理由でないと信じて今回は、Windowsでの作業の自動化についてお話しようと思います。 自動化のテクニックの話をする前に Windowsの自動化のテクニックの話をする前にちょっと重要なことを先に述べておき
はじめに ちょっと前に20年物のC言語で作られたシステムのテストを色々改善しようとしてみたので、この時に得たちょっとした知見を書いていこうと思います。 ※注意 記事を書くために自分のパソコンで当時を思い出しながら環境を作っているので、実際、実務でやった環境やバージョンとは違います。 また、この記事にはいくつかコードがでてきますが、すべて記事を書くために考えた疑似的な例にすぎません。 単体テスト用のテストコードの作成 20年も動いているシステムだと、もはや誰にも意味はわからんが、既存の挙動を変えてはいけない箇所がいくつもあります。 そういう箇所に手を入れざるを得ないときに、有効な方法として以下のような方法があります。 まず、既存のコードに対するテストコードを記載します。そして全て合格することを確認してから、少しづつ機能を拡張していきます。 これにより、新規機能追加が既存の機能を壊していないこ
まえがき たいていのWindowsの画面の自動操作は以下で紹介した方法で可能になっています。 RPA九人衆による「アカネチャンカワイイヤッタ」の自動化 https://qiita.com/mima_ita/items/d4655de865f30bb51c65 実は厄介なケースがあって、それはJavaで画面を作っているケースです。 今回はJavaで作られた画面を例に自動操作が可能かどうか検討してみましょう。 実験環境 Windows10 Home Java 8 Visual Studio 2019 PowerShell 5.1 UiPath 2019.10.0-beta 111 Javaの画面の作成方法 Javaで画面を作成する主な方法としてSwingを使用する場合と、JavaFxを使用する場合があります。 Swingで作成した画面 下記のページを参考に簡単なSwingの画面を作成します。
前書き むかしむかし、ゆっくりさんにPowerPointを使って喋らせた動画を作成したことがあります。 Powerpointを使用したゆっくり動画の作成 https://t.co/nCQIQI6p7M #sm18775987 #ニコニコ動画 — m.ita (@mima_ita) August 2, 2019 今回は、令和の時代になったので、ゆっくりさんには卒業してもらって、VOICEROIDE2の茜ちゃんにやっていただくこととします。 仕組み PowerPointの各スライドのページに記載された文字をVOICEROIDE2を用いてWavファイルの作成を行います。その作成したWavファイルをスライドに埋め込みます。 スライドショーを実行することで、スライドを切り替え後、マウスクリックをすることで、茜ちゃんがしゃべってくれます。 使い方 環境: Windows10 Office16 Powe
前書き Windowsで自動化していると面倒なケースに遭遇します。 それは再起動を挟みかつ管理者権限が必要なケースです。 たとえば、以下のようなケースになります。 ・Aというアプリをインストールしたあとに再起動をしてBというアプリをインストールする ・WindowsUpdateでインストールしたあとに再起動をしてコントロールパネルの設定を実施する 今回は、Windowsにおいて再起動を挟んで管理者権限で実行するスクリプトの書き方について検討してみます。 ログインの自動化 再起動後に自動的にログインを行う方法はマイクロソフトのサポート情報として紹介されています。 How to turn on automatic logon in Windows https://support.microsoft.com/en-us/help/324737/how-to-turn-on-automatic-l
目的 この記事は、IT企業を名乗る名状しがたい企業においてRedmineとかTracを使用した、タスク管理の導入を、あきらめた方が対象です。 今回は、彼らのルールにしたがったOfficeという土俵で多少マシな状況を作るためにPowerShellを用いてOutlookの自動操作を行う方法を調べてみました。 Outlookはメール送るだけでなく、タスクの依頼や会議の設定ができます。 これらの操作はVBAやVBS、そしてPowerShellによって自動化が可能になっています。 すくなくとも一つのExcelを全員で修正したり、タスクの変更は気を付けて確認するという人間の能力を過大評価して現在のIT技術を過少評価した、タスク管理っぽいなにかをしているとこでは、多少はマシになる可能性があると期待しています。 環境: Office16 Outlook(32bit) Windows 10 PowerShe
Windowsの自動化の基本となるものにコマンドプロンプトと、そこから実行できるバッチファイルがあります。 Windowsのバッチファイルは古いマシンから新しいマシンまで使用できます。 今回は、それをまとめてみようと思いますが、百番煎じくらいになるので、なるべくMicrosoftが提供するドキュメントをベースになるように話を進めたいと思います。 文中のリンクは基本的に公式サイトへのリンクになっているので必要に応じて参照してください。 ※注意 なにがなんでもバッチファイルで書けという趣旨の記事ではありません。最近はPowerShellも使えますし、レガシーの環境ではWSHという選択肢もあります。 汝、ヘルプを愛せよ コマンドプロンプトでなんらかの操作を行う場合、手っ取り早くコピペですますのもよくあることですが、基本的にはヘルプを確認するようにしましょう。コピペ元のコマンドやオプションをよくわ
まえがき SIerをディスる記事がバズるたびに流れ弾が飛んでくるサクラエディタですが、この偉大なエディタを使いこなしている人間は、すくないと思います。 今回は便利そうな機能を記録しておきたいとおもいます。 エディタから使える機能 Grep 検索メニューからGrepまたはGrepによる置換が行えます。 GrepやGrepによる置換には正規表現が利用できます。 利用可能な正規表現 https://sakura-editor.github.io/help/HLP000089.html 個人的によく使う正規表現は「\t」でGRAPの結果をタブ区切りに変換してExcelに張り付ける使い道です。 1、Grepの結果がある。 2、「): 」→「):\t」の置換をやる 3、Excelにはりつけやすくなる。 ※正規表現使わなくてもタブ文字をコピーアンドペーストで置換後に入力する手もある 変換 変換メニューで
前書き SIerをディスる記事が登場する度、流れ弾が飛んでくるWinMergeですが、実際のところ、その機能を十分つかいこなせている現場は少ないです。 たとえば、WinMergeはコマンドラインから実行できます。これにより外部プログラムの実行が容易になっているのですが、これはあまり使いこなせていません。 https://manual.winmerge.org/Command_line.html 実はドキュメント化されていないパラメータがいくつかあります。 たとえば、「-or」というレポートを出力するパラメータについては実装はされていますが、ドキュメント化されてはいません。 https://github.com/WinMerge/winmerge/blob/30a5674030a8318a9239893a3cc0a4e8798a6256/Src/MergeCmdLineInfo.cpp コマ
はじめに ひさしぶりにPythonで久しぶりにHTMLを出力したくなったのでテンプレートについて調べます。 環境: Python 3.7.4 標準ライブラリでの文字列の書式の扱い まず標準で使える範囲で文字列の書式をどう扱えるか調べます。 これについては下記の素晴らしいまとめが存在します。 Python String Formatting Best Practices https://realpython.com/python-string-formatting/ ここで紹介されている方法は以下の通りです。 古い形式の文字列の書式 新しい形式の文字列の書式 PEP498で定義された書式設定方法 テンプレート文字列 古い形式の文字列の書式 昔ながらの文字列の書式の指定方法です。 name = 'アンジュ' age = 18 print('古いやり方----------------------
はじめに Webアプリケーションに対してある種の繰り返しの操作を行ったり、定型処理を定期的に自動実行したい場合がよくあります。 大きくわけてWebアプリケーションの自動化には3種類のやり方が存在します。 1つ目はブラウザのGUI上の操作をプログラム上で真似して自動化する方法 2つ目はブラウザから送信しているデータを真似する方法 3つ目はWebアプリケーションが提供しているAPIを利用する方法 1つ目のブラウザのGUI上の操作をプログラム上で真似して自動化する方法は直観的にわかりやすいと言われますが、実際は最も難しい自動化の方法になります。また、アプリケーションのバージョンアップに伴い自動化用のプログラムが動作しなくなる可能性があります。 2つ目のブラウザから送信しているデータを真似する方法はプログラムで実装しやすいやり方ではありますが、Webアプリケーションがどのようなデータを送信している
よくあるテスト工程 よくあるテスト工程を思い出してください。 ・テスト設計者は要件定義に合わせて、テスト仕様書を記載する。 ・リーダはテスト仕様書をレビューしながら今回のリリースではどこをテストするかを決定し、誰にテストをさせるかを決定する。 ・テスターはテスト仕様書に応じてテストを実施する。この際、様々なプラットフォーム(例:Chrome,IE,FireFox等)で同じテスト仕様書を元にテストする場合もある。 ・テスト中は常に実行できるわけでなく、テストが失敗することもあるし、別のテストがNGのせいでテストが行えない場合もある。 ・リーダーはその間、テストの進捗状況を確認する。 ・おっと不具合修正により新しいリリースがされた。どれをテストし直すか判断する必要がある。もしかするとテスト仕様書自体を直す必要があるかもしれない。 我々はこれらの複雑な工程をどう対応していたか思い出してみましょう
はじめに TestLinkは10年の歴史を誇るテスト管理ツールですが、さすがに10年前のツールなだけあって、GUI的に昨今厳しい評価を受けがちです。 そこでオープンソースでかつ、TestLinkに代わってテスト管理が行えるツールについて調査しようと思いました。 もしTestLinkの弱点であるGUIが改善されたものがあれば、Excelとの置き換えが捗ると考えたからであります。 駆逐してやる…!テスト管理から…Excelを残らず! 予選敗退組 実はオープンソースのテスト管理ツールは結構存在しています。 ここでは、実際にインストールする前に予選敗退となったいくつかを紹介します。 tarantula https://github.com/prove/tarantula http://www.testiatarantula.com/ 最終コミットが2014年。 運営元から将来の計画もありませんとか
目的 よくプロジェクトの新規メンバーが入った時、各種アプリを手でポチポチインストールすることがあります。 そして、どんなに丁寧に手順書を書いても、設定や順番をミスる人はミスって、何回か重大な局面で環境を色々見直すはめになることが稀によくあります。 今回は、Windowsのインストールを自動化できるかどうか検討してみます。 なお、この記事でコマンドをいくつか実行していますが、すべて管理者権限のあるコマンドプロンプトより実行しています。 インストーラについて Windowsのインストーラは大きくわけて2種類あります。 Setup.exeのように拡張子がexeのものと、拡張子がmsiのものです。 msiはユーザー応答の有無などの基本的なオプションについて共通的になっています。 exeの場合、それぞれが異なる可能性もありますし、また、ユーザー操作なしでインストールが行えない場合もあります。 拡張子
次のページ
このページを最初にブックマークしてみませんか?
『@mima_itaのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く