検索キーワード: 「Curlコマンド」


【ソフトウェアテスト】シナリオテスト

シナリオテストはユーザー視点で利用場面を想定し、操作フロー、入力値、発生する正常系挙動異常系挙動など、ユーザーが利用する一連の流れを想定したうえで発生しうるストーリーを元にテストを実施する手法です。ブラックボックステスト技法はさまざまあり、あくまで無数に存在しうるテストケースから粒度や対象を整理抽出してより広く浅いテストケースを目指すようなものがほとんどです。しかし、複数機能をもつシステムを実際に利用する際には、複数回の遷移を繰り返したりシステムが何重にも関連したりするので、1つの機能を対象としたテストや、2つ3つの機能間の関連をテストしただけでは、再現し得ないような組み合わせでの不具合が発生する懸念は常にあります。フリーチェックやモンキーチェックなどと呼ばれるものも、結局は「ユーザーなら再現しうる」可能性を想定して実行するものですが、それを数値や手順を明確にしてより詳細にテストし、かつ明示することでその内容をテストの履歴としたり、テストの要件自体もレビューなどで評価対象とできることがこのシナリオテスト手法の利点と考えられます。また、ユーザーのストーリーを元にテストするという点から、よりユーザーサイドでの視点から評価できるため、単純に欠陥を検出するのみならず、UI/UXの評価検討なども実施することができます。

テスト(運用・保守・サポート)

テスト自動化

テスト自動化とは、人の手によって行われるソフトウェアテストの全体あるいは一部を自動化することを意味します。そもそもソフトウェアテストは、不具合を見つけることが目的です。そのため、テストを繰り返し行うことも増えています。テスト自動化によって、テストにかかる人的負担を減らし、将来的なコストの削減が期待できます。テストといっても、その中にはさまざまなプロセスが含まれます。ソフトウェアテスト技術者資格認定組織である「ISTQB(国際ソフトウェアテスト資格認定委員会)/JSTQB(日本ソフトウェアテスト技術者資格認定組織)」の定義によると、テストプロセスは以下の5つの要素で構成されています。テストプロセス ・テスト計画作業とコントロール ・テストの分析と設計 ・テストの実装と実行 ・終了基準の評価とレポート ・終了作業

テスト(運用・保守・サポート)

【ソフトウェアテスト】QC7つ道具と新QC7つ道具 ①

生産の分野における管理手法に関して、各種データの分析に使用する代表的な7種類の手法が、QC7つ道具と呼ばれています。もともとは工業系生産などの製造現場における品質に関して、顧客信頼度を高めたり現場の問題解決に取り組むための視点として、品質管理の思考が波及しました。そのことから、管理の手法を明示化することで、手法を用いて誰でも品質管理に取り組むことができるようになることを目的としてさまざまな手法が作成されました。それらの中でも特に代表的なものがQC7つ道具と呼ばれるようになりました。ソサエティー5.0が提唱されている現代において、市場や製造現場におけるソフトウェア関連開発業務の割合は増えています。ITの基本資格でもある基本情報技術者試験のストラテジ系領域の内容にもQC7つ道具に関する問題が含まれており、ソフトウェア開発現場におけるQC(Quality Control)活動においても、QC7つ道具の利用される場面は増えています。QC7つ道具は主に、数値などの定量的分析が可能なデータを取り扱う分析の際に用いられる手法です。定性的な事象の分析に用いるような手法は新QC7つ道具として別でまとめられています。※以降に記載する図の中でも定性的事象分析に使用できる図はあるため、QC7つ道具が必ずしも定量的分析にしか使用しないものというわけではありません。

テスト(運用・保守・サポート)

【ソフトウェアテスト】ソフトウェア開発とテスト活動について ①

ソフトウェアはほとんどの場合、複数の機能を組み合わせてシステムを構築し、さまざまなシステムをまとめたものを運用する想定で開発プロジェクトが進行します。Webシステム開発、アプリケーション開発、組み込みシステム開発など、開発プロジェクトにもそれぞれ種類はありますが、アプリケーションに付随するWebサービスを展開する場合にWebシステムを開発したり、組み込みシステムと連携するアプリケーションを展開する場合にアプリケーション開発をするなど、複数のサービスやプラットフォームが関連しているのがソフトウェアの現状であり、開発プロジェクトもそれに伴って複雑で多様な関係性の中で進行していきます。このため、何か一つを開発して終わりとなることはほとんどなく、開発プロジェクトの開始・終了・進行中に至るまで、そのほか複数の開発プロジェクトの進行も関連してきます。とはいえ、多くのプロジェクトが相互に関連しながら進行しているとしても、プロジェクト進行の工程という点でいうならば、サービスやシステムの企画と検討に始まり、リリース後の継続的な運用保守から運用の終了に至るまでを一つのサイクルとして、開発プロジェクトは段階を経て進行していくといえます。

テスト(運用・保守・サポート)

【ソフトウェアテスト】ソフトウェア開発とテスト活動について②

「【ソフトウェアテスト】テストレベルについて ①」記事に記載のとおり、開発ライフサイクルモデルには形式や期間によってさまざまなモデルがあり、テストを実施するタイミングもモデルによってさまざまです。先に挙げた開発工程の例である要件定義→設計→開発→テスト→リリース/保守を一連の流れとする開発ライフサイクルも、このフローを開発期間の流れとして実施するのはあくまでウォーターフォール型モデルのようなシーケンシャルな開発ライフサイクルであり、イテレーティブ開発モデルやインクリメンタル開発モデルでは、各工程とテストが同時に進行したり、無駄をなくすことを目的としてあえて一部工程を省くこともあります。V字モデルは各工程とテストが同時進行する例です。要件定義の段階で要件定義に対するテストを実施、システム設計の時点で設計された内容に対してテストを実施といったかたちで、開発完了後にようやくテストではなく、常に工程の早期段階でテストを実施します。開発完了後のテストで不具合が検出されると工程の手戻りが発生してしまい、工数に無駄が生じますが、早期にテストを実施することにより、上流工程の段階で不具合や懸念を可能な限り取り去って開発作業の手戻りを少なくし、無駄な工数の増加を防いだり、最終的な品質の向上を目指すことができます。このようにV字モデルの左側で行う開発活動に対して早期にテストを実施して効率的な開発活動を目指す手法をシフトレフトと呼びます。イテレーティブ開発モデルやインクリメンタル開発モデルとなると、さらに各工程とテストが早期段階で実施されていきます。全体的な流れをより細かく迅速に行い、それを細かく繰り返していくサイクルが、現在のソフトウェア開発形式の主流になってきています。

テスト(運用・保守・サポート)

【初心者向け】境界値分析について

本記事ではテスト技法の一つの「境界値分析」について解説していきます。

初心者

【初心者向け】デシジョンテーブルについて

本記事ではテスト技法の一つの「デシジョンテーブル」について解説していきます。

初心者

仕事の流れを可視化する業務フローの作り方

システム開発の現場に参画して一番最初に学ぶ内容が、今回紹介する業務フローです。 前回紹介したマニュアルと近しいドキュメントにはなってしまいますが、マニュアルと業務フローは全く別の観点から作り上げるドキュメントです。 マニュアルは、システムの操作方法などを記したドキュメントなのに対して、業務フローは【仕事の内容や手順を図で表したもの】です。 業務を視覚化することで、見落としを行うリスクが軽減し、文章で手順を読むよりもわかりやすく、全体像を掴みやすくするというメリットがあります。 各現場によっては非常に読みづらい業務フローが整備されていますが、適切に書かれたフローであれば業務の流れを直観的に理解しやすく、業務マニュアルや新人研修としても活用できるため、非常に効果的です。 担当者が業務を改善したり、他部署の業務について相互理解を深めたりするツールとしても有効です。 小規模・中規模のシステムにも活用できますが、大規模なシステムにおいては、全体の機能を業務フローで表すことができるので、保守性の向上にもつなげることができます。 障害が発生して調査をおこなう場合などでも、ソースコードのみを調べると時間がかかりますが、業務フローがあれば、機能ごとのきりわけができるので問題を早く特定しやすくなります。 もちろん、システムの機能拡張や業務内容の変更の際も、業務フローがあれば検討資料としても活用されるシーンが多いです。 業務フロー作成の目的をまとめると、 ・業務の視覚化、標準化 ・業務の問題の発見 ・担当者および他部署間の業務の把握、相互理解 ・業務の保守性、拡張性の向上

製造・コーディング(PG/バックエンド)

Node.jsのフレームワークとロードマップ

Node.jsは、JavaScriptのランタイム環境であり、Webアプリケーションのサーバーサイド開発に広く使用されています。それだけでなく、多くのフレームワークやモジュールが利用可能です。個人的に今後かなり需要が増えていく言語だと感じています。本記事では、Node.jsに関するロードマップを提供し、主要なフレームワークとモジュールについて説明します。

製造・コーディング(PG/バックエンド)

【HTML】さまざまなタグ | Part 2

今回は、HTMLのさまざまなタグについてまとめました。HTMLは、Web開発をするにあたって欠かせない知識となっています。ぜひ最後までお読みください!

製造・コーディング(PG/フロントエンド)

【選び方ガイド】おすすめのスマホアプリ開発言語とその将来性

スマートフォンアプリの開発に取り組む際、適切なプログラミング言語を選ぶことが重要です。しかし、初めてのプロジェクトや多くの選択肢がある中で、どの言語を選ぶべきか悩むこともあるでしょう。本記事では、スマホアプリ開発における言語選びのポイントを解説します。

学習・スキル

【初心者用】Javaの配列とコレクションクラスについて

Javaには、複数のデータをまとめる方法がいくつか存在します。 それは、「配列」と、「コレクションクラス」というものです。 今回は、 ・配列について ・コレクションクラスについて(具体例としてArrayListクラス) ・比較した際の特徴 について説明していきたいと思います。

製造・コーディング(PG/バックエンド)

関連タグ

カテゴリ別人気記事

もっと見る
テレワーク関連人気記事

週間人気記事

もっと見る