並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 52件

新着順 人気順

JUnit4の検索結果1 - 40 件 / 52件

  • 現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ

    この文章の背景について この文章はテスト容易性設計をテーマに 2013/11/26 に CodeIQ MAGAZINE に寄稿したものです。残念ながら CodeIQ のサービス終了と共にアクセスできなくなっていたため、旧 CodeIQ MAGAZINE 編集部の皆様に承諾いただき、当時の原稿を部分的に再編集しつつ、ライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で再公開いたしました。 旧 URL にいただいたブックマークとご意見はこちらです(これであなたもテスト駆動開発マスター!?和田卓人さんがテスト駆動開発問題を解答コード使いながら解説します~現在時刻が関わるテストから、テスト容易性設計を学ぶ #tdd|CodeIQ MAGAZINE)。旧記事には本当に多くの反響をいただき、誠に感謝しております。 目次 この文章の背景について 目次 出

      現在時刻が関わるユニットテストから、テスト容易性設計を学ぶ - t-wadaのブログ
    • 新卒1年目が荒れ果てた開発環境に1年間でCIを導入し単体テストを布教した話 - Qiita

      この記事は 「Develop fun!」を体現する Works Human Intelligence Advent Calendar 2020 21日目の記事です。 昨日の記事は@sparklingbabyさんのStream API がもっとわかる記事でした。 あらすじ 私は2019年にWorks Human Intelligence(正確には分社前の会社)に新卒入社し、 19年10月からプロダクト開発部門に配属され、SETエンジニアとしてとある製品のJava開発環境の改善に取り組んでいます。 ざっくりとプロダクト開発を紹介するとこんな感じです。 3万クラス程度ある大規模Java Webアプリケーション 開発環境はEclipseを使用 開発者のOSはWindowsのみ Before 私が開発チームに参加した時点では 部門として新規開発に注力しており、足下の環境改善をやる担当者がおらず、 い

        新卒1年目が荒れ果てた開発環境に1年間でCIを導入し単体テストを布教した話 - Qiita
      • 新規事業開発での技術選定の意思と意図 (バックエンド編) - Sansan Tech Blog

        こんにちは、新規事業開発室に所属するソフトウェアエンジニアの加藤です。私は関西支店でBill Oneという新規サービスの開発に携わっています。 弊社にはSansanのカタチという企業理念があり、働く人々が体現すべきValuesの1つに「意思と意図をもって判断する」があります。ソフトウェアエンジニアとして、意志と意図をもって利用する技術を選定することは当然かもしれませんが、細部までそれを徹底するのは難しいこともあります。本稿では、私たちが使用している技術やライブラリを振り返って、どんな意志と意図があるかを確認していきたいと思います。 などと硬めのことを書きましたが、他所のチームでは普通に使われているライブラリを意外と知らなかったりするので、似たような記事を読みたいなと思って、技術選定を公開してみる次第です。まずはバックエンド編です。 前提 私たちのチームで開発しているBill Oneは今年の

          新規事業開発での技術選定の意思と意図 (バックエンド編) - Sansan Tech Blog
        • “オブジェクト指向”と“テスト駆動開発”は非常に相性がいい 2010年前半におきたツールのムーブメント

          受け入れテスト駆動開発(ATDD)が2013年からどのように変化してきたかについて、デロイトトーマツコンサルティング合同会社執行役員のkyon_mm氏とBASE BANK株式会社テックリード兼マネージャーの東口氏がトークをしました。全4回。1回目は、ATDDの歴史とkyon_mm氏の試みについて。 ATDDについて8年越しのリプライ kyon_mm氏(以下、キョン):今日のイベントについて説明します。みなさんconnpassでお集まりいただいたと思うんですが、1990年代に広まりはじめたTDD(テスト駆動開発)について、2013年くらいに私がちょっと話をしました。 先日、日本でも有数の優秀なエンジニアたちが集ってプレゼンテーションする「July Tech Festa」というカンファレンスの中で、東口さんがATDD(受け入れテスト駆動開発)のプレゼンテーションをしていたんですね。そのときに私

            “オブジェクト指向”と“テスト駆動開発”は非常に相性がいい 2010年前半におきたツールのムーブメント
          • JUnitで学ぶ実践的で本質的なユニットテストの考え方 - Qiita

            初めに 具体的なコードや方法も記述しますが、それよりも JUnit などの自動テストのFW、ユニットテストの概念や目的など本質的なことを把握し理解する事を主題にしてます。 また、参考資料欄にあるように、様々なものを参考に網羅的にまとめています。非常にボリュームがるので興味あるところだけ読んでもらう方が良いかもしれません。 こちらでは、ある程度開発経験(1〜2年程度)があり、自動テストについて少しでも触れた事があるくらいの方が対象になる記事です。自分がそうだからです。ただし、コンパイルエラーにならないだけの書き方では意味がないのでそういった構文やお作法に関する話はあまりしません。なぜそのようなお作法になったのか?そうである理由は何なのか?トレードオフは?といった、本質的な部分にフォーカスを当てていきたいと思います。 1. 概要 JUnit は Java 言語向けのユニットテストフレームワーク

              JUnitで学ぶ実践的で本質的なユニットテストの考え方 - Qiita
            • ユニットテストの自動作成ツールを調べてみた(2019年末版) - Qiita

              こんにちは。もうすぐ2019年も終わりですね。この記事はソフトウェアテスト Advent Calendar 2019 の25日目の記事です。 前日の記事は、同僚の@ozhiro sanのあなたが自動テストを行う目的は何ですか?でした。感動した! さて、今日はユニットテストの自動作成ツールの現状について調べてみました。 なぜ、調べようと思ったのか? ユニットテストって大切ですよね? ソフトウェアを日々開発、修正していく中で、ユニットテストは開発したソフトウェアの品質を確保するテストツールです。また、テスト実行は自動化できるので、テスト工数も削減できます。 しかし、ユニットテストを実行するためにはテストコードの開発が必要で、それなりに開発工数を必要とします。より網羅性などを求めると、テスト対象のソフトウェア開発と同じくらい時間がかかったりする場合もあります。 そのような背景もあり、開発工数や期

                ユニットテストの自動作成ツールを調べてみた(2019年末版) - Qiita
              • 2024年版!VS Code で Java 開発環境を構築する | 豆蔵デベロッパーサイト

                はじめに # Java デベロッパーの皆さんは IntelliJ IDEA や Eclipse を使ってる方が多いのではないでしょうか。筆者は VS Code を使っています。業務では長らく Java から離れていたのですが、ここ数年はけっこう書いています。かつては IntelliJ IDEA に課金してましたが Java 再開を機に VS Code の環境を整えました。この記事では、定番の拡張やワークスペースの使い方についてご紹介したいと思います。 Microsoft Extension Pack for Java の利用 # 結論から言うと 「Microsoft の Extension Pack for Java を入れましょう。」で終わりです。 Extension Pack for Java - Visual Studio Marketplace Extension Pack はその

                  2024年版!VS Code で Java 開発環境を構築する | 豆蔵デベロッパーサイト
                • Embulk v0.11 / v1.0 に向けて: プラグイン開発者の皆様へ

                  プラグイン型バルク・データ・ローダーの Embulk をメンテナンスしている @dmikurube です。 今後の Embulk のロードマップについて、一年ほど前に、記事を (英語ですが) 出したり、ミートアップで話したりしていました。その内容は、開発版 (非安定版) として Embulk v0.10 でしばらく大改造を行い、そこから次期安定版の v0.11 を経て v1.0 を出しますよ、というものでした。 Embulk v0.10 series, which is a milestone to v1.0 More detailed plan of Embulk v0.10, v0.11, and v1 -- Meetup! Java plugins to catch up with Embulk v0.10 from v0.9 それから一年経ち、その v0.11.0 のリリースがいよ

                    Embulk v0.11 / v1.0 に向けて: プラグイン開発者の皆様へ
                  • Google社内ではどのようなテストツールを使っているのか

                    Googleは2022年9月7日(米国時間)、Javaプログラム用単体テストツール「JUnit」に対応したオープンソースのパラメーター化テストフレームワーク「TestParameterInjector」で「JUnit 5」(Jupiter)をサポートしたと発表した。 TestParameterInjectorは、もともとGoogleが社内で使っていたものだ。同社は2021年3月に、「JUnit 4」に対応したTestParameterInjectorのオープンソース版を公開している。 Google社内ではJavaプログラムのテストツールに何を使っているのか 関連記事 5分で分かるテスト自動化 現在のソフトウェア開発に欠かせない「テスト自動化」について、およそ5分でざっくり解説します。 基礎から学ぶ、テスト自動化――導入時に見極めたい、コストの損益分岐点 ソフトウェアテストにおける選択肢の一

                      Google社内ではどのようなテストツールを使っているのか
                    • 不安定なテストを自動で再実行するGradleプラグインを試してみた | DevelopersIO

                      はじめに テスト結果が安定しない時は多々あると思います。 外部サービスの機嫌が悪くレスポンスが遅くて失敗、一時的にテスト環境に負荷が掛かって失敗、seleniumでリダイレクトに時間が掛かって失敗 etc... この様にテスト結果が安定しないテストを不安定なテスト(Flaky tests)と呼ぶらしいです。 このようなテストは再実行すれば大体成功するので、ローカルなら手動で再実行すればいいのですが、CIで実行しているテストが不安定だと以降のパイプラインがストップし調査や再実行にコストが掛かります。 そのような時に最適な、失敗したテストを自動で再実行してくれるGradleプラグイン test-retry-gradle-plugin を今回は試しました。 導入方法 Gradleのブログを参考に、 build.gradle に以下を追記します。 plugins { id 'org.gradle.

                        不安定なテストを自動で再実行するGradleプラグインを試してみた | DevelopersIO
                      • THETAプラグインでTensorFlow Liteのセグメンテーションをかける - Qiita

                        はじめに リコーのYuuki_Sです。 弊社ではRICOH THETAという全周囲360度撮れるカメラを出しています。 RICOH THETA VやTHETA Z1は、OSにAndroidを採用しており、Androidアプリを作る感覚でTHETAをカスタマイズすることもでき、そのカスタマイズ機能を「プラグイン」と呼んでいます。(詳細は本記事の末尾を参照)。 上述の通りTHETAは、カメラでありながらAndroid端末でもあるため、単体で撮影し機械学習の処理をかけて出力することが可能です。 以前、@KA-2さんがTHETAプラグインで連続フレームにTensorFlow Liteの物体認識をかける記事を掲載しましたが、今回はセマンティックセグメンテーションを実施する方法を記載しようと思います。 本記事を参考にすることで、セグメンテーション結果をライブプレビューに反映したり、 下図の様に人物と背

                          THETAプラグインでTensorFlow Liteのセグメンテーションをかける - Qiita
                        • ベースラインプロファイル導入によるアプリのパフォーマンス改善と測定方法 - ZOZO TECH BLOG

                          はじめに こんにちは、ブランドソリューション開発本部フロントエンド部WEAR Androidブロックの安土琢朗です。普段はファッションコーディネートアプリWEARのAndroidアプリを開発しています。 WEARではすでにXMLで書かれたレイアウトをJetpack Composeにリファクタリングする作業を進めています。作業を進める中で、Jetpack ComposeのLazyColumn利用箇所でスクロールが以前よりスムーズに動かない、初回起動時にスクロールが遅いなどのパフォーマンス問題に直面しました。 本投稿では、最適なパフォーマンスを実現する方法の1つであるベースラインプロファイルの導入の仕方について説明します。 ベースラインプロファイルとは ベースラインプロファイルはAndroid Runtime(ART)がプリコンパイルする時に使うクラスやメソッドをリスト化してあるものです。ベー

                            ベースラインプロファイル導入によるアプリのパフォーマンス改善と測定方法 - ZOZO TECH BLOG
                          • はじめてのMutation Testing - daisuzz.log

                            Thoughtworks社が半年ごとに公開しているTechnology RadarのVol.23が最近公開されていたので一通り読んでみました。 その中でMutation testingという技術が気になったので、今回はこれについて書いていきます。 Mutation testingとは Mutation testingとは、プロダクションコードに対するテストコードがどれだけ十分なものか、というテストの品質自体を評価するテスト手法です。 Mutation testingは、プロダクションコードに対してmutantと呼ばれる小さい変更を加えた後に既存のテストを実行し、テストが失敗するかどうかを検証します。検証した結果テストが失敗した場合は、実行したテストにはプロダクションコードの不備を検知できる能力があるとみなします。mutantによってテストが失敗した場合、mutantがkillされる、と表現

                              はじめてのMutation Testing - daisuzz.log
                            • 【初見者向け】Javaのリファクタリングツール OpenRewriteを少し検証 - Qiita

                              はじめに こんにちは。 少し前に、「OpenRewrite」というJavaのリファクタリングで使える?ツールの存在を知って どのようなものか興味を持ったので、簡単に検証してみた記録です。 OpenRewriteとは OpenRewriteの概要 OpenRewriteは、Java言語に早期に焦点を当てて、フレームワークの移行、脆弱性のパッチ、およびAPIの移行のための大規模な分散ソースコードのリファクタリングを可能にします。 OpenRewriteは何をしますか? OpenRewriteは、ソースコードを表す抽象構文木(AST)に変更を加え、変更されたツリーをソースコードに出力することで機能します。その後、コードの変更を確認してコミットできます。ASTの変更はビジターで実行され、ビジターはレシピに集約されます。OpenRewriteレシピは、元のフォーマットを尊重する最小限の侵襲的な変更を

                                【初見者向け】Javaのリファクタリングツール OpenRewriteを少し検証 - Qiita
                              • https://blogs.oracle.com/otnjp/post/migrating-from-junit-4-to-junit-5-important-differences-and-benefits-ja

                                • AndroidのスクリーンショットテストでのRoborazziの導入について

                                  @Test fun testHelloWorld() { composeTestRule.setContent { MyAppTheme { HelloWorld() } } composeTestRule.onNodeWithText("Hello World!").assertIsDisplayed() } ただ、この方法だと以下のような改善点がありました。 Instrumented test (実機やエミュレータ上で実行するテスト)が必要になるので、CIで繰り返し実行するときに端末を準備する手間がかかる。また、エミュレータのセットアップの失敗が発生し、テストが不安定な場合がある 特定の部分を assert で検証しているので、それと違う箇所の変更が検出できない。例えば、意図しない padding が追加されていた場合にもテストが通ってしまう 上記の問題を解決するためにスクリーンショッ

                                    AndroidのスクリーンショットテストでのRoborazziの導入について
                                  • DBが関わるテストコードについて、私の場合 - 日々量産

                                    www.mizdra.net 皆さんがどうしているのか知りたい! 私も知りたい!!! ちょっとはてブコメントで雑に書いてしまったので、私の場合をちょっと記事にしてみることにしました。 ただ、特に変わったことはやってないと思います。必要だと思うテストケースなら歯を食いしばって書いたりレビューしたりしています。 なのでこの記事を読む価値はほとんどありません。ご清聴ありがとうございました。 追記: 読み返すとまとまりの無さが酷い。酔った勢いでダラダラ書いてしまった良くない・・・ 私の場合(要約) テストを考慮してない実装についてはDBを使うテストを書いていました。 DBのテストデータは実際には自動生成することはありませんでした。良さそうなら試したいですが基本的にやりたいテストケースがあって書くのでランダム値を使おうとは思わないです。 DBの依存をRepository層としてインタフェースに切り出

                                      DBが関わるテストコードについて、私の場合 - 日々量産
                                    • JavaとSpring Bootを使用したポートフォリオアプリを制作 - Qiita

                                      はじめに 2020年8月から主にJavaとSpring Bootを使用したWebアプリケーション制作について学習しておりました。 その中で学んだことからポートフォリオとしてシンプルな機能のアプリを制作したので、そのアプリケーションについての機能、制作手順、課題をまとめています。 まだ実装できていない機能や使い勝手含め機能としては不完全ではありますが、 ・2020年内での制作、公開を期限として制作したこと ・とにかく一旦リリースすること を最重要視したため現状で一旦公開しております。 ※今後も機能は順次追加予定です 制作期間 制作期間は 11/22~12/15 AWSの学習、デプロイ完了まで 12/16~12/30 全体として公開までおよそ5週間です。 成果物 インディーズバンドとライブハウス間の「チケット共有管理システム」 TicketManagerTool GitHub https://

                                        JavaとSpring Bootを使用したポートフォリオアプリを制作 - Qiita
                                      • Spring Boot 2.4.0についてメモ - へのへのもへじ

                                        はじめに 先週、(2020/11/12)にSpring Boot 2.4が出ましたが、どんなのが出たのかまとめて、なんとなく違いを把握おこうと思います。 基本的にはリリースブログとRelease Notesの内容を個人的に気になったところを少し深ぼって、自分の理解をまとめようと思うので、正確な情報は本家のブログやそれに付随する記事等をご参照ください(なるべく、情報ソースのリンクはつけます)。 ちなみに、ドキュメントに書かれた変更点を自分の理解でまとめたものなので、基本的に機能に対しては動作検証などは行っておりません。 Spring Boot 2.4.0変更点 このブログでは以下のような変更点についてまとめます。 バージョニングスキーマの変更 設定ファイルのプロセッサ変更 Volume Mounted Config Directory Trees Startupエンドポイントのサポート Do

                                          Spring Boot 2.4.0についてメモ - へのへのもへじ
                                        • JUnit 5 のパラメーター化テストは超便利 - Qiita

                                          JUnit 5 といえば @Nested テストが一押しかなと思っていた時期もありましたが、 @ParameterizedTest を使い始めたら「JUnit 4 のあれは何だったんだ」と思えるくらい手になじんでとてもいい感じです。これだけでも移行をオススメできます。 確認環境 JUnit 5.3 AdoptOpenJDK 11.0.3+7 macOS 10.14.3 ValueSource パラメーターは、@ValueSource アノテーションを使って指定します。パラメーターの型に応じて、ints や strings、 doubles プロパティなどがあります。 @ParameterizedTest @ValueSource(ints = {1, 2, 100}) void positiveNumber(int n) { assertTrue(isPositiveNumber(n));

                                            JUnit 5 のパラメーター化テストは超便利 - Qiita
                                          • SpringBoot2.2でJUnit5がデフォルトになったのでbuild.gradleを書き換える - 日々常々

                                            SpringBoot2.2でJUnit5がデフォルトになったー。 他の更新はリリースノート見てくださいまし。 ちなみに私に関係ありそうなのはツイートした。触れてないのは単に使ってないってだけで、重要じゃないってわけじゃないです。 - Spring 5.1 -> 5.2 - Jakarta EEに移行しはじめた - JUnit 5をデフォルトに - HealthIndicatorはCompositeHealthContributorConfigurationに変えれ(長い…… - Java 13サポート(8と11は引き続き) - RestTemplateBuilderのヘッダ用メソッド追加 ……あたりかな。あと起動時間とメモリ改善とか。— いろふ (@irof) October 16, 2019 build.gradle の書き換え SpringBoot2.1以前 implementatio

                                              SpringBoot2.2でJUnit5がデフォルトになったのでbuild.gradleを書き換える - 日々常々
                                            • Firebaseと連携してAndroid Studioに👁を追加する方法 - Qiita

                                              この記事はAndroid #2 Advent Calendar 2019の12/9の記事です。 前日は @tak-wisteria さんの「Android × TDD」でした。 はじめに Android Studioを普段使用している方で上記のアイコンがあるのをご存知でしょうか。 上記の👁の画像はゲーム画面などではなくAndroid Studioの一部を拡大したものです。 👁は若干不気味ですがAndroid開発をとても便利にしてくれます。 Android Studioでの👁のセットアップ方法と👁の使い方を説明します。 本記事ではMac OS 10.15, Android Studio 3.5を使用しています。 前編: 👁を追加する 1. 新規にプロジェクトを作成する File > New Project からプロジェクトを作成します。 サンプルではEmpty Activityを選

                                                Firebaseと連携してAndroid Studioに👁を追加する方法 - Qiita
                                              • AndroidでPush通知を表示する - Qiita

                                                Firebase Cloud Messaging(FCM)を使って AndroidでPush通知を実装したときのメモです。(2020/4/29時点) Firebase Cloud Messagingとは Firebase Cloud Messaging(FCM)は、メッセージを無料で確実に配信するためのクロスプラットフォーム メッセージング ソリューションです。以前は Google Cloud Messaging API が使われていたようですが、現在はFCMに移行しています。 FCMで端末にメッセージを送信すると、スリープ画面でも通知メッセージを表示できます。 Push通知の実装なおおまかな流れ Androidアプリの作成 - Android Studio Firebaseプロジェクトの作成 - Firebaseコンソール Androidアプリでサービスを実装 - Android Stu

                                                  AndroidでPush通知を表示する - Qiita
                                                • Using Kotlin Coroutines in your Android App

                                                  このコードラボでは、AndroidアプリでKotlin Coroutinesを使用する方法を学びます。バックグラウンドスレッドを管理する新しい方法で、コールバックの使用を最小限に抑えることでコードを簡素化することができます。Coroutinesは、データベースやネットワーク通信などの長時間実行タスクの非同期なコールバックを書かれた順番の通りに実行されるコードに変換するKotlinの機能です。 以下はこれから行うことの概要を示すコードスニペットです。 // 非同期なコールバック networkRequest { result -> // ネットワークリクエストが成功 databaseSave(result) { rows -> // 結果の保存が完了 } } Coroutinesを使うことでコールバックを使ったコードをシーケンシャルなコードに変換することができます。 // Coroutine

                                                  • Gradle にしっかり入門する - ぷらすのブログ

                                                    1 章 はじめに こんにちは、@p1assです。 最近、Gradle を使ったプロジェクトを 1 から構築することがありました。 以前から Gradle を使ったことはあったのですが、ほとんど雰囲気で触っていたため、いざ諸々をセットアップしようとすると戸惑ってしまうことが多々ありました。そのため、改めて Gradle について学んだほうが良かろうということになりました。 この記事では、改めて Gradle を学んだ際に自分のためにまとめたドキュメントを再編集して公開します。 お断り ほとんどが Gradle User Manualからの引用です。公式ドキュメントを読み込める方には不要かもしれません。 使用するバージョン $ gradle -v Welcome to Gradle 7.2! Here are the highlights of this release: - Toolchai

                                                      Gradle にしっかり入門する - ぷらすのブログ
                                                    • Kotlin + SpringBoot で構築したアプリケーションの構成をbuild.gradleに沿って紹介 - エムスリーテックブログ

                                                      こんにちは、エムスリーエンジニアリンググループの福林 (@fukubaya) です。 この記事は エムスリー Advent Calendar 2019 の11日目の記事です。 昨日は大垣の 行動ログデータからのユーザーアンケート予測モデルを作り、ユーザーの嗜好分類をする でした。 今回も中村の記事で宣言した 「医師版Stack Overflow」(仮名)の技術的チャレンジのうち、 Kotlin + SpringBoot でのアプリケーション構成例を build.gradle に沿ってご紹介します*1。 山中湖交流プラザ きららは山梨県山中湖村にある総合公園。本文には特に関係ありません。 DBフレームワーク MyBatis3 data classにマッピングしたい Vueのビルド 静的解析 コンパイル時の警告もエラー扱いにする ktlint detekt OWASP Dependency C

                                                        Kotlin + SpringBoot で構築したアプリケーションの構成をbuild.gradleに沿って紹介 - エムスリーテックブログ
                                                      • 担当したPJの単体テストが地獄絵図だったので独自に作成したガイド(?)を公開する - Qiita

                                                        // テスト対象クラス public class Calc { public int add(int a, int b) { return a + b; } } import static org.junit.jupiter.api.Assertions.*; import org.junit.jupiter.api.Test; // テストクラス class CalcTest { @Test void addメソッドに2と3を渡すと5を返す() { // 【事前準備】 Calc sut = new Calc(); int expected = 5; // 【実行】 int actual = sut.add(2, 3); // 【検証】 assertEquals(expected, actual); // 【後処理】 /* * インスタンスの破棄やファイルのcloseなど * 必要があれば

                                                          担当したPJの単体テストが地獄絵図だったので独自に作成したガイド(?)を公開する - Qiita
                                                        • 【Android】Auth0 公式のクイックスタートを参考に Kotlin でユニバーサルログインを組み込んでみた | DevelopersIO

                                                          はじめに テントの中から失礼します、IoT 事業部のてんとタカハシです! Android アプリ開発も Auth0 も Kotlin も初心者なのですが、これらを使ってユニバーサルログインをアプリに組み込む機会がありましたので、手順を残しておこうと思います。 基本的には Auth0 公式のクイックスタートを参考にすれば何となく実装できそうなのですが、初心者の私はそこそこ躓きました。同じような初心者の方にとって参考になれば嬉しいです。 環境 macOS Catalina v10.15.7 Android Studio 4.2.1 参考 主に Auth0 公式のクイックスタートを参考にしました。 Android プロジェクトを作成する Empty Activityを選択します。 プロジェクト名はsample-auth0-loginとしています。Auth0 を使用する場合は、Android の

                                                            【Android】Auth0 公式のクイックスタートを参考に Kotlin でユニバーサルログインを組み込んでみた | DevelopersIO
                                                          • MockKの使い方 - Qiita

                                                            Kotlin向けMockライブラリのMockKの使い方について簡単にまとめます GitHub - MockK MockKがどんな意図で作られているかはこちらの記事で作者が語られていますのでご参照ください。 Medium - MockK: intentions MockKとは MockKはKotlin独自の言語仕様をほぼ網羅しているモックライブラリ Coroutineやobject、private関数などにも対応している優れもの 今回はCoroutineには触れませんので、あしからず。。。 公式ドキュメントにすべて書かれていますので、詳細はこちらを見てください https://mockk.io/ 今回は公式ドキュメントの内容からいくつか代表的なもの(自分がよく使うもの)を紹介させていただきます。 内容に不備等ありましたら、やさしくマサカリ投げてくださいm(_ _)m 動作確認環境について M

                                                              MockKの使い方 - Qiita
                                                            • Testcontainersを利用してIntegrationTestを改善する - ZOZO TECH BLOG

                                                              はじめに こんにちは、マイグレーションチームの寺嶋です。 本記事では、ZOZOTOWNのマイクロサービスにおけるデータベースを参照したユニットテストの改善で得られた知見や工夫について紹介します。 背景と課題 ZOZOTOWNでは、数年前からリプレイスプロジェクトが実施されており、いくつものマイクロサービスが誕生しました。初期にJavaで作られたマイクロサービスのユニットテストが開発環境のデータベースを参照しており、テストで利用しているデータが更新・削除されてしまうとテストに失敗してしまうことが度々起きていました。また、接続しているデータベースがオンプレのSQL Serverを利用しており、CI上でユニットテストを実施できない状況でした。 そのため対象のユニットテストは次の問題を抱えていました。 ローカルPC上でしか実行できない 実データを利用しているので今日通ったテストが明日落ちる(可能性

                                                                Testcontainersを利用してIntegrationTestを改善する - ZOZO TECH BLOG
                                                              • kintone のテストを JUnit 5 に移行した話 - Cybozu Inside Out | サイボウズエンジニアのブログ

                                                                こんにちは、kintone 開発チームの @hikoma です。kintone のテストを JUnit 4 から JUnit 5 に移行した話を公開したいと思います。 背景 2017 年に JUnit 5 がリリースされてから約 4 年半、みなさんは既に JUnit 5 を利用していることかと思います。 kintone では JUnit 5 への移行がなかなか進みませんでした。テストのボリュームがそれなりにあり(Java の単体テストが約 6500、REST API のテストが約 4000、Selenium のテストが約 3000)、E2E テストで並列実行やリトライのために JUnit 4 の仕組みを利用していたので、目に見える問題が起きていない状況では優先度も上がりませんでした。 しかし、このような状況ではテストの改善に着手しにくく、持続的な開発のリスクも感じていたため、何度目かの移行

                                                                  kintone のテストを JUnit 5 に移行した話 - Cybozu Inside Out | サイボウズエンジニアのブログ
                                                                • Gradleでマルチプロジェクトをやるならsubprojects{}じゃなくてプラグインシステムを使おう - Mitsuyuki.Shiiba

                                                                  Gradleでマルチプロジェクトってどうやるんだろう?って公式ドキュメントを眺めて遊んだのでメモ。タイトルの通りの話。 Gradleって変化が速い印象ある。ので、しばらくするとこのやり方も非推奨になるのかもしれない。2021年2月時点のGradle 6.8.2のお話。 ❯ gradle -v ------------------------------------------------------------ Gradle 6.8.2 ------------------------------------------------------------ Build time: 2021-02-05 12:53:00 UTC Revision: b9bd4a5c6026ac52f690eaf2829ee26563cad426 Kotlin: 1.4.20 Groovy: 2.5.12 A

                                                                    Gradleでマルチプロジェクトをやるならsubprojects{}じゃなくてプラグインシステムを使おう - Mitsuyuki.Shiiba
                                                                  • GitHub - Osiris-Team/1JPM: 1 Java Project Manager, is a Maven/Gradle alternative with a twist. Its a single Java file itself, which should be edited by you to configure your project.

                                                                    1 Java Project Manager (1JPM), is a Maven/Gradle alternative with a twist. It's a single Java file itself, which should be edited by you to configure your project. Meaning instead of writing XML (Maven) or Groovy (Gradle), your build file is Java code too. Thus to build your project, download/copy the JPM.java file into your project, open a terminal and execute: Java 11 and above: java JPM.java ja

                                                                      GitHub - Osiris-Team/1JPM: 1 Java Project Manager, is a Maven/Gradle alternative with a twist. Its a single Java file itself, which should be edited by you to configure your project.
                                                                    • News

                                                                      Logback components written for logback 1.2 should work without change in version 1.3. However, Joran, logback's configuration system, has been rewritten to use an internal representation model which can be processed separately. Thus, code depending on Joran needs to be adapted to changes in Joran (logback's internal configuration mechanism). As a result of enhancements to Joran, logback configurat

                                                                      • Androidアプリチームにテストコードを書く習慣ができるまで - ロコガイド テックブログ

                                                                        こんなに長く自宅勤務が続くなら鉄のフライパンとか炊飯器とか買ってもよかったなーと思ってます。Androidアプリエンジニアのiaiaです。 前回Firebase Test LabでE2Eテストの話をしましたが、Unitテスト周りでも改善をしていて、良い変化が生まれてきたなと思ってきているので報告します。 入社直後のテストカバレッジ 私が出した最初のPull Request時点でのカバレッジです。 10%程度ですね...。 テストコードを書くのは大変で高いハードルがあるのは確かです。ですが、テストを書いていかないと、開発者は不安になりながらコードを変更しなければなりませんし、 何か修正が入るたびに面倒な手動テストを行わなければなりません。ユーザに不具合のあるアプリを提供してしまう可能性もあります。 安心してコードを変更し、リリースするためには、テストを書いてカバレッジを上げるしかありません。

                                                                          Androidアプリチームにテストコードを書く習慣ができるまで - ロコガイド テックブログ
                                                                        • Spring Boot JPAサンプル(Hishidama's Spring Boot JPA example Memo)

                                                                          概要 例 Entity Repository 独自メソッド [/2017-10-02] Repositoryのテスト Service [2017-09-30] Serviceのテスト [2017-09-30] テーブル名・カラム名 [2017-09-30] 複合キー [2017-09-30] 列挙型 [/2017-10-01] 多:1(ManyToOne) [/2017-10-22] 1:多(OneToMany) [/2017-10-10] 1:多(ElementCollection) [2017-10-08] 概要 JPAでは、テーブル相当のクラスとしてEntityクラスを用意する。 DBアクセスの為にRepositoryクラスを用意する。SQL文ひとつにつきメソッドひとつというイメージ。 それらを呼び出し、トランザクション管理する為にServiceクラスを作成する。 デフォルトでは、E

                                                                          • KotlinアプリケーションをGoogle Cloud Functionsにデプロイする - Sansan Tech Blog

                                                                            Bill One事業部の山邊です。 2020 年 5 月に Google Cloud Functions が Java11 に対応した。それによって JVM 言語で Cloud Functions を記述することができるようになった。 私も開発に携わっているクラウド請求書受領サービスの 「Bill One」(https://bill-one.com/) ではサーバーサイド言語として主に Kotlin を使用してる。しかし、これまでは Cloud Functions を記述する際は主に JavaScript を利用していた。最近になって Kotlin(JVM 言語)の方が都合が良い要件があったため、 Kotlin で Cloud Functions を記述した。 その際、Kotlin 且つ日本語のドキュメントで全体を通して書かれている記事がなかったため、基本的な実装とテストコードの記述につい

                                                                              KotlinアプリケーションをGoogle Cloud Functionsにデプロイする - Sansan Tech Blog
                                                                            • Gradle ことはじめ (Java プロジェクトを作成して、外部ライブラリをまとめてひとつの実行可能 JAR を生成するまで) - Qiita

                                                                              Gradle ことはじめ (Java プロジェクトを作成して、外部ライブラリをまとめてひとつの実行可能 JAR を生成するまで)Javagradle 概要 公式のチュートリアル資料等を参考に Gradle を導入する Gradle で Java プロジェクトを作成する 外部ライブラリを導入し、ひとつの実行可能 JAR を生成する 今回の環境 macOS Mojave OpenJDK 11.0.2 Gradle 5.5.1 Gradle をインストールする Gradle | Installation にいくつかの方法が載っている。 今回は macOS Mojave なので Homebrew でインストールした。 $ gradle init Starting a Gradle Daemon (subsequent builds will be faster) Select type of pr

                                                                                Gradle ことはじめ (Java プロジェクトを作成して、外部ライブラリをまとめてひとつの実行可能 JAR を生成するまで) - Qiita
                                                                              • Jetpack Compose + ViewModel + Navigation + Hilt で UI テスト

                                                                                テスト対象の Compose @HiltAndroidApp class MyApplication : Application() @AndroidEntryPoint class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { MaterialTheme { Surface(color = MaterialTheme.colors.background) { MyApp() } } } } } @Composable fun MyApp() { val navController = rememberNavController() NavHost(navCont

                                                                                  Jetpack Compose + ViewModel + Navigation + Hilt で UI テスト
                                                                                • Javaソースコードのアーキテクチャーをチェックするテストが書ける、ArchUnitを試す - CLOVER🍀

                                                                                  これは、なにをしたくて書いたもの? ArchUnitというものを試してみたいな、ということで。 ArchUnit ArchUnitは、Javaソースコードのアーキテクチャーをチェックするためのユニットテストフレームワークです。 ArchUnit is a free, simple and extensible library for checking the architecture of your Java code using any plain Java unit test framework. Unit test your Java architecture - ArchUnit ArchUnitを使うことで、パッケージやクラス、レイヤーやスライスの依存関係、循環参照などをチェックできます。 That is, ArchUnit can check dependencies betw

                                                                                    Javaソースコードのアーキテクチャーをチェックするテストが書ける、ArchUnitを試す - CLOVER🍀