2017年2月21日火曜日

mysqlリストアの進捗表示方法

進捗表示は pv コマンドで出来る。
macの場合は brew install でインストール出来る。
$ brew install pv

リストア時の進捗を表示させる時は下記のようにパイプで繋げばOK。
$ pv hogehoge.dump | mysql -u root fugafuga
2.04GiB 0:06:06 [5.82MiB/s] [==================================> ] 37% ETA 0:10:16

dumpの時はこんな感じ。
-s オプションでデータのサイズを指定してあげないと進捗表示してくれない。
$ mysqldump -u root hogehoge | pv -s 16K > fugafuga.dump
15.6KiB 0:00:00 [ 210KiB/s] [==================================> ] 97%

2017年1月24日火曜日

親父の授業 1限目 六歌仙の覚え方

何の話の流れだったかはっきり覚えてないが食事後の閑談の中で、「六歌仙」というワードが出てきて、その流れでいつものごとく親父の授業が始まった。
その授業の内容は六歌仙の覚え方の語呂合わせ。

語呂 ふりがな 漢字名
おののこまち 小野小町
おおとものくろぬし 大伴黒主
き(な) きせんほうし 喜撰法師
ふん ふんやのやすひで 文屋康秀
あり ありわらのなりひら 在原業平
そう そうじょうへんじょう 僧正遍照

ググってみたところ、六歌仙の語呂合わせは他にもバリエーションがあって、もう少し上品なものもあるようだが、親父は「おおきなふんありそう」のパターンで覚えたようである。 一応、親父はみんなが食事が終わったことを確認するという配慮は見せたものの、上品バージョンで私は授業をうけたかった。

2016年11月21日月曜日

第9回Quesに参加してのメモ #Ques9

2016/11/17(木) 株式会社サイバーエージェント セミナールーム にて 第9回Ques が開催されました。
https://atnd.org/events/82188

サイバーエージェントの関根さん、medibaの山本さんが講演をされました。
講演の中で出てきたワードで知らなかったものを調べてみました。
自分用のメモ的な内容なので、会場の雰囲気などを感じたかったら、Twitterのハッシュタグ #Ques9 を追ってみると良いと思います。

以下、知らなかったワード。

crashlytics

  • http://try.crashlytics.com/
  • iOSやAndrooidアプリのクラッシュレポートを収集したり管理してくれるサービス
  • アプリにSDKを組み込んで使う

testflight

  • https://developer.apple.com/testflight/
  • iOS、watchOS、およびtvOSアプリをApp Storeでリリースする前にテストすることができるサービス
  • ベータ版のアプリを端末に配信できる

Charles

GQM

  • ソフトウェア工学における計測の枠組みおよびモデル化の手法。
  • ゴール層、クエスチョン層、メトリクス層からなる。
ゴール層
(G 概念レベル)
測定の目的を定義
測定の対象、理由、観点およびコンテキストを定める
クエスチョン層
(Q 運用レベル)
目的達成のために評価すべき質問の定義
ゴールが達成されたか否かを判断する具体的な基準
メトリクス層
(M 定量レベル)
前提となるモデルに基づいて測定可能なメトリクス
上記の質問に対する答えを提供するのに必要な情報を提供する

Five Core Metrics

  • 初めて学ぶソフトウェアメトリクスの原書名
  • 時間、工数、ソフトウェアの機能量、ソフトウェアの欠陥率、そのソフトウェアのプロセス生産性からなる

ETSS

ESQR

感想


 講演を聞いてまだまだ、知識不足、経験不足を感じました。
 でも、それはまだまだ深掘りするところが沢山あるということでもあると思います。
 そして、講演の中で出てきた山本さんの言葉、

 「QA、テストが日本の産業を救う」

 という言葉にも大いに奮い立たせられました。
 この言葉を糧に毎日頑張ろうと思います。

2014年4月10日木曜日

ふと、ファイルの最後の行に改行をいれたくなったのでメモ

ふと、ファイルの最後の行に改行をいれたくなったのでメモ。
(とあるラブライバーの方から教えていただきました。ありがとうございます。)
ag -g '\.ini$' | xargs -n1 -I{} php-cs-fixer.phar fix {} --fixers=eof_ending
要 https://github.com/fabpot/PHP-CS-Fixer

2013年5月29日水曜日

gitでコミットハッシュからそのコミットが含まれるブランチを検索するオプション


とある昼下がりgitを使っていたら、急にコミットハッシュからブランチを探したくなったのですが、見事にオプションを忘れたので今度こそ忘れまいということで備忘録。

git branch --contains ハッシュ値

リモートブランチを含めて検索したい場合は「-r」オプションをつける。
早速、aliasに↓を追加。

contains = "branch -r --contains"
もう、これで忘れない!

2013年4月23日火曜日

第2回Ques ~QAエンジニアのためのQA専門イベント〜 に行ってきた

久々にブログ書きます。

先週、「第2回Ques ~QAエンジニアのためのQA専門イベント〜」 に行ってきました。
ソフトウェアQAエンジニアが集まって、いろいろ情報交換したりするイベントでとても楽しかったです。

以下、「アメーバにおけるスマートフォンQA(仮)」と題して、@tmasuhara さんがプレゼンしてくださった内容を箇条書きします。
(ほんとうは ㈱アットウェアの重田さんのプレゼンもあったのですが、ながくなるので割愛。すみません)



■自己紹介
* ますはらたかひで @tmasuhara
* デカグラフ のQAやってます

■はじめに
* ques登壇者超募集中です!(切実

■スマートフォンプラットフォームテストの取り組み
* リリース優先、スピード重視
→QAすっ飛ばされることが多い
* リリース情報とかスケジュールは管理共有されていない
* QAは期日からテスト期間・内容を提案
→QAは主体的に動くのが重要。こんなテストをしようぜ!とQA側から提案する
* 仕様書は無い
→仕様の伝達など情報共有はRedmine使っている

■リリースサイクルって?
* ブラウザ版デカグラフの場合
→週一回
* 対応するチケットの数
→ 10 から15 [チケット/週]

■試験環境は?
* QA環境はステージング
→たまーに、本番でやってるw

■保証ブラウザについて
* 試験するスマフォのバージョンについて
→統合ログ解析ツールでシェアを計測してシェアの高いものを対応
→Android 6〜7 台で試験
→iOSは4〜5 台で試験
→アメーバ全体だと保証ブラウザの統制がとれていない(サービスが多すぎるためらしい)

■QAメンバーについて
* デカグラフのQAは1人でやってる
→ぶっちゃけギリギリの人数
→厳しい場合はパートナー会社にお願いしてる
* 子会社にデバッグ部門を作った
→メンバー固定することでノウハウ蓄積
→とはいえ、教育にはいろいろ大変なことがあった

■QAの依頼とかドキュメント関連について
* QAの依頼は試験項目書を作った上で依頼している(Redmineにファイルをアップしてやってる)
→試験表はExcelという伝統的なツールを採用
* 仕様書のクオリティはプロデューサーによってまちまち

■試験実施について
* アメーバもL○NEも人力テストが多い
→実機で人力(実機で試験するのは、エミュレータだとスペック差による問題がわかりにくいからとのこと)

■appleの申請・リジェクトまわりってどうやって対策してるの?
* リジェクト情報と対策のDB作りました
→今後は申請業務も一元管理してく

■テスト自動化は?
* 各プロジェクトで好き勝手にやってる
→ノウハウ共有出来てない
* webのキャプチャツールを作った
→phantom js を使って作った
→時間指定して実施可能、日またぎの表示確認もできるすぐれもの



感想など


* 仕様をはじめとした情報の共有ってRedmineだけで事足りてるのかな。もっと突っ込んで質問してみれば良かった
* 保証ブラウザについての絞り込みは真似したいな
* ソースコードの管理も重要なQAの要素だとおもうけど、どうやってるんだろう?Gitとかつかってるのかな?ってのを質問すれば良かった
* 懇親会、名刺忘れたのは致命的だったorz もっといろんな人と話したかった


2011年12月13日火曜日

Jenkins 使って SeleniumRC のテストを実行しようとしたら PHPUnit が動かない

Jenkins 使って SeleniumRC のテストを実行しようとしたら PHPUnit が動かないという現象に出会ったのでメモ。
ちなみにバージョンは

  • Jekins : 1.442
  • SeleniumRC : selenium-server-standalone-2.12.0
  • PHPUnit : 3.6.4

まず、テスト実行すると Jenkins のテスト結果に


失敗

phpunit.xml. 過去 2ビルド失敗 ( 失敗#3 以降 ) 所要時間 0 ms 説明を記入 スタックトレース

と表示されたので続いて、コンソール出力を確認したところ Fatal error が発生しているとのこと。
PHP Fatal error:  Call to undefined method PHPUnit_Framework_ExpectationFailedException::setCustomMessage() in /usr/share/php/PHPUnit/Extensions/SeleniumTestCase.php on line 1068
ソースコードを見てみると、確かに setCustomMessage() が無い。。。
PHPUnit のバージョンが上がってこのメソッドが削除されたみたい。

その変更は↓で見て取れる。
https://github.com/sebastianbergmann/phpunit/commit/7b37221b785dd5aeda8794e8ffdcbfd8cf3aad7b#PHPUnit/Framework/ExpectationFailedException.php

なんで削除したのかとかまでは追ってないですが、とりあえずこのメソッドを追加してエラー回避してナントカ解決。

追加した内容↓

/**
 * @param string $customMessage
 * @since Method available since Release 3.4.0
 */
public function setCustomMessage($customMessage)
{
    $this->customMessage = $customMessage;
}