皆さん、こんにちは。
今週もソフトウェアテスト、テスト自動化に関するニュース記事をご紹介していきたいと思います。
今回は国内ニュース2記事、海外ニュース3記事をご紹介回したいと思います。
■記事内リンク
「国内ニュース」
・テクバン社ISTQB(JSTQB)プラチナパートナーに認定
・テスト自動化ツール「STAR-RPA」開発企業がFUNDINNOで株主募集へ
「海外ニュース」
・マインドマップ駆動テストでテスト戦略を強化する
・オープンソースソフトウェアを使用する企業の割合97%
・APIセキュリティテスト:主要なツールのトレンドと一歩先を行くためのプロのヒント
■国内ニュース
□テクバン社ISTQB(JSTQB)プラチナパートナーに認定
https://prtimes.jp/main/html/rd/p/000000027.000031612.html
こちらの記事は、テクバン株式会社は、JSTQBよりISTQBパートナープログラムの「プラチナパートナー」に認定された内容となります。
テクバン社は、自社での開発の他、第三者検証会社としてのQA・検証サービスも行われているようです。
会社規模としては、テクバン社のサイトを確認したところ、ここ数年で1,000人以上となっており、大企業へと成長されているようです。
https://www.techvan.co.jp/
今回のJSTQBのパートナーシップ「Platinum」は、JSTQBの公式サイトを確認したところ、「少なくても3名のAdvanced Level認定者が必要」との条件と、費用の条件が掲載されていました。
http://jstqb.jp/partnership.html
テクバン社の規模間や社内の教育体制などからすると、今回のプラチナパートナーの認定は妥当ではないかと思います。
バルテス社、SHIFT社、ベリサーブ社など第三者検証会社はありますが、今後はテクバン社も注目度が上がってきそうですね。
□テスト自動化ツール「STAR-RPA」開発企業がFUNDINNOで株主募集へ
https://hedge.guide/news/frontes-fundinno-251.html
こちらの記事は、株式投資型クラウドファンディングサービス「FUNDINNO」にて、「STAR-RPA」を開発している株式会社フロンテスが株式募集を行っている内容となります。
該当の募集ページは以下となっていました。
https://fundinno.com/projects/251
タイトルは「【金融、政府機関なども採用】自動化が進まないシステムテスト現場を<ブロック組み立て>手法を用いて超改革!クラウド化で世界中の「脱・手作業」に挑む」となっています。
約1,500,000万を目標募集額とされており、「STAR-RPA」の開発費用の他、クラウド展開、継続利用、販売路の拡大をねらっているようです。
「STAR-RPA」は、ノーコード・ローコードのテスト自動化ツールで、「プレハブ方式」と呼ばれる方法でテスト設計を行っていくようです。
「プレハブ方式」では、操作の記録を行わずに、テストシナリオ作成、画面操作、テストデータを登録することで、自動でテストを組み立てて、実行するようです。
また、「STA-RPA」は、aws版は開発済となっていて、Webアプリ、Webサービス、クラウド計システムの展開を予定されていて、主にWebコンテンツに対する自動化サービスのようです。
「STA-RPA」の申込開始は、2021/7/20 19:30~とのようです。
ご興味のある方は、「STA-RPA」の募集ページにアクセスしてみてはいかがでしょうか。
https://fundinno.com/projects/251
■海外ニュース
□マインドマップ駆動テストでテスト戦略を強化する
https://www.infoq.com/jp/articles/mindmap-driven-testing/
こちらの記事は、infoq.comに掲載された「マインドマップ駆動テストでテスト戦略を強化する」という内容になります。
Infoq.comの英語版に掲載されていたものを取り上げられています。
マインドマップについてまとめられていましたのでご紹介したいと思います。
◇マインドマップとは何か?
マインドマップは視覚的な思考ツールです。
マインドマップは、あなたがあなたの思考過程を視覚化することを可能にします。
マインドマップは、脳に最も効果的な学習手法です。
マインドマップは、情報を視覚的に整理するために使用される図です。
マインドマップを使用すると、複雑な情報を簡略化された視覚的な形式で表示できます。
すべてのマインドマップは、単一の概念に基づいて作成されます。
概念は、中央に関連するアイデアが追加されたイメージとして表されます。
主要なアイデアは中心的な概念に直接関連しており、他のアイデアはそれらから分岐します。
◇なぜテストでマインドマップを使用するのか?
マインドマップの使用法は、メモを取ることやブレーンストーミングだけに限定されません。
マインドマップは多目的に使用でき、日常の世界で直面するさまざまな問題を解決します。
ソフトウェアテストコミュニティは、非常に長い間マインドマップを使用してきました。
マインドマップの使用法を拡張して、探索的テストを記録しました。
マインドマップの放射状の構造は、テスト中に全体像を見ることができました。
マインドマップの最終バージョンをレポートとして開発者や利害関係者と共有し始めました。
フィーチャーカバレッジ、実行されたテストケース、およびそれらの結果などのすべての重要な情報が1ページに表示され、テストレポートにかかる時間を節約できました。
より多くの読者が究極の思考ツールからメリットを得ることができるように、私はマインドマップについての私の考えと知識を共有したかったのです。
◇従来のテストドキュメントの課題は何か?
従来のテストドキュメントは時間がかかり、かさばります。
長い標準化されたドキュメントの作成に多くの時間を費やしているにもかかわらず、それらはほとんど読まれたりレビューされることはありません。
アジャイル環境で作業する場合、私たちは変更を受け入れますが、これらのドキュメントは、その構造が変更に柔軟ではないため、アジャイルであることが制限される場合があります。
ドキュメントに多くの時間を費やすと、実際のテストを実行する時間が最小限に抑えられる可能性があります。
ドキュメントは、誰かが読んだときにのみ役立ちます。
従来のドキュメントの構造は変更に柔軟に対応できないため、頻繁に変更される場合に作成者が追加情報を追加、削除、または更新するのは面倒です。
誰もドキュメントを読んだり、レビューしたり、更新したりしないと、ドキュメントはすぐに古くなり、価値を付加できなくなります。
◇リードドキュメントととしてのマインドマップ
従来のドキュメントとは異なり、マインドマップの構造は変更に対して柔軟です。
変更があった場合は、ノードを追加するか、ノードを削除する必要があります。
現代のマインドマップツールはそれを簡単にします。
(例)
・Xmind8
https://jp.xmind.net/
・エドラマインド
https://www.edrawsoft.com/jp/edrawmind/
マインドマップを使用すると、コンテンツを俯瞰でき、必要な変更を簡単かつ迅速に見つけることができます。
更新、確認、保守が簡単になります。
最新のマインドマップツールにはバージョン管理機能が付属しており、同じマインドマップの異なるバージョンでの変更を比較できます。
マインドマップでは長い文や段落を使用していません。
アイデアは、キーワードを使用するか、最小限のテキストアプローチで表されます。
これにより、マインドマップが軽量で吸収されやすくなります。
マインドマップは、(文書から) 無駄を排除し、本当に重要な (テスト) ことに集中するのに役立ちます。
さらに、無駄を減らしながら学習を増幅します。
マインドマップの最良の部分は、それらを描くときに、より多くのアイデアを生み出すことです。
100ページのテストプラン (おそらく誰も読まない) を作成するかわりに、1ページのマインドマップを作成します。
シンプルで読みやすく保守が容易なテストプランは、100ページのテストプランよりもはるかに優れています。
過剰なテスト計画は、誰もがすべての詳細を把握することを困難にします。
◇マインドマップ駆動テスト
ソフトウェアテストは創造的な活動であり、マインドマップは創造性を解き放つのに最適です。
テストアイデアの生成はソフトウェアテストの基礎であり、マインドマップはアイデアのブレインストーミングと整理に最適なツールです。
マインドマップ駆動のテストとは、テストの計画からテストの実行まで、さまざまなソフトウェアテストアクティビティでマインドマップを活用することです。
◇よいマインドマップの作り方
1.ページの中心から開始する
なぜなら、中心から始めることで、あらゆる方向に広がり、より自由かつ自然にそれ自身を表現する自由が脳に得られるからです。
2.中心となるアイデアに画像や写真を使用する
中心の画像はより興味深く、集中力を維持し、集中力を高め、脳をより活気づけます! 中心の画像を手描きまたはパーソナライズすると、マインドマップの情報を記憶するのに役立ちます。
3.すべての色を使う
色は画像と同じくらいあなたの脳にとって刺激的だからです。
色はあなたのマインドマップに活気と生命を追加し、あなたの創造的思考に途方もないエネルギーを追加し、そして楽しいです! 色は想像力を解き放ち、精神的な近道を導き出します。
4.メインブランチを中心にイメージをあてて、レベル間を接続する
脳は連想によって機能するからです。
2つ (または3つ、または4つ) のものをリンクするのが好きです。
ブランチを接続すると、より簡単に理解して覚えることができます。
5.ブランチは直線ではなくカーブ
直線しかないのは脳が退屈するからです。
カーブは視覚的なリズムを与え、マインドマップを見やすくするだけでなく、脳の働きを良くします。
6.1行に1つのキーワードを使用
単一のキーワードがマインドマップにより多くの力と柔軟性を与えるからです。
これは、長い行や文章が思考を制限するためです。
キーワードは、大量の情報を吸収し、より多くの関連付けをトリガするのに役立ちます。
7.全体を通して画像を使用する
なぜなら、中心の画像と同様に、各画像も千の言葉の価値があるからです。
したがって、マインドマップに10枚の画像しかない場合、それはすでに10,000語のメモに相当します!
◇結論
マインドマップ駆動のテストを採用することで、次のようないくつかの利点があります 。
・マインドマップ駆動テストにより、テスタは包括的な形式のテストドキュメントを防止し、テストアイデアの生成に集中できます。
・マインドマッピング駆動のテストは、思考をあきらかにします。
それはアイデアを効果的にブレインストーミングして整理することを可能にします。
・リーンテストアーティファクトは、開発者や利害関係者に迅速なフィードバックを提供するのに役立ちます。
これにより、高品質を確保しながら、ソフトウェアの市場投入までの時間を短縮できます。
この移行の最初のステップは、アイデアをチームと共有し、チームのフィードバックを得ることです。
チームメンバがあなたの味方になり、マインドマップ駆動のテストを採用したら、リーダにこのアプローチを採用するように影響を与えることができます。
重要なのは、彼らを教育し、このアプローチから得られる価値を実証することです。
インクリメンタルアプローチを取り、概念実証 (POC) を設定し、マインドマップ駆動型テストがコンテキストで機能するかどうかを判断します。
マインドマップについて、ソフトウェアテストでの利用についてまとめられており、興味深い内容でしたので、ご紹介させていただきました。
□オープンソースソフトウェアを使用する企業の割合97%
https://www.softwaretestingnews.co.uk/97-of-businesses-to-use-open-source-software/
こちらの記事は、「softwaretestingnews.co.uk」に掲載されていた内容となります。
「OpenUK」と呼ばれるイギリスのレポート結果では、97%の企業がオープンソフトウェアを使用していることが明らかになりました。
オープンソースソフトウェアにより、英国経済の431憶ポンド(日本円にして約6兆円)を占めていて、大手企業の組織内でオープンソースソフトウェアが使用されていることがわかりました。
調査によると、これらのビジネスの64%は、過去1年間にオープンソースソフトウェアの役割の採用が増加したことにより、ビジネス成長にもつながりました。
さらに、企業全体でデジタルの採用が採用されているため、企業の約48%がオープンソースソフトウェアをより多く使用しているとも述べられています。
さらに、レポートでは、非技術組織の53%がオープンソースソフトウェアプロジェクトに貢献しており、英国の公共部門の89%がビジネスの内部でオープンソースソフトウェアを実行していることが明らかになりました。
英国の公共部門は、オープンソーススキルの向上を目指しています。
また、中小企業はビジネスでオープンソースソフトウェアを使用する可能性が高いことがわかりました。
オープンソースを採用する主な理由のいくつかは、低コスト、コラボレーション、スキル開発、コードの品質の向上、そして最後にセキュリティです。
デジタル経済に対するオープンソースソフトウェアの価値を強調する別のレポートが2021年9月に発行される予定です。
上記は英国の調査結果となっていますが、日本でも同じような傾向だと思われます。
ソフトウェアテストの自動化などにおいても、有料コンテンツよりも、いまだに無料のオープンソースソフトウェア(selenium,appiumなど)の割合は高いと思います。
また、無料によることにより、様々なユーザーが利用し、そのナレッジも多いためと考えられます。
興味深い調査結果でしたので、ご紹介させていただきました。
□APIセキュリティテスト:主要なツールのトレンドと一歩先を行くためのプロのヒント
https://techbeacon.com/security/api-security-testing-key-tool-trends-pro-tips-stay-step-ahead
こちらの記事は、「techbeacon.com」に掲載されていた内容となります。
APIセキュリティテストを関する内容がまとめられており、APIセキュリティを活用するための5つのポイントが掲載されていましたので、ご紹介したいと思います。
◇APIテストツールの状態
Webアプリケーションの世界から静的および動的分析ツールの転用がいくらかあり、これらのツールはAPIスペースにあるべきほど効果的であるとは限らないため、組織はそれらを使用する際に注意する必要があります。従来のテストツールのアプローチでは、サポートが、より一般的なRESTAPIや新しいGraphQLAPIタイプではなく、SOAPなどの古いAPIプロトコルに制限される可能性があります。
多くのテストツールは、従来のWebアプリケーションの設計にのみ関連するタイプの弱点を探すようにも設計されています。
これにより、APIセキュリティにギャップが生じる可能性があります。
◇1.ライフサイクルを通じてAPIをテスト
API関連の違反が蔓延しているため、チームがAPIを実装する際によくある間違いを犯している可能性があります。
ただし、アプリケーションセキュリティと同様に、ソフトウェア開発ライフサイクル(SDLC)には、組織がAPIを保護できる単一の場所はありません。
APIの定義だけでなく、デプロイ時にAPIがどのように保護されるかに注意を払いながら、ライフサイクル全体でAPIをテストする必要があります。
APIの定義方法、つまり呼び出すことができる関数と許可されるパラメーターに注意する必要があります。
APIベースの違反の多くは、不十分なアクセス許可チェックに起因するため、またはパラメーターがクライアント側で設定され、簡単に操作できるため、適切な認証および承認メカニズムが設定されていることを確認します。
また、使用しているAPIの種類を特定することも重要です。
場合によっては、SASTおよびDASTツールは、ツール自体の一部として、またはコンパニオンオファリングとしてAPIテストをサポートします。
APIセキュリティツールがCI / CDパイプラインツールと統合されている場合、ツールがAPIの欠陥を発見したときにチケットをファイルするか、展開をブロックするルールを設定することで、パイプラインを自動化できます。
多くのWebアプリケーションファイアウォール(WAF)を使用すると、API仕様ファイルをアップロードし、API定義に基づいてトラフィックルールを定義できます。
仕様に一致しないAPI呼び出しは禁止することも視野に入れます。
◇2.ツールを選択するときに何を探すべきか
ツールを選択するときは、探す属性と質問する質問を確実に把握することが最善です。
APIがもたらす可能性のある固有の課題をテストツールが処理できることを確認します。
また、既存の環境と相互運用するツールの機能を検証する必要があります。
これにより、SDLC全体のテストポイントからの結果を統合し、さらにそれらを相互に関連付けて、トリアージ、修復、およびレポートを高速化できます。
使いやすさとスケーラビリティは、他の2つの重要な考慮事項です。
他にも、組織全体にツールをどれだけ効率的に展開できるか、また、必要に応じてツールを進化させる柔軟性があるかどうかを検討する必要があります。
OpenAPI仕様などのドキュメントを確認したり、Postmanコレクションを確認したりして攻撃対象領域を知ることは、最初の一歩にすぎません。
さらに、ほとんどのAPIは通常、潜在的なセキュリティ問題を特定するために、特定の順序で適切なデータを使用してテストする必要があります。
これは、Postmanコレクション(基本的には保存されたAPIリクエストのグループ)からのデータがOpenAPI仕様と比較してより良いテストを可能にすることができます。
最後に、ほとんどのAPIは何らかの形式の認証を必要とします。
これは、実装プロトコルの幅広さと、トークンの動的で短命な性質のために課題があります
主要なAPIテストツールは、ベアラートークンからOAuth2まで、幅広い認証方法をサポートし、セキュリティ評価全体を通じて必要に応じて自動的に再認証されます。
◇3.開始するのに適した場所を見つける
APIテストは、4段階のプロセスがあります。
・APIディスカバリー
・APIのオンボーディングと構成
・APIテスト
・APIの脆弱性の検証
組織は、これらの各ステップのメカニズムと制御を備えている必要があります。
自動化する最も簡単で最初のタスクは、検証済みのセキュリティの脆弱性をソフトウェアライフサイクルツールにプッシュすることです。
脆弱性に関する確かなデータが得られたら、それをソフトウェア開発ツールだけでなく、プロジェクト管理ツール、CI / CDツール、ITSMツール、GRCツールなどにも統合することは理にかなっています。
組織は、アプリケーションスキャンツールや既存の構成管理データベースなどの他のツールの出力を転用して、初期APIインベントリを作成することから始めることもできます。
関連するすべてのAPIメタデータを自動的に収集し、APIインベントリを維持することは、APIセキュリティの一般的な要件です。
◇4.利用可能な無料のツールを利用する
ツールオプションを探す際には、組織がAPIテストの静的および動的分析に固有の制限を念頭に置くことが重要です。
無料の動的分析ツールとしてOWASP Zed Attack Proxy(ZAP)があります。
また、「Portswigger Burp Suite」無料のコミュニティエディションと低コストの商用ライセンスを提供する優れた動的分析ツールもあります。
ZAPとPortswigger Burp Suiteはどちらも、セキュリティプラクティショナーコミュニティ内で、アプリケーションに焦点を当てた侵入テスターによって一般的に使用されています。
静的分析の分野では、言語固有であり、APIテストに部分的に役立つ可能性のある多くのリンター(または静的ツール)があります。
◇5.APIセキュリティテストの課題に注意する
APIセキュリティのテストは、Webアプリケーションのセキュリティのテストとは異なるため、課題に注意する必要があります。
たとえば、APIドキュメントとスキーマの生成は、ベストプラクティスとして推進されています。
ただし、リリース速度を改善するというプレッシャーにより、アプリケーションチームがドキュメントを放棄したり、スキーマ定義を更新したりする場合があります。
これにより、実際のAPIデプロイメントとその統合が、最初に定義または文書化されたものとほとんど類似しないタイプのドリフトが発生する可能性があります。
さらに、組織はすべてのテスト前提条件を順番に取得するのに苦労することがあるため、APIテストを静的分析または動的分析のいずれかに制限することになります。
◇最後に
急速に出現している他の開発アプローチと同様に、APIはセキュリティ意識の欠如と未成熟なツールに悩まされています。
組織は、APIセキュリティツールが不完全であり、API保護の完全なエンドツーエンドセットを提供しない可能性があることに注意する必要があります。
大規模なAPIセキュリティを有効にするには、組織は多層防御アプローチを採用する必要があります。
これは、SAST、DAST、SCAなどのコアアプリケーションセキュリティプラクティスの基盤を確立することを意味します。
次に、API検出や異常検出などの機能を使用して、これらのプラクティスを強化する必要があります。
APIテストについて、まとめられており、興味深い内容でしたので、ご紹介させて頂きました。
■最後に
今回は、国内ニュース2記事、海外ニュース3記事を取り上げてみました。
次週も、ソフトウェアテスト、テスト自動化に関するニュースをご紹介したいと思います。
最後まで見て頂き、ありがとうございました。
サイトトップへ
https://susakiworks.com/
APIではじめるディープラーニング・アプリケーション開発-Google Cloud API活用入門-