InfoQ ホームページ テスト に関するすべてのコンテンツ
-
モダンテストへの移行:テスターがチームの補助輪になることをどのように止めるか
従来のテストは、テスターがセーフティネットとして機能し、テストが実装から分離されているが、これは品質に悪影響を与える可能性がある。そうではなく、テスターはコーチとして行動し、チームで協力し、変化を促進することで、チームの補助輪になってしまうことをやめることができる。文化が重要で、特に環境が心理的安全性を提供することが重要である。
-
AWS Step Functions向けの可観測性を提供する新機能
最近、AWSは、Step Functions向けのステートマシンページの新たなオプトイン機能を発表した。開発者は、新しい実行ページオプションを有効にすることで、標準ワークフローをすばやく分析、デバッグ、最適化することができるようになった。
-
無限を表現する: 開発者にとって不可能なこと
開発者は、その日々の業務の中で、不可能なことに直面する場合がある。無限大を直接的に表現することや、あるいは物理的に独立したコンピュータ上に無限大の精度を保持することは不可能だ。ストレージや表現には限界があり、この不可能性を無視するか、あるいは意識するかによって、バグやシステムの挙動が期待とは異なるものになる可能性がある。Kelvin Henney氏はQCon London 2022で、6つの不可能(Six Impossible Things)について基調講演を行った。
-
Lyftにおけるマイクロサービステストの拡張と自動化
Liftは以前、エンドツーエンドのテストなど、いくつかの目的でクラウドベースの分離環境を使用していた。しかしながら、マイクロサービスの数が増えるにつれて、これらの環境を用いたテストでは拡張性が不足するようになり、次第に価値を失っていった。先日の記事では、Lyftが共有ステージング環境においてリクエスト分離を使用したテストへ移行し、運用デプロイメントのゲート管理に受け入れテストを使用するようになった経緯を紹介した。
-
Gradle7.4でテストレポートの統合へ
Gradleはオープンソースのビルド自動化ツールのバージョン7.4をリリースした。これにより、開発者は集約されたテストとJacocoカバレッジのHTMLレポートを作成できる。バージョンカタログ機能を使うと、ビルドスクリプトで使う依存関係を一元的に宣言できる。共有ビルドサービスを使うと、複数のタスク間で状態またはリソースをキャッシュできる。
-
GitHubが機械学習を使って脆弱性コードスキャンを拡張した方法
GitHubは、機械学習技術をルールベースのセキュリティコードスキャン機能に適用し、既存のルールから新しいルールを自動的に推測することで、あまり一般的ではない脆弱性パターンにその機能を拡張できることを期待している。
-
ディフェクト・マスの測定が重要な製品領域のテストにどのように役立つか
「ディフェクト・マス」と呼ばれる測定を導入することで、プロジェクトは開発によって最も影響を受けた領域を見つけることができ、影響を受けた領域ごとに実行するテストの数を決定するのに役に立った。この測定値を他のKPIと一緒に使用することで、テストに集中する役に立った。顧客のインシデントの数を減らすことができた。
-
実車を使用したリモートソフトウェアの実証と妥当性確認の実装
Bosch は、シミュレートされた車ではなく、実際の車を使って自動回帰テストとユーザテストを行っている。目的は、テストエンジニアとユーザの両方の観点で、ソフトウェアを可能な限り迅速にテストすることだ。車にはリモートでアクセスが可能で、チームメンバは乗車せずに行うことができる。
-
GoのジェネリックがGo 1.18 Beta 1でデビュー
Goの最新のベータリリースGo 1.18 beta 1は、パラメータ化された型を使ったジェネリックプログラミングのサポートをついに導入した。長い間待ち望まれた待望の機能だ。さらに、テストファジングのサポートも追加されている。これは、入力を見つけてプログラムの不正な動作を明らかにするために使われる手法である。
-
コードを読む上での課題とその対処方法
コードの読むことは、多くの点で混乱を招く可能性がある。コードの読み方は明確に教えられておらず、コードの読み方を練習することはめったにない。ある役割を果たす認知プロセスを認識することは、コードをより適切に読��のに役立つ。
-
ゼロバグポリシを使ってバグを解決する
ゼロバグポリシ(zero bug policy)を採用すると、バグの優先順位付けが容易になり、チームの可視性とバグへの対応性を向上することができる。ただし、過激な変革なので、意思決定とバグの修正時間に関して、自分自身の状況に合わせることが必要だ。
-
Javaニュース総まとめ: IntelliJ IDEA、JEP 421、Groovy、Open Liberty、Hibernate ORM、Eclipse Collections
今週2021年11月29日の Java 総まとめでは、OpenJDK、JDK 18、Project Loom Build 18-loom+7-288、複数の Spring プロジェクトポイントリリース、Quarkus 2.5.1.Final、WildFly 26 Beta 1、Open Liberty 21.0.0.12、Hibernate ORM 6.0.0-Beta2、Eclipse Mojarra 2.3.17、GraalVM Native Build Tools 0.9.8、Groovy 4.0.0-RC1、Eclipse Collections 11.0.0、IntelliJ IDEA 2021.3、および JReleaser 0.9.0 からのニュースを特集する。
-
ClusterFuzzLiteによりGitHubアクションや他のCI/CDパイプラインでClusterFuzzを実行可能に
ClusterFuzzLiteは、その名前が示すように、Google ClusterFuzzの軽量バージョンだ。fuzzテストを通じてソフトウェアシステムのセキュリティと安定性の問題を見つけることを目的としたツールである。ClusterFuzzLiteは、数行のコードでCIパイプラインに統合されることを目的としているとGoogleは言っている。
-
GitHubがプロジェクトを導入、Codespace、Copilot、コードスキャニングなどをアップデート
Universe 2021カンファレンスで、GitHubは、新たなイシューエクスペリエンスを公開ベータ版として提供すると発表した。プロジェクトとダイナミックテーブル、CopilotサポートをJetbrainsとJavaに拡張、コードスキャニングにRubyのサポート追加など、他にも多数の機能が提供される。
-
FacebookがSuperpackでコード分析を活用してAndroidアプリを圧縮
最近、記事で、FacebookはAndroidアプリ圧縮の新しい手法のSuperpackについて説明している。これはコンパイラ分析にデータ圧縮を組み合わせたものだ。まだすべての人が利用できるわけではないが、Facebookはオープンソース化を望んでいる。