IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社エクストーンの特許一覧

<>
  • 特開-ソフトウェアの試験方法 図1
  • 特開-ソフトウェアの試験方法 図2
  • 特開-ソフトウェアの試験方法 図3
  • 特開-ソフトウェアの試験方法 図4
  • 特開-ソフトウェアの試験方法 図5
  • 特開-ソフトウェアの試験方法 図6
  • 特開-ソフトウェアの試験方法 図7
  • 特開-ソフトウェアの試験方法 図8
  • 特開-ソフトウェアの試験方法 図9
  • 特開-ソフトウェアの試験方法 図10
  • 特開-ソフトウェアの試験方法 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024024634
(43)【公開日】2024-02-22
(54)【発明の名称】ソフトウェアの試験方法
(51)【国際特許分類】
   G06F 11/36 20060101AFI20240215BHJP
【FI】
G06F11/36 188
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023190450
(22)【出願日】2023-11-07
(62)【分割の表示】P 2022061451の分割
【原出願日】2022-04-01
(71)【出願人】
【識別番号】513211504
【氏名又は名称】株式会社エクストーン
(74)【代理人】
【識別番号】100138221
【弁理士】
【氏名又は名称】影山 剛士
(74)【代理人】
【識別番号】100177987
【弁理士】
【氏名又は名称】河野上 真緒
(72)【発明者】
【氏名】桂 信
(57)【要約】      (修正有)
【課題】効率的なソフトウェアのユーザーインターフェース画面のバグ検出方法を提供することを目的とする。
【解決手段】本発明の一態様における、ソフトウェアの試験方法であって、サーバ端末の制御部が、利用者端末から、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面に関する画像データを受信し、サーバ端末の記憶部に格納された、ソフトウェアの参照用ユーザーインターフェース画面のデザインデータを基に、ソフトウェアの参照用ユーザーインターフェース画面を分割してなる構成要素を抽出し、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面を分割してなる構成要素を抽出し、前記抽出した、前記ソフトウェアの参照用ユーザーインターフェース画面の構成要素と、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面の構成要素とを比較し、前記構成要素における差分を検出する。
【選択図】図8
【特許請求の範囲】
【請求項1】
ソフトウェアの試験方法であって、
サーバ端末の制御部は、
利用者端末から、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面に関する画像データを受信し、
サーバ端末の記憶部に格納された、ソフトウェアの参照用ユーザーインターフェース画面のデザインデータを基に、ソフトウェアの参照用ユーザーインターフェース画面を分割してなる構成要素を抽出し、
前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面を分割してなる構成要素を抽出し、
前記抽出した、前記ソフトウェアの参照用ユーザーインターフェース画面の構成要素と、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面の構成要素とを比較し、前記構成要素における差分を検出する、方法。
【請求項2】
請求項1に記載の方法であって、
前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面に関する画像データは、前記画面のスクリーンショットの動画像データを含む、方法。
【請求項3】
請求項1に記載の方法であって、
前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面を分割してなる構成要素を抽出することは、画像解析または機械学習モデルに基づいて抽出することを含む、方法。
【請求項4】
請求項1に記載の提供方法であって、前記構成要素における差分を検出することは、差分を画像解析または機械学習モデルに基づいて抽出することを含む、方法。
【請求項5】
請求項1に記載の方法であって、
さらに、前記検出した結果を、所定のレポート形式で出力するために生成する、方法。


















【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアの試験方法に関するものであり、特に、ソフトウェアのユーザーインターフェース画面のバグ検出方法に関する。
【背景技術】
【0002】
昨今、ソフトウェアの試験工程において、ソフトウェアの機能的なバグ検出方法の自動化が進んでいる。
【0003】
例えば、特許文献1において、機械学習によって、ソフトウェアのバグを検出することを効率化する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2018-018267号
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に開示の技術は、ソフトウェアの機能的なバグを検出するためには有効な技術となり得るものの、特許文献1に開示の技術をもって、ソフトウェアのユーザーインターフェース画面上のバグを検出することは困難である。他方、ソフトウェア試験工程において指摘されるバグの大半はユーザーインターフェース画面上のバグに関するものが多く、ユーザーインターフェース画面上のバグを検出する技術の効率化が求められる。
【0006】
そこで、本発明は、効率的なソフトウェアのユーザーインターフェース画面のバグ検出方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様における、ソフトウェアの試験方法であって、サーバ端末の制御部は、利用者端末から、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面に関する画像データを受信し、サーバ端末の記憶部に格納された、ソフトウェアの参照用ユーザーインターフェース画面のデザインデータを基に、ソフトウェアの参照用ユーザーインターフェース画面を分割してなる構成要素を抽出し、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面を分割してなる構成要素を抽出し、前記抽出した、前記ソフトウェアの参照用ユーザーインターフェース画面の構成要素と、前記利用者端末に表示されるソフトウェアのユーザーインターフェース画面の構成要素とを比較し、前記構成要素における差分を検出する。
【発明の効果】
【0008】
本発明によれば、効率的なソフトウェアのユーザーインターフェース画面のバグ検出方法を提供することができる。
【図面の簡単な説明】
【0009】
図1】本発明の第一実施形態に係る、ソフトウェアの試験システムを示すブロック構成図である。
図2図1のサーバ端末100を示す機能ブロック構成図である。
図3図1の利用者端末200を示す機能ブロック構成図である。
図4】サーバ100に格納されるデザインデータの一例を示す図である。
図5】サーバ100に格納される画像データの一例を示す図である。
図6】サーバ100に格納されるレポートデータの一例を示す図である。
図7】本発明の第一実施形態に係る、ソフトウェアの試験方法の一例を示すフローチャートである。
図8】本発明の第一実施形態に係る、ソフトウェアの試験方法のうち、デザインデータの比較方法の一例を示すフローチャートである。
図9】本発明の第一実施形態に係る、利用者端末に表示される、ソフトウェアのユーザーインターフェース画面例である。
図10】本発明の第一実施形態に係る、利用者端末に表示される、ソフトウェアのユーザーインターフェース画面から抽出された画像データの一例である。
図11】本発明の第一実施形態に係る、デザインデータの比較方法を説明する図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について図面を参照して説明する。なお、以下に説明する実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、実施形態に示される構成要素のすべてが、本発明の必須の構成要素であるとは限らない。
【0011】
<構成>
図1は、本発明の第一実施形態に係る、ソフトウェアの試験システムを示すブロック構成図である。本システム1は、ソフトウェアの試験を実施する事業者等に関連づけられるサーバ端末100、ソフトウェアのユーザーインターフェース画面を表示させ、ソフトウェアの試験を実施するエンジニア等に関連づけられる利用者端末200を含む。なお、説明の便宜上、各端末を単一のものとして記載しているが、各々、数は制限されず、複数のサーバ端末、利用者端末で構成されてもよい。
【0012】
サーバ端末100及び利用者端末200は、ネットワークNW1を介して各々接続される。ネットワークNWは、インターネット、イントラネット、無線LAN(Local Area Network)やWAN(Wide Area Network)等により構成される。
【0013】
サーバ端末100は、例えば、ワークステーションやパーソナルコンピュータのような汎用コンピュータとしてもよいし、或いはクラウド・コンピューティングによって論理的に実現されてもよい。
【0014】
利用者端末200は、例えば、パーソナルコンピュータ、タブレット、スマートフォン端末等の情報処理装置であるが、携帯電話、PDA等により構成しても良い。
【0015】
本実施形態では、システム1は、サーバ端末100及び利用者端末200を有し、各端末のユーザが各々の端末を利用して、サーバ端末100に対する操作を行う構成として説明するが、サーバ端末100がスタンドアローンで構成され、サーバ端末自身に、各ユーザが直接操作を行う機能を備えても良い。
【0016】
図2は、図1のサーバ端末100の機能ブロック構成図である。サーバ端末100は、通信部110と、記憶部120と、制御部130とを備える。
【0017】
通信部110は、ネットワークNW1を介して利用者端末200、と通信を行うための通信インターフェースであり、例えばTCP/IP(Transmission Control Protocol/Internet Protocol)等の通信規約により通信が行われる。
【0018】
記憶部120は、各種制御処理や制御部130内の各機能を実行するためのプログラム、入力データ等を記憶するものであり、RAM(Random Access Memory)、ROM(Read Only Memory)等から構成される。また、記憶部120は、ソフトウェアの参照用ユーザーインターフェース画面に関するデザインデータを格納する、デザインデータ格納部121、利用者端末200から送信される、利用者端末20上に表示される、ソフトウェアのユーザーインターフェース画面に関する画像データを格納する、画面データ格納部122、及びソフトウェアの試験結果に関するレポートデータを格納するレポートデータ格納部123を有する。なお、各種データを格納したデータベース(図示せず)が記憶部120またはサーバ端末100外に構築されていてもよい。
【0019】
制御部130は、記憶部120に記憶されているプログラムを実行することにより、サーバ端末100の全体の動作を制御するものであり、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等から構成される。制御部130の機能として、利用者端末200から送信される情報を受け付ける情報受付部131と、利用者端末200から送信された情報を基に、ソフトウェアの試験を実行する試験処理部132とを有する。この情報受付部131及び試験処理部132は、記憶部120に記憶されているプログラムにより起動されてコンピュータ(電子計算機)であるサーバ端末100により実行される。
【0020】
情報受付部131は、利用者端末200から通信部110を介して情報を受付ける。例えば、利用者端末200から、利用者端末200上で表示されるソフトウェアのユーザーインターフェース画面のスクリーンショット画像データ(動画像データを含む)を受信する。
【0021】
試験処理部132は、利用者端末200から受信した画像データを基に、記憶部120のデザインデータ格納部121に格納されるデザインデータ1000を参照しながら、送信された画像データと、デザインデータに含まれる画像データとを比較し、差分を検出する処理等、所定の処理を行う。
【0022】
また、制御部130は、図示しない、画面生成部を有することもでき、求めに応じて、試験用のソフトウェアのユーザーインターフェース画面やソフトウェア試験結果のレポート画面等、利用者端末200のユーザーインターフェースを介して表示される画面情報を生成する。例えば、記憶部120に格納された(図示しない)画像及びテキストデータを素材として、所定のレイアウト規則に基づいて、各種画像及びテキストをユーザーインターフェースの所定の領域に配置することで、ユーザーインターフェースを生成する。画像生成部に関連する処理は、GPU(Graphics Processing Unit)によって実行することもできる。
【0023】
図3は、図1の利用者端末200を示す機能ブロック構成図である。利用者端末200は、通信部210と、表示操作部220と、記憶部230と、カメラ240と、制御部250とを備える。
【0024】
通信部210は、ネットワークNWを介してサーバ端末100と通信を行うための通信インターフェースであり、例えばTCP/IP等の通信規約により通信が行われる。
【0025】
表示操作部220は、利用者が指示を入力し、制御部250からの入力データに応じてテキスト、画像等を表示するために用いられるユーザーインターフェースであり、利用者端末200がパーソナルコンピュータで構成されている場合はディスプレイとキーボードやマウスにより構成され、利用者端末200がスマートフォンまたはタブレット端末で構成されている場合はタッチパネル等から構成される。この表示操作部220は、記憶部230に記憶されている制御プログラムにより起動されてコンピュータ(電子計算機)である利用者端末200により実行される。
【0026】
記憶部230は、各種制御処理や制御部250内の各機能を実行するためのプログラム、入力データ等を記憶するものであり、RAMやROM等から構成される。また、記憶部230は、サーバ端末100との通信内容を一時的に記憶している。
【0027】
カメラ240は、利用者端末200に内蔵されるカメラである。
【0028】
制御部250は、記憶部230に記憶されているプログラムを実行することにより、利用者端末200の全体の動作を制御するものであり、CPUやGPU等から構成される。制御部250は、本実施形態においては、利用者端末200に表示される、ソフトウェアのユーザーインターフェース画面のスクリーンショットを撮像する。
【0029】
図4は、サーバ100に格納されるデザインデータの一例を示す図である。
【0030】
図4に示すデザインデータ1000は、参照用ソフトウェアのユーザーインターフェース画面に関するデザインに関するデータを格納する。図4において、説明の便宜上、一ソフトウェアに関するデザイン(デザインID「10001」で識別されるデザイン)の例を示すが、複数のソフトウェアに関するデザインの情報を格納することができる。デザインに関する各種データとして、例えば、構成要素データ(ソフトウェアの参照用ユーザーインターフェース画面を構成する複数の構成要素の各々であって、ユーザーインターフェース画面における所定の表示領域で定義される。)、画像データ(ソフトウェアの参照用ユーザーインターフェース画面の画像データ)等を含む。ここで、デザインデータとして、参照用ソフトウェアを始め、複数のソフトウェアのユーザーインターフェース画面の画像データを入力データとして、典型的なレイアウトテンプレート(タイル型、カード型、グリッド型、ヘッダー、フッター等)を学習させ、出力データとして複数パターンの構成要素(タイル型表示領域、カード型表示領域、ヘッダー表示領域、フッター表示領域等)を出力させる学習モデルを生成し、記録することもできる。
【0031】
図5は、サーバ100に格納される画面データの一例を示す図である。
【0032】
画面データ2000は、利用者端末200に表示される、ソフトウェアのユーザーインターフェース画面に関する画像データを格納する。図5において、説明の便宜上、一ユーザーインターフェース画面(画面ID「20001」で識別される画面)の例を示すが、複数のユーザーインターフェース画面に関連する情報を格納することができる。ユーザーインターフェース画面に関連する各種データとして、利用者端末200に表示される、ソフトウェアのユーザーインターフェース画面の画像データ(例えば、画面のスクリーンショット画像(動画像も含む))を含むことができる。
【0033】
図6は、サーバ100に格納されるレポートデータの一例を示す図である。
【0034】
レポートデータ3000は、ソフトウェアの試験結果に関するレポートを構成するデータを格納する。図6において、説明の便宜上、一試験結果に関するレポート(レポートID「30001」で識別されるレポート)の例を示すが、複数のレポートに関連する情報を格納することができる。レポートに関連する各種データとして、例えば、案件情報、課題情報、検出されたバグ等に関するコメント情報を含むことができる。
【0035】
<処理の流れ>
図7を参照しながら、本実施形態のシステム1が実行するソフトウェアの試験の処理の流れについて説明する。図7は、本発明の第一実施形態に係る、ソフトウェアの試験方法の一例を示すフローチャートである。
【0036】
まず、ステップS101の前段の処理として、本システム1を利用するために、利用者端末200を操作する、エンジニア等の利用者は、利用者端末200に表示される、試験用のソフトウェアのユーザーインターフェース画面のスクリーンショットを撮像することで取得し、ウェブブラウザまたはアプリケーション等を利用してサーバ端末100にアクセスし、ユーザーインターフェース画面のスクリーンショットを、サーバ端末100にアップロードすることで送信する。
【0037】
続いて、ステップS101の処理として、サーバ端末100の制御部130の情報受付部131は、通信部110を介して、利用者端末200から、ユーザーインターフェース画面の画像データを受信する。ここで、画像データとして、上述の通り、動画形式の画像データまたは静止画形式の画像データを受信することができる。図9は、利用者端末200において撮像され、利用者端末200から受信した画像データに含まれる、ユーザーインターフェース画面の一例である。また、利用者端末200から受信した画像データが、動画像データであって、画面をスクロールした様子を撮像した画像である場合は、画像認識技術等を用いて、例えば、図10に示すように、ページ単位で画面を抽出することもできる。情報受付部131は、受信したユーザーインターフェース画面の画像データを、記憶部120の画面データ格納部122に格納する。
【0038】
次に、ステップS102の処理として、サーバ端末100の制御部130の試験処理部132は、記憶部120のデザインデータ格納部121に格納された、デザインデータ2000を参照し、受信した画像データに関するユーザーインターフェース画面に対応する、参照用ユーザーインターフェース画面に関するデザインデータを特定する。ここで、試験処理部132は、画像認識技術を用いて、受信した画像データに関するユーザーインターフェース画面に基づいて、対応するデザインデータを検索し、特定することもできる。
【0039】
次に、ステップS103の処理として、試験処理部132は、デザインデータとして特定した、ソフトウェアの参照用ユーザーインターフェース画面と、利用者端末200から受信した、ソフトウェアのユーザーインターフェース画面とを比較する。
【0040】
図8は、ユーザーインターフェース画面の比較処理の詳細を示すフローチャートである。
【0041】
まず、ステップS201の処理として、試験処理部132は、デザインデータに含まれる、Sketch(登録商標)等の構成データより、構成要素を抽出し、ステップS202の処理として、受信した画像データに含まれるユーザーインターフェース画面から構成要素を抽出する。ここで、構成要素は、ユーザーインターフェース画面を分割して構成される要素であって、グラフィックデータ、色彩データ及びテキストデータの集合からなる要素であり、例えば、複数のアイコン、テキスト等からなり、例えば、ナビゲーション、コンテンツ、サイドバー、ヘッダー、フッター等の構成要素が挙げられる。本実施形態における構成要素の一例として、図11に示すように、図11(a)の、利用者端末200に表示されるユーザーインターフェース画面において、「隠れ家居酒屋特集」等コンテンツの表示領域に係る構成要素、「試合速報」、「出張予約」等のメニューボタンの表示領域に係る構成要素が挙げられる。また、構成要素の抽出に際して、デザインデータ1000として、予め格納された構成要素データを使用することもできるし、デザインデータに含まれる、Sketch(登録商標)等の構成データより、画像認識技術または機械学習により構成要素を抽出することもできる。また、同様に、受信した画像データに含まれるユーザーインターフェース画面についても、画像認識技術または機械学習により構成要素を抽出することもできる。なお、上記ステップS201の処理は省略することもでき、直ちにステップS202の処理に移行することもできる。
【0042】
次に、ステップS203の処理として、試験処理部132は、抽出された、デザインデータ及び受信された画像データ各々のユーザーインターフェース画面の構成要素間で比較を実行し、差分を検出する処理を行う。比較処理として、例えば、S204の処理として、構成要素を比較し、構成要素そのものの過不足を検出し、S205の処理として、構成要素の色を比較し、色の差分を検出し、S206の処理として、構成要素の位置を比較し、レイアウト差分を検出し、S207の処理として、S207の処理として、構成要素自体のデザイン(行間、アイコンの角丸等)を比較し、S208の処理として、文字要素のデザイン(太さ、大きさ、フォント等)を比較し、差分を検出することができる。なお、構成要素間の比較から、差分を検出するに際し、画像認識技術または機械学習を用いることもできる。
【0043】
次に、図7のステップS104に戻り、試験処理部132は、構成要素の比較の結果について、差分に関するコメント、該当箇所を含む画像データ等を、記憶部120のレポートデータ格納部123にレポートデータ3000として格納することができる。また、試験処理部132は、レポートデータ格納部123に格納された、案件情報、課題情報、コメント情報、画像データ等を基に、利用者端末200に表示させるためのレポートを所定のフォーマット(スプレッドシート形式等)で生成する。
【0044】
以上のように、本実施形態によれば、画面を構成する構成要素毎にユーザーインターフェース画面を比較することで、画面上のバグ検出の効率化を実現することができる。
【0045】
以上、発明に係る実施形態について説明したが、これらはその他の様々な形態で実施することが可能であり、種々の省略、置換および変更を行って実施することが出来る。これらの実施形態および変形例ならびに省略、置換および変更を行ったものは、特許請求の範囲の技術的範囲とその均等の範囲に含まれる。
【符号の説明】
【0046】
1 システム 100 サーバ端末、110 通信部、120 記憶部、130 制御部、200 利用者端末、300 利用者端末、400 調査会社端末、NW1 ネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11