並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 277件

新着順 人気順

UnitTestの検索結果81 - 120 件 / 277件

  • GitHub Actionsを使ってGoプロジェクトのCI/CD及びカバレッジ計測をおこなう | おそらくはそれさえも平凡な日々

    GitHub Actionsを遅まきながら使ってみて、自分のアクティブなGitHub上のGoのOSSプロジェクトで知見がたまったので、共有するものである。 GitHub Actionsについて 非常に良い。VCSとCI/CDの統合は体験が良い。各種イベントをハンドリングできるが、そのイベントが元々Webhookで提供されていたものなので、Webhookを弄っていた身からすると非常に親しみやすかった。コードpush以外のイベントもハンドリングしてプログラマブルに扱えるので夢が広がる。 使い勝手とか具体的に良くなった点 リポジトリ直下の.github/workflows配下に既定のYAMLをpushすると、その設定にしたがって自動でアクションが動いてくれる。ブラウザ操作必要ないのは快適。 GitHub上でいろいろ完結できる Windowsのテストもできる! GITHUB_TOKEN 管理もうま

    • テスト自動化関連ツール・ライブラリまとめ - Qiita

      分類については独断です。また、こつこつ「ひとこと説明」を追加していく予定です。 Selenium関連については Awesome Selenium : 素晴しい Selenium ライブラリの数々 - Qiita が参考になります。 FAQ なんで***を除いているのか 恣意的に除いていることはないので、編集リクエストかコメントをください GUIテスト自動化ツール モバイル・デスクトップアプリ・ブラウザのうち複数の対象のGUIを操作できるテスト自動化ツール。 有料 インストール型 UFT One QTP(Quick Test Professional)→UFT(Unified Functional Testing)→UFT One Silk Test UFT Oneと同じくMicroFocus製で、UFT Oneのほうがメジャーな印象(筆者主観) Ranorex TestComplete W

        テスト自動化関連ツール・ライブラリまとめ - Qiita
      • iOSアプリのメモリリークを発見、改善する技術 - クックパッド開発者ブログ

        こんにちは。事業開発部の岡村 (@iceman5499) です。 普段はクックパッドアプリ(iOS)を開発しています。 先日、アプリケーションが特定の条件で意図せぬ状態に陥り、アプリケーションが重くなって端末が発熱する、というバグが発見されました。 調査の結果、このバグはメモリリークが原因で発生していました。 この反省を踏まえメモリリークを検知するテストを導入したため、本記事ではその事例を紹介したいと思います。 (本記事ではクックパッドアプリとはiOS版の「クックパッド」アプリのことを指すものとします) クックパッドアプリにおけるメモリリークの影響 クックパッドアプリはレシピの検索をコア機能としています。 検索は重い処理ですがAPIを通してサーバ上で行われるため、アプリは結果を表示するだけです。そのためメモリを多く必要としません。 これまでにも何度かメモリリークが発生している状況はありまし

          iOSアプリのメモリリークを発見、改善する技術 - クックパッド開発者ブログ
        • GitHub Actions と AWS CodeBuild テストを使用して Amazon ECS の CI/CD パイプラインを作成する | Amazon Web Services

          Amazon Web Services ブログ GitHub Actions と AWS CodeBuild テストを使用して Amazon ECS の CI/CD パイプラインを作成する  Amazon Elastic Container Service (Amazon ECS) は、フルマネージド型のコンテナオーケストレーションサービスであり、コンテナ化されたワークロードを大規模かつ簡単に運用できます。  また、Amazon Route 53、AWS Identity and Access Management (IAM)、Amazon CloudWatch などの他の主要な AWS のサービスと統合します。  コンテナの管理に使用しているプラットフォームに関係なく、コンテナ化されたアプリケーションにとって効果的かつ効率的な CI/CD パイプラインを確立することは重要です。 この投

            GitHub Actions と AWS CodeBuild テストを使用して Amazon ECS の CI/CD パイプラインを作成する | Amazon Web Services
          • Swiftはじめました - ゼクシィiOSアプリの場合 | Recruit Tech Blog

            はじめに Swift はじめました。と聞くと、読者の方は「いまさら?遅すぎじゃない?」とか、「大切なのは何の言語で書くかよりも設計じゃないの?」などと思われるかもしれません。気持ちはわかります。 しかし実際、ゼクシィアプリのコードベースは今まで Objective-C 100% でした。そして、つい最近、はじめてプロダクションコードとして Swift のコードをリリースすることができました。本稿では、そこに至るまでに考えたことや、具体的なやり方を紹介できればと思います。 申し遅れましたが、この記事はゼクシィ iOS アプリの開発を担当している @tondol がお送りします。好きな結婚式ソングは lily white で「ふたりハピネス」です。1)ラブライブ!のキャラクターソングです。わざわざ脚注までお読みいただき、ありがとうございます。 背景 前述の通り、ゼクシィアプリはこれまで Obj

              Swiftはじめました - ゼクシィiOSアプリの場合 | Recruit Tech Blog
            • Codecov is now open source - Codecov

              Authors Note: Hey, we messed up in this post by referring to BUSL-1.1 as Open Source. We’re sorry, we are leaving this post as-is to keep the record clear and we’ve followed up in a new post. Since the beginning, the open source community has been a strong partner in Codecov’s growth and success. That’s why we always offered Codecov for free to use on any open source project. And if we’re being to

                Codecov is now open source - Codecov
              • 第9回 自動テストの実行結果 ~意思決定と行動を促す情報としての役割~ | gihyo.jp

                WEB+DB PRESS休刊に伴い、今回からWeb上で連載を継続させていただくことになりました。今後とも何卒よろしくお願いします。さて、あらためて本連載の最近の連載のテーマを振り返りますと、それは「信頼性の高い実行結果に短い時間で到達する自動テスト群を組み上げ、ソフトウェアの成長を持続可能なものにする」となります。今回はそのなかから「実行結果」に光を当てます。 多くのテスティングフレームワークには実行結果の出力フォーマットを変更するオプションやプラグイン機構があり、自動テストはその実行結果を様々なフォーマットで出力します。それらテストの実行結果は「情報」であり、情報の役割とは意思決定と行動を促すことです。テストの実行結果が促す行動とはデプロイ、マージ、コードの修正などです。今回は、そのようなテスト実行結果出力の種類と目的についてまとめます。 信号機としてのテスト出力 意思決定から行動へつな

                  第9回 自動テストの実行結果 ~意思決定と行動を促す情報としての役割~ | gihyo.jp
                • 『継続的デリバリーのソフトウェア工学』...ソフトウェア工学とは何か? - Magnolia Tech

                  継続的デリバリーのソフトウェア工学 もっと早く、もっと良いソフトウェアを作るための秘訣 作者:David Farley日経BPAmazon 書名の「継続的デリバリー」はCI /CDの解説書かな?とも思わせてしまうので若干ミスリードなんだけど、「工学とは何か?」「ソフトウェア工学とは何か?」「工芸と工学は何が違うか?」ということを解説した1冊。 『継続デリバリーのソフトウェア工学』を読み始めた そういえば、最近「ソフトウェア工学」ってキーワードを聞かないなーって思ってたけど、本書にも「最近敬遠されてない?」って書かれてた— magnoliak🍧 (@magnolia_k_) 2023年1月28日 まぁ、確かに「ソフトウェアの品質分析がー」とか、「設計書を書けばコードが自動生成ー」みたいな、「管理!」的な価値観が大きかったように思われてたんじゃないかなーとか思った— magnoliak🍧

                    『継続的デリバリーのソフトウェア工学』...ソフトウェア工学とは何か? - Magnolia Tech
                  • 単一のSwiftコードからiOSアプリとAndroidアプリが作れる「Skip 1.0」正式リリース。SwiftをKotlinへトランスパイル

                    単一のSwiftコードからiOSアプリとAndroidアプリが作れる「Skip 1.0」正式リリース。SwiftをKotlinへトランスパイル iOSのネイティブアプリケーション開発には、開発ツールとしてXcodeを使い、Swift言語を用いてプログラミングを行うのが、iOSの開発元であるAppleが推奨する方法です。一方、AndroidではAndroid Studioを開発ツールとしてKotlin言語を用いてプログラミングすることがGoogleによって推奨されています。 しかしiOSとAndroidの両方で同じモバイルアプリケーションを展開したい場合、異なる開発ツールを使い分ける手間やプログラミング言語の学習コストを考えると、できれば単一のソースコードから2種類のプラットフォームへ展開できることが望ましいでしょう。 最近ではこうしたニーズに対応して単一のソースコードからマルチプラットフォ

                      単一のSwiftコードからiOSアプリとAndroidアプリが作れる「Skip 1.0」正式リリース。SwiftをKotlinへトランスパイル
                    • GCP連載#3 Goでサーバーレスな管理画面アプリを作る | フューチャー技術ブログ

                      このうち、Cloud Funcionsと、AWSのLambdaはライバルのように言われます。実際機能的には似通っています。LambdaはHTTPのサーバーとして公開しようとすると、API Gatewayが必要なぐらいですね。 Cloud RunとFargateもライバルのように言われますが、Fargateは複数のコンテナを組み合わせたタスク単位で実行しますが、Cloud Runは単体のコンテナの実行になり、そこは少し差があります。 今回は、Go + Vue + Cloud Runでかんたんな管理画面を作ろうと思います。ストレージ側にもサーバーレスがあります。MySQLやPostgreSQLのクラウドサービス(Cloud SQLとかRDS)は、サーバーマシンを可動させて、その上にDBMSが稼働しますので、起動している時間だけお金がかかってしまします。一方、FirestoreやDynamoDB

                        GCP連載#3 Goでサーバーレスな管理画面アプリを作る | フューチャー技術ブログ
                      • 数年来の技術的負債を改修した話 - 2種類のORM並列状態からの脱却 -

                        はじめに 勝丸と言います。ログラスのエンジニアが毎週記事を発信するLoglass Tech Blog Sprint 2周目に突入しました。前回は「心穏やかにDBバージョンアップ!ロジカルレプリケーションで安全にバージョンを切り戻せるようにした話」という記事を書きました。こちらもよろしくお願いします。普段はログラスの横串組織で活動しています。 この記事では「数年来の技術的負債を改修した話 - 2種類のORM並列状態からの脱却 -」というタイトルで、年末から年始にかけてやっていた作業について共有します。 この記事で得られること リファクタリングのやり方や考え方 リリースへの持っていき方 投資判断のタイミングや負債解消について 経緯 ログラスでは2種類のORMが存在していました。創業時にORMとしてExposedを採用したのですが、後に一部機能が足りないことが発覚し、別のORMを利用し始めました

                          数年来の技術的負債を改修した話 - 2種類のORM並列状態からの脱却 -
                        • pytest fixtureの地味だけど重要な部分について - 株式会社ホクソエムのブログ

                          こんにちは。ホクソエム支援部サポーターのPython担当、藤岡です。 最近はデータエンジニア見習いとしてBI周りを触っています。 今回はpytestのfixtureについての記事です。 pytest自体が有名で記事もたくさんあるので、今回は地味だけど重要だと個人的に思っている usefixturesとスコープについて取り上げます。 地味とはいえ、pytestの初心者がfixtureを使いこなすためのステップアップに必要な内容だと思います。 ぜひマスターしていただければ幸いです。 1. 前書き 基礎的なことに関してはこの記事にとても簡潔にまとまっているので、こちらをまず読むのがオススメです。とても良い記事です。 pytestは独自の書き方を持ち込んでいるライブラリです。その機能を使いこなすと「綺麗」なコードにはなりますが、反面それは使われている機能を知らない人にとってはこの上なく読みにくいも

                            pytest fixtureの地味だけど重要な部分について - 株式会社ホクソエムのブログ
                          • iOSプロジェクト内の神クラス解体の進め方 - Mirrativ Tech Blog

                            こんにちは、クライアントエンジニアの竹澤(@to4iki)です。 Mirrativでは、リアルタイムの配信視聴時のコメントやギフト機能を実現するために、WebSocket ベースの仕組みを利用して、サーバー・クライアント間でPub/Subのメッセージングを行っています。*1 サーバーからのHTTPレスポンスをマッピングするように、ペイロードのJSONを受け取り、それをクライアントで扱う型に変換して使用していますが扱いにくい点がありました。本記事では改善に取り組んだ内容と進め方を紹介します。 目次 課題 ゴールと進め方の認識あわせ 1. 最初にゴールの定義を行う 2. 段階的な進め方の方針と見通しを立てる ゴールまでの道筋を可視化する 3. 技術的な懸念事項などを先に潰し作業をパターン化する 動作検証に利用する再利用可能なサンプルのペイロードを定義する Decodable準拠のレスポンスでI

                              iOSプロジェクト内の神クラス解体の進め方 - Mirrativ Tech Blog
                            • TypeScriptのユニットテスト環境を構築してみた | DevelopersIO

                              はじめに アノテーションの髙嶋です。 私は業務でよくGoogle Apps Script(以降、GAS)を書いています。 ただGASの実行環境で実行できるテスト用フレームワークがなく、関数単位での動作確認がしづらい状態です。 なので、多少でもローカル環境でテストを実施できるようにユニットテスト実行環境を構築したので、その手順を記述します。 ただ、ユニットテストはTypeScriptで書いた状態で実行しています。 そのため、GASの関数部分はモックする必要があり、実行環境での最終的な動作確認は別途必要になります。 なんでテストが必要なの? そもそもなんでテストをする必要があるのか。 よく聞く話かもしれませんが、プログラムは考えたとおりに動くわけではなく、書かれたとおりに動きます。 ですので、プログラムが仕様どおり(考えたとおり)に動作していることを確認するためにはテストの実施が必要です。 テ

                                TypeScriptのユニットテスト環境を構築してみた | DevelopersIO
                              • #yapcjapan YAPC::Kyoto 2023に行ってきた・喋ってきた - その手の平は尻もつかめるさ

                                yapcjapan.org 2023年3月19日に開催されたYAPC::Kyoto 2023に参加してきました。もう2週間も前の話になるんですね......USに戻ってきてから色々あり、すっかりブログを書くのが遅くなってしまいました。 YAPC::Kyotoの様々な感想については「にゃんこ酒場.fm」で id:papix、id:karupanerura さんら運営の方々と喋ったPodcastが公開されているので是非お聴きくださいませ! nyanco-sakaba-fm.hatenablog.com 面白かったトーク ジョブキューシステムFireworqのアーキテクチャ設計と運用時のベストプラクティス id:tarao さんの発表。Fireworqが発表されたあたりって、スケーラビリティが高くなおかつ複数の言語から良い感じで使えるジョブキューのプロダクトについて「何使えば良いんだろうねえ」っ

                                  #yapcjapan YAPC::Kyoto 2023に行ってきた・喋ってきた - その手の平は尻もつかめるさ
                                • タクシーアプリ「GO」Android版へ自動テストを導入するまでの道のり - DeNA Testing Blog

                                  こんにちは、Androidチームの田熊(fgfgtkm)と外山(sumio)です。SWETのAndroidチームでは、Androidのプロダクトに対して自動テストのサポートをしています。 この度株式会社Mobility Technologiesが提供するタクシーアプリ「GO」のAndroid版に対する、おおよそ2年間に渡る取り組みが終了しました。 本記事では、この取り組みで行ってきた次の2点を紹介したいと思います。 「GO」のAndorid版に対してどのような自動テストを導入したか 開発チームに自動テストを定着させるまでにやったこと タクシーアプリ「GO」に対しての自動テスト導入 SWETのAndroidチームは「社内のAndroidエンジニアが自動テストを書くことを習慣化している」ことをゴールの1つとして、自動テストを普及させるための取り組みをしています。 その中でAndroidのテスト

                                    タクシーアプリ「GO」Android版へ自動テストを導入するまでの道のり - DeNA Testing Blog
                                  • SREエンジニアが目指すGKE共通デプロイ基盤の完成形 - ぐるなびをちょっと良くするエンジニアブログ

                                    こんにちは。開発部門 開発部 Data AI Strategyセクション データ基盤 Unitの小野です。 2020年8月に入社してから早3年。SREエンジニアとして、日々業務改善に励んでいます。 ここ一年ほど、DAOという組織改善プロジェクトを推進していく中で、Google Kubernetes Engine (GKE)を使ったGKE共通デプロイ基盤の整備も進めてきました。 ※ DAOについての詳細はSREエンジニアが組織改善プロジェクトを立ち上げてみたを参照ください SREエンジニアの責務の一つは、プロダクトのリリースサイクルを極限まで短くし、次々と新しいサービスを世の中にリリースすることです。ChatGPTのような誰でも簡単に扱えるAIモデルが誕生したことで、プロダクト開発競争は今後ますます激しくなっていくと予想しており、SREエンジニアの責務の重要性をヒシヒシと感じています。 そう

                                      SREエンジニアが目指すGKE共通デプロイ基盤の完成形 - ぐるなびをちょっと良くするエンジニアブログ
                                    • Python Clickユニットテスト・レシピ集 - CLIではじめるテスト駆動開発(その1) - JX通信社エンジニアブログ

                                      「JX通信社Advent Calendar 2019」20日目の記事です。 こんにちは。2019年9月からJX通信社のエンジニアとなった鈴木(泰)です。好きな食べ物はオムライスです。 本日は、Python Clickユニットテスト・レシピ集 - CLIではじめるテスト駆動開発(その1)と題して、CLIのユニットテストのスニペットを書いてみたいと思います! "その1"とした理由は、アドカレに間に合わな(小声)・・・じゃなかった・・・この記事だけで全ての備忘録を列挙すると長くなりすぎてしまい、記事が読み難くなると判断したからです。 今後も引き続き少しづつ備忘録を紹介していければと思います。 はじめに 私はCLIをよく書きます。その理由は、バックエンドシステムの運用業務に携わっていることにあります。運用業務では様々な場面でCLIを作成します。私の場合、運用業務における手作業を自動化するため、バッ

                                        Python Clickユニットテスト・レシピ集 - CLIではじめるテスト駆動開発(その1) - JX通信社エンジニアブログ
                                      • モバイルアプリ用テスト自動化ツール「Appium 2.0」まもなく登場。ドライバーの分離、プラグインによる拡張対応など、新機能を開発者Jonathan Lipps氏が解説

                                        モバイルアプリ用テスト自動化ツール「Appium 2.0」まもなく登場。ドライバーの分離、プラグインによる拡張対応など、新機能を開発者Jonathan Lipps氏が解説 モバイルアプリケーションのテスト自動化ツールの代表的なツールが、オープンソースで開発されている「Appium」です。 そのAppiumの次期版となる「Appium 2.0」正式リリースが迫っています。Appium 2.0ではAppium本体から各プラットフォームへ対応するためのドライバが分離され、ドライバの開発が容易になります。 また、Appiumの機能を拡張するプラグイン機構も提供されるため、今後さまざまな拡張機能の登場が期待されるでしょう。 これらAppium 2.0の新機能について、AppiumのプロジェクトリードであるJonathan Lipps氏が、Appiumベースの商用サービスであるHeadSpinを国内で

                                          モバイルアプリ用テスト自動化ツール「Appium 2.0」まもなく登場。ドライバーの分離、プラグインによる拡張対応など、新機能を開発者Jonathan Lipps氏が解説
                                        • LIFULL HOME'S 賃貸物件詳細ページの基盤刷新について - LIFULL Creators Blog

                                          プロダクトエンジニアリング部の海老澤です。 普段は LIFULL HOME'S の賃貸部門のフロントエンド開発をしています。 近年、LIFULL の開発部門では「開発生産性」という言葉が取り沙汰されるようになりました。 LIFULL HOME'Sの主要リポジトリは10年以上運用され続け、今も多くの開発者によって日々改修され続けています。 長い年月の中で小さな設計ミスも積み重なって大きくなり、ちょっとした実装でも入念な調査が必要となり開発生産低下の要因となっていました。 また10年以上前に採用したフレームワークで稼働しているため、今ではドキュメントを探すのも一苦労という具合です。 そこで主要開発部門では「自部門の機能はマイクロサービスへと切り離し、各々で面倒を見る」という方針になりました。 賃貸部門も同様に機能の切り離しを始め、先日「物件詳細ページ」のマイクロサービス化を行いました。 今回は

                                            LIFULL HOME'S 賃貸物件詳細ページの基盤刷新について - LIFULL Creators Blog
                                          • Python in Visual Studio Code – September 2021 Release - Python

                                            We are pleased to announce that the September 2021 release of the Python Extension for Visual Studio Code is now available. You can download the Python extension from the Marketplace, or install it directly from the extension gallery in Visual Studio Code. If you already have the Python extension installed, you can also get the latest update by restarting Visual Studio Code. You can learn more abo

                                              Python in Visual Studio Code – September 2021 Release - Python
                                            • Writing unit tests in Golang Part 1: Introducing Testify

                                              Unit testing is a way of writing tests for the individual components (aka, the smallest part) of a program. The purpose of it is to validate that any piece of code is always working as expected. Moreover, unit testing has a lot of advantages such as improving the quality of code, providing documentation, also the code can be tested individually and doesn’t require another module in order for it to

                                                Writing unit tests in Golang Part 1: Introducing Testify
                                              • mypy plugin に入門して社内 OSS である gokart を型安全にしてみた - エムスリーテックブログ

                                                今回は mypy plugin を利用して、型安全に対応していないライブラリを型安全にする方法を紹介します! 具体的にはエムスリーが開発する機械学習パイプラインツールである gokart を対象とし、mypy plugin を用いてどのように型の課題を解消したかについて解説します。 対象読者としては、既に gokart を使ってくださっている方はもちろんですが、dataclass や Pydantic がどのように型を担保しているかについて興味がある方も想定しています。 github.com gokart について gokart における型の問題 クラス変数をハックするツールである mypy による型チェックする上での課題 mypy plugin を自作してみる 静的解析時のイベントにフックする Plugin クラス 構文解析の結果を上書きする mypy API mypy plugin 開

                                                  mypy plugin に入門して社内 OSS である gokart を型安全にしてみた - エムスリーテックブログ
                                                • Snowflakeの力を引き出すためのdbtを活用したデータ基盤開発の全貌 - CARTA TECH BLOG

                                                  当記事は、dbtのカレンダー | Advent Calendar 2023 - Qiita の23日目の記事です。 こんにちは、株式会社CARTA MARKETING FIRMのデータエンジニア、@pei0804です。データエンジニアリングのほか、組織運営やデータエンジニア育成にも携わっています。 本記事では、Snowflakeを中心とした当社のデータ基盤「Vision」と、その中核であるdbtの利用について深掘りします。dbtを活用することで、SQLのみでデータパイプラインを効率的に構築し、作業の効率化を図っています。 dbt導入の詳しい導入背景は以下のスライドでご覧いただけます:広告レポーティング基盤に、dbtを導入したら別物になった話 / tokyo-dbt-meetup-4 - Speaker Deck。 私たちのチームでは、ビジネスに直接価値を提供しているdbtモデルの開発はプロ

                                                    Snowflakeの力を引き出すためのdbtを活用したデータ基盤開発の全貌 - CARTA TECH BLOG
                                                  • PerlでスナップショットテストをするTest::Snapshotのご紹介 - Masteries

                                                    このエントリは, 「Perl Advent Calendar 2020」の9日目の記事です. qiita.com 昨日のエントリは, id:xtetsuji さんの「xargs や find と合わせて使う・代わりに使う Perl」でした. qiita.com 実は最近異動をしていた id:papix です. 異動後もPerlをモリモリ書いている日々ですが, 移動先のチームのプロダクトで同僚の id:mizdra が導入していた Test::Snapshot が便利だったので紹介します. metacpan.org Test::Snapshot Test::Snapshotは, その名の通り「スナップショットテスト」を提供するモジュールです. スナップショットテストとは, 予め「スナップショット」と呼ばれる期待値を生成しておき, テストを実行する際には実行結果とスナップショットを比較してテス

                                                      PerlでスナップショットテストをするTest::Snapshotのご紹介 - Masteries
                                                    • APIテストで質とスピードの両立を実現 - LegalForceキャビネの事例 - LegalOn Technologies Engineering Blog

                                                      こんにちは、株式会社LegalOn TechnologiesのLegalForceキャビネ開発部でQAリードを務めている島根(@shimashima35)と申します。 QAというとマニュアルテストが中心かと思われるかもしれません。確かにマニュアルテストはQAの業務の一部ではありますが、「質とスピードの両立」つまりプロダクト品質の高さとリリーススピードの両立を目指すため自動テストの導入もおこなっています。 今回はLegalForceキャビネのバックエンドに対するAPIテストを実装した話をご紹介します。 APIテストとは まず最初にAPIテストについて説明します。 APIテストの概要 APIテストとはWeb APIの外形的な仕様を満たしているかを HTTP(S)を用いてテストすることです。バックエンドのコントローラーに対するユニットテストとは以下の点が異なります。 HTTP(S)を経由する デ

                                                        APIテストで質とスピードの両立を実現 - LegalForceキャビネの事例 - LegalOn Technologies Engineering Blog
                                                      • 10年放置されたレガシーコードをモダン化する | BLOG - DeNA Engineering

                                                        ゲーム事業部の酒井です。 今年DeNAのMobageは15周年を迎えます。同時にそれを支えてきた技術にも15年の歴史があることになります。サービスを構成しているさまざまな技術は、そのときどきの事情やトレンドによって適切に更新・メンテナンスしながら運用されてきました。 一方でサービスを構成する重要なコンポーネントであるにもかかわらず、多様な理由から長らくメンテナンスもされず、現場から忘れ去られてしまったものも存在します。実際Mobageのサービスのひとつ「アバター」にそのようなコンポーネントがあり、それがあることをきっかけにサービスの存続に関わる問題としてにわかに噴出するということがありました。 そのため該当コンポーネントのコードをアップグレードし、かつ今後は誰でもメンテナンスができるようビルド環境の再整備を行いました。今回はこの実例をもとに、レガシーコードをモダン化した試みを紹介します。

                                                          10年放置されたレガシーコードをモダン化する | BLOG - DeNA Engineering
                                                        • UPSIDERのこれからを担うFlutterアプリのアーキテクチャ - UPSIDER Techblog

                                                          こんにちは、UPSIDERで日々モバイルアプリ開発をしているふっくです。 UPSIDERでは今後、よりアプリ開発に注力し決済プラットフォームの中核的な役割を果たすことを目指しています。 今回は、今後の開発・運用を目指して考えたFlutterアプリ向けのアーキテクチャを紹介します。 ネイティブアプリの世界で触れてきた色々なアーキテクチャ・フレームワークを参考に、開発の後半でも順調にスケールさせることができるように、工夫を凝らしました。 本アーキテクチャで作ったサンプルアプリもあるので、ぜひ以下のリンクから見てみてください。 https://github.com/upsidr/flutter_architecture_blueprint デモはこちら https://upsidr.github.io/flutter_architecture_blueprint/ 対象読者 目指すところ 参考に

                                                            UPSIDERのこれからを担うFlutterアプリのアーキテクチャ - UPSIDER Techblog
                                                          • Amazon CodeWhispererを使ったプロンプトエンジニアリングのベストプラクティス | Amazon Web Services

                                                            Amazon Web Services ブログ Amazon CodeWhispererを使ったプロンプトエンジニアリングのベストプラクティス 生成 AI コーディングツールは、開発者の日々の開発作業の仕方を変えています。関数の生成からユニットテストの作成まで、これらのツールはお客様のソフトウェア開発の加速に役立っています。 Amazon CodeWhisperer は、開発者の自然言語のコメントと周囲のコードに基づいてコードのレコメンデーションを提供することで、開発者の生産性を向上させる IDE とコマンドラインの AI による生産性向上ツールです。 CodeWhisperer を使用すると、開発者は「 S3 にファイルをアップロードする Lambda 関数を作成する」など、特定のタスクを簡単な英語で概説するコメントを単純に記述することができます。 CodeWhisperer に対してこ

                                                              Amazon CodeWhispererを使ったプロンプトエンジニアリングのベストプラクティス | Amazon Web Services
                                                            • Android でのコルーチンに関するベスト プラクティス  |  Kotlin  |  Android Developers

                                                              このページでは、コルーチン使用時のアプリのスケーラビリティとテスト容易性を高めることによってプラスの効果をもたらすおすすめの方法をいくつか紹介します。 ディスパッチャを挿入する 新しいコルーチンの作成時や withContext の呼び出し時に Dispatchers をハードコードしないでください。 // DO inject Dispatchers class NewsRepository( private val defaultDispatcher: CoroutineDispatcher = Dispatchers.Default ) { suspend fun loadNews() = withContext(defaultDispatcher) { /* ... */ } } // DO NOT hardcode Dispatchers class NewsRepository

                                                                Android でのコルーチンに関するベスト プラクティス  |  Kotlin  |  Android Developers
                                                              • PyCon JP 2024 @TOC有明 登壇資料まとめ

                                                                PyCon JP 2024に行ってきました PyCon JP 2024に参加してきました! 今回は私史上初の主催スタッフとしての参加で、会場の運営に携わりました。 以下、登壇資料のまとめ集です。 PyCon JP 2024タイムスケジュール ※ユーザ名は敬称略です。 Day1 Django Ninjaで高速なAPI開発を実現する: 実践ガイドとベストプラクティス @mmmm70641 Robot FrameworkとNVDAスクリーンリーダーによるアクセシビリティのテスト自動化 @24motz Crafting Your Own Numpy: Do More in C++ and Make It Python @tigercosmos 5年分のツケを一気に払った話 @soogie あなたのアプリケーションをレガシーコードにしないための実践Pytest入門 @fuine 実践structlo

                                                                  PyCon JP 2024 @TOC有明 登壇資料まとめ
                                                                • GitHubのDependabotが作るプルリクエストで動くCI/CDで、デプロイさせたくない | DevelopersIO

                                                                  GitHubには、Dependabotという便利な機能があります。 これは、利用しているライブラリに脆弱性が見つかったり、更新できる場合に、自動でプルリクエストを作ってるくれる機能です。 Keeping your supply chain secure with Dependabot - GitHub Docs GitHubにDependabotを導入して依存ライブラリを自動アップデートする | DevelopersIO とてもありがたい機能なのですが、同時にプルリクエスト(のためのブランチ)が作られて、同時にCI/CDが動いて、同時に同じAWS環境にデプロイされるのは嬉しくありません。 そこで、本記事では、「Dependabotで作られたプルリクエストの場合、デプロイさせない」を試してみます。 なお、CI/CDはCircleCIを使います。 おすすめの方 GitHubのDependabo

                                                                    GitHubのDependabotが作るプルリクエストで動くCI/CDで、デプロイさせたくない | DevelopersIO
                                                                  • ラクマiOSアプリのフルSwift化を約4年かけてやり遂げた話 | Rakuten Rakuma Tech Blog

                                                                    こんにちは。楽天ラクマ モバイルアプリケーション開発グループのdarquroです。 今回はラクマiOSアプリのフルSwift化を、約4年かけてやり遂げた話を書きたいと思います。 ことの始まり私は2018年10月1日に楽天グループに入社しました。 当時採用面接で驚いたのは、アプリエンジニアのチーム体制を聞いたところ、iOS1名、Android1名という状態だったことでした。 なので、私がiOSエンジニアとして入社し、やっとiOSアプリは2人体制になったというわけです。 2018年はラクマの前身である「フリル」を運営する株式会社Fablicを吸収合併し、それに伴い開発組織としても再構築していく時期でした。 そういったチャレンジングなタイミングに入社を決めたわけではありますが、iOSアプリのコードの状況はというと、Objective-Cという大きい技術的負債を抱えており、なかなかメンテナンスをし

                                                                      ラクマiOSアプリのフルSwift化を約4年かけてやり遂げた話 | Rakuten Rakuma Tech Blog
                                                                    • タップル iOSにおけるFeature Module開発の導入と運用

                                                                      このエントリーはCyberAgent Developers Advent Calendar 2021 の17日目の記事です。 マッチングアプリ「タップル」のiOS開発を担当している永野です。 本記事では、2019年からタップルで導入されているFeature Module開発について、導入の背景から現行の運用まで紹介します。 Feature Module開発を採用した背景 タップルのiOSアプリケーションは2014年5月にリリースされてから今年で8年目をむかえるプロダクトです。 運用・開発を重ねるにつれて、コード量が多くビルド時間が問題となっていました。特に大型の機能開発では画面を一から作り直す機会が多く、開発速度の大きなボトルネックになっていました。機能開発のイテレーションが高速化され、並列で開発しながらも、開発速度を保つために機能間の依存関係を疎結合にしたいというモチベーションから、Fe

                                                                        タップル iOSにおけるFeature Module開発の導入と運用
                                                                      • Nature Remo開発におけるテストフレームワーク『Catch2』の活用方法を紹介します - Nature Engineering Blog

                                                                        3日目! Nature Engineering Blog祭3日目は、ファームウェアエンジニアの中林 (id:tomo-wait-for-it-yuki) がお送りします。みなさま、自動テストはお好きですか?私は大好きです。手動で何度も同じことをテストするのは苦痛ですが、それをプログラミングのタスクに転化できるとなれば、最高ですよね! 今回はNature Remoのファームウェア開発で使用しているユニットテストフレームワーク『Catch2』の活用方法を紹介します。ESP-IDFで使えるテンプレートプロジェクトも用意してありますので、少し長いですが、最後まで楽しく読んでいただけると嬉しいです。 Catch2 Catch2は (modern) C++で書かれたユニットテストフレームワークです。Nature RemoのファームウェアはC言語で書いていますが、テストフレームワークはC++で書かれたも

                                                                          Nature Remo開発におけるテストフレームワーク『Catch2』の活用方法を紹介します - Nature Engineering Blog
                                                                        • Announcing GraalWasm — a WebAssembly engine in GraalVM

                                                                          We’re happy to announce the initial public work on GraalWasm — the WebAssembly engine implemented in GraalVM. GraalWasm currently implements the WebAssembly MVP (Minimum Viable Product) specification, and can run WebAssembly programs in the binary format, generated with compiler backends such as Emscripten. Supporting WebAssembly expands the set of languages GraalVM can execute with a whole other

                                                                            Announcing GraalWasm — a WebAssembly engine in GraalVM
                                                                          • Hypothesisとpytestを使ってDjangoのユニットテストを書く - 何かを書き留める何か

                                                                            Hypothesisとは何か、プロパティベーステストとは何か Hypothesisは、Python向けのプロパティベーステストのライブラリである。 プロパティベーステストは、生成された多数の入力データに対してプロパティ(性質)が満たされるかどうかをテストする手法である。 HaskellのQuickCheckライブラリが初出で、現在は各プログラミング言語に移植されている。 従来のユニットテストは、ある程度固定したテストデータを指定してテストを行っていた。 その際、境界値分析などで妥当なパラメータを決定していた。 しかし、境界値分析が必ず通用するとは限らないし、人間が行う以上、ミスも発生する。 プロパティベーステストはデータを固定する代わりにそのデータが満たすプロパティを指定してテストを行う。 実際のテストケースはHypothesisがプロパティを満たすパラメータを決めて生成してくれる。 人力

                                                                              Hypothesisとpytestを使ってDjangoのユニットテストを書く - 何かを書き留める何か
                                                                            • GitHub - stack-auth/pgmock: In-memory Postgres for unit/E2E tests

                                                                              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

                                                                                GitHub - stack-auth/pgmock: In-memory Postgres for unit/E2E tests
                                                                              • .Net 5 時代のテストフレームワーク比較 - Qiita

                                                                                この記事は C# Advent Calendar 2020 の 8 日目の記事です。 Microsoft 公式ドキュメント .NET でのテスト - .NET Core | Microsoft Docs に記載されている主要な三つの xUnit, NUnit, MSTest フレームワークを比較してみます。 結論、どれを使うべきか 新しいプロジェクトなら xUnit か NUnit を使うとよいと思います。過去のプロジェクトのマイグレーションならそのプロジェクトで使っているフレームワークでよいと思います。 Visual Studio からの実行や CLI (dotnet test) の実行、例外テストやデータドリブンテスト (Theory, DataSource) といった主要な機能はどのフレームワークでも対応しています。 個人的には xUnit の書き方が好きなので xUnit を使うこ

                                                                                  .Net 5 時代のテストフレームワーク比較 - Qiita
                                                                                • Why we do machine learning engineering with YAML, not notebooks

                                                                                  Source: PexelsMost data scientists spend the majority of their working hours in a notebook. As a result, most production machine learning platforms prioritize notebook support. If you try out a new production ML platform, chances are its onboarding tutorial will begin with a .ipynb file. When we built Cortex, our production machine learning platform, we spent a lot of time considering the correct

                                                                                    Why we do machine learning engineering with YAML, not notebooks