タグ

2017年4月11日のブックマーク (14件)

  • モダンなテスト管理プロセスのためにテスト管理ツール3つを比較検討したはなし | メルカリエンジニアリング

    こんにちは。メルカリのテストエンジニアとして、スマホアプリのテスト自動化をぶりぶりしている@daipresentsです。 テスト自動化をすすめるにあたり、効率のよいテストを作るために、既存のテストケースについて調べる機会がありました。その過程で現状のQAプロセスも確認したのですが、以下のようなテストケース管理の課題があることがわかりました。 それぞれのテストエンジニアが、それぞれの方法で、それぞれのテストケースを管理しているため、ナレッジが横につながりにくい。 共有されているリグレッションテスト項目の更新が追いついておらず、情報が古くて使いにくい。 人数が増えてきて、ふりかえりや改善がやりにくい。 1については、現在、職能横断的なチーム構成になっているため、プロジェクトやプロダクトに集中できる環境である反面、それぞれのチームにいるQAエンジニアどうしのつながりが薄れてしまうことが原因に感じ

    モダンなテスト管理プロセスのためにテスト管理ツール3つを比較検討したはなし | メルカリエンジニアリング
    gologo13
    gologo13 2017/04/11
    素晴らしい取り組み
  • Java+Seleniumな自動テストプロジェクトをJenkinsさんにお願いする - Qiita

    TDD is dead. Long live testing.あたりにすごく考えさせられたりしつつ、Java+SeleniumなWebアプリケーションの自動テストプロジェクト構築 を書いたわけなんですが、これだけだとテストは自分が手でやらなければならなくて、寝ている時間に障害発生したらどうするんだとかそんなことを思ってしまいやっぱり睡眠の質があんまり上がらないわけです。朝起きて、おそるおそるテストを走らせて、くずおれるみたいな展開は健康によくありません。 そんなときはJenkinsさんの出番です。頼れる執事に定期的にテストを実行しておいてもらえれば、障害の起き始めた時間が明確に特定でき、ごめんなさいの報告や問題解決のためのログ解析など色々なものの精度が上がって捗ります。 やりたいこと JenkinsからSeleniumのテストを含むプロジェクトを自動的に実行したい 対象WebDriverは

    Java+Seleniumな自動テストプロジェクトをJenkinsさんにお願いする - Qiita
  • How to Run Your Tests Headless with Xvfb | Elemental Selenium

    Intro​ If you want to run your tests headless on a Continuous Integration (CI) server you'll quickly realize that you can't with an out-of-the-box setup since there is no display output for the browser to launch in. A Solution​ In order to run your tests using a browser that's loaded on your CI Server you will need to configure your tests to launch the browser virtually (e.g., using something like

    How to Run Your Tests Headless with Xvfb | Elemental Selenium
    gologo13
    gologo13 2017/04/11
    good tips
  • Webサービスの初期開発とマイクロサービス・BFF

    Webサービスの初期開発とマイクロサービス・BFF Microservices Meetup vol.5 (API Gateway & BFF) 2017/3/30 @FiNC

    Webサービスの初期開発とマイクロサービス・BFF
  • なぜ Erlang/OTP を使い続けるのか

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    なぜ Erlang/OTP を使い続けるのか
  • 「ElixirがリアルタイムWebに強い」 というのは本当か?

    Elixir Conf Japan 2017

    「ElixirがリアルタイムWebに強い」 というのは本当か?
  • 高い生産性を生み出すソフトウェア開発の秘伝

    プロのトレーナーとコーチが何度も目にしてきたことがある。あまりにも多くのアジャイルチームがはまり込んでしまうパターン、すなわち、ワクワクするような、高度な「活躍」をする段階に進めず、ただの平均的な「導入」の段階で行き詰まってしまうという現象だ。読者の皆さんも考えてみてほしい。すべてのソフトウェア開発プロジェクトに共通することで、最大限にしたときに生産性が急上昇するものがあるかもしれない。実際、最も成功したチーム (アジャイルチームであれ従来からのチームであれ) の多くがソフトウェア開発の、一見単純ではあるが、よく忘れられる「秘伝」をすでに活用している。それは、頻繁にふりかえって学習する時間をつくることである。 何について学ぶのか?お互いのこと、テクノロジ、ドメイン、顧客など、すべてについてである。速く学習するチームは成功する。チームのパフォーマンスを妨げる目に見えない「学習ボトルネック」に

    高い生産性を生み出すソフトウェア開発の秘伝
  • いいアイデアなんか思いつくはずがない

    インタビューや観察の結果を整理する方法として「親和図法(affinity diagram)」がよく用いられます。また、そこからチームでアイデアを出す方法として「ブレインストーミング(brainstorming)」が用いられます(そこから再び親和図法に戻ることもありますね)。いずれも有名な手法なので詳細は省きますが、付箋紙をホワイトボードにペタペタ貼りながら、みんなでワイワイやるようなイメージです。 https://www.flickr.com/photos/jakecaptive/49915119よく用いられるからには、きっとそれなりの理由があるのでしょう。ですが、私はいずれに対しても(めちゃくちゃ)懐疑的です。使っていないわけではないのですが、使ってもいまいち感が残るというか、まるでうまくできる感じがしないのです。こんなのでいいアイデアなんか思いつくはずがない。それこそ「机上の空論」みた

    いいアイデアなんか思いつくはずがない
    gologo13
    gologo13 2017/04/11
  • なぜあなたのPull Requestは読まれないのか - Qiita

    Pull Requestを出してレビューしてもらってから反映。 どこにでもあるありふれた開発フローに付きまとう、どこにでもあるありふれた問題。 「Pull Requestがレビューされない」 もちろん開発フローにレビューが含まれている以上、レビューをしないメンバーにも非がないとは言えませんが、多くの場合はレビューされないPRには問題があるものです。 デカい 兎にも角にもデカいPRは読むのがつらいです。 もちろん要件が明記されていないなど、他にもPRが読みにくくなる原因はたくさんありますが、一番はこれです。 極端な話、1行変更のPRは他に何も書かれていなくても実装内容を察することができますが、10ファイル100行の差分と箇条書き20点の要件が書かれたPRは内容を把握するだけで一苦労です。 しかし、このこと自体は数カ月でもコードを書いていれば自然と勘づくもの。 問題はなぜPRが大きくなってしま

    なぜあなたのPull Requestは読まれないのか - Qiita
    gologo13
    gologo13 2017/04/11
  • Go が他の多くの言語での非同期プログラミングよりも優れている理由 - Qiita

    はじめに 非同期プログラミングと呼んでいるのは、ノンブロッキングIOと select, poll, epoll, kqueue のようなIO多重化を利用したネットワークアプリケーションを書くことです。 node.js で websocket 使ったチャットを書くとかそういうのです。 「他の多くの言語」とは、 Python (asyncio), node.js, C# などを想定しています。 Erlang や GHC なんかは Go に近いかも知れません。 async / await がない言語では、「コールバック地獄」や「deferred地獄」のような問題もありますがこの記事では扱っていません。 async / await のメリットを解説した他の記事を参照してください。 あとこの記事は主にランタイムに関する部分を扱っているので、「それは言語じゃなくて処理系の問題だ!」等の頓珍漢な揚げ足取

    Go が他の多くの言語での非同期プログラミングよりも優れている理由 - Qiita
  • またもやTensorFlowが強化!!深層学習ライブラリ「sonnet」の登場【使ってみた記事紹介を追加】 - HELLO CYBERNETICS

    新たなライブラリsonnet sonnetとは DeepMind社製であること TensorFlowと共に使える TensorFlow TensorFlowの役割 TensorFlowの追加ライブラリ Keras TensorFlow-Fold edward sonnet sonnet使ってみた記事まとめ 多分日語最速で出た使ってみた記事 インストールから丁寧に コードに対するコメントが豊富で参考になる記事 新たなライブラリsonnet sonnetとは DeepMind社が社内で利用していた深層学習ライブラリです。 昨日これがオープンソース化されました。 DeepMind社製であること DeepMindは現在Google傘下の人工知能開発企業です。 圧倒的な専門家集団の集まりであり、深層学習の研究にGoogleが乗り切る際に、DeepMind社は買収されました。その後、資金力と研究力を

    またもやTensorFlowが強化!!深層学習ライブラリ「sonnet」の登場【使ってみた記事紹介を追加】 - HELLO CYBERNETICS
    gologo13
    gologo13 2017/04/11
  • ユーザー基盤を作り直しながらRailsでのサービス層に向き合う - クックパッド開発者ブログ

    こんにちは。パートナーアライアンス部の諸橋 (@moro) です。 突然ですが、わたしはいまクックパッドの「ユーザー基盤」を再構築しようとしています。 一口に「ユーザー基盤の再構築」といっても、そのゴールが何を指すかは(わたし自身にとってもまだ)漠然としており、固定されたゴールは見いだせていません。しかし後述するように、いくつかの問題は明確な形を取っています。言い換えると、それら明確な問題と向き合いながら『柔軟でいい感じのユーザー基盤を目指す』というのがこの再構築プロジェクトの目的です。 その第一歩目として、ユーザー登録部分を現状のクックパッド体とは別の小さなRailsアプリケーションとして実装を進め、つい先日、一部の限定された利用者の方に向けて公開することができました。 今後も様子を見ながら公開範囲を拡大していく予定です。 再構築の背景 ではその「明確な問題」とはなんでしょうか。 最大

    ユーザー基盤を作り直しながらRailsでのサービス層に向き合う - クックパッド開発者ブログ
    gologo13
    gologo13 2017/04/11
    Cookpadなりの改善の登り方
  • 7Sとは・意味|MBAのグロービス経営大学院

    7Sとは、企業戦略における、幾つかの要素の相互関係をあらわしたもの。優れた企業では、各要素がお互いを補い、強め合いながら戦略の実行に向かっているとされる。世界有数の戦略コンサルティングファームであるマッキンゼー・アンド・カンパニーが提唱した。 7Sは、ソフトの4Sとハードの3Sに分かれる。 ソフトの4S ①Shared value (共通の価値観・理念) ②Style(経営スタイル・社風) ③Staff(人材) ④Skill(スキル・能力) ハードの3S ⑤Strategy(戦略) ⑥Structure(組織構造) ⑦System(システム・制度) このうち、ソフトの4つは、価値観が絡む要素であるだけに慣性が働き、強制的にまたは短時間に変更することは難しいとされる部分である。 一方、ハードの3つは、変えようとする意思やプランがあれば、変更することが可能である。 手をつけやすいという理由から

    7Sとは・意味|MBAのグロービス経営大学院
    gologo13
    gologo13 2017/04/11
  • Gitのステージング領域の正体を探る | メルカリエンジニアリング

    ソフトウェアエンジニアの @DQNEO です。こんにちは。 Gitの内部構造を深掘りするシリーズ3回目です。 前回までのお話はこちら Gitのつくりかた – Mercari Engineering Blog Gitのコミットハッシュ値は何を元にどうやって生成されているのか – Mercari Engineering Blog 今日はみんなだいすき「ステージング領域」の中身について解説してみます。 ステージング領域とは何か? 簡単に説明すると「次にコミットしたときにコンテンツとして登録されるもの」リストです。(別名「インデックス」ともいいます。) このリストは、 git addやgit rmしたときに書き換わります。 (古くはcacheと呼ばれていました。内部実装やgit diff --cachedに今もその名残があります。) git addのマニュアルに説明があります。 Git – git

    Gitのステージング領域の正体を探る | メルカリエンジニアリング
    gologo13
    gologo13 2017/04/11