【ソフトウェアテスト】CFD法
CFD法はCause Flow Diagram(原因流れ図)を略したもので、原因の集合と結果をそれぞれの関係のつながりにフォーカスして図式化し、そこからデシジョンテーブルを想定してテストケースを作成する技法です。システム設計において、正常な動作の仕様を基本として異常系の仕様もエラー動作実装のため明確に定義されているべきですが、テスト実施の際には、仕様想定上の正常系・異常系動作確認はもとより、考え得る限りの準正常系テストケース網羅も必要です。そうしたケースの考慮が足りていないと、リリース後にユーザーが想定外の操作を実行して重篤な不具合につながったり、あるいは仕様の穴を付いた不正処理などを実行されたりして、プロジェクトやサービスに損失が発生したりします。原因・結果・各関係を図示して明確に関係を洗い出すことで、実装段階では考慮が漏れているような挙動についても抜けや漏れをカバーするようにテストすることができます。また、エラーに関するもののみではなく、同値分割が可能な原因が複数関連して複数の結果が想定されるというシステムで、その関係性を図にして流れを見ることで、テストケース作成がグラフィカルに把握しやすくなります。インターネットでクレジットカードを利用して決済処理を実行する際に、完了までには以下の様な結果パターンが想定されます。・カード情報入力エラー(入力したカード利用情報に問題がある)・決済処理不能エラー(登録しているカード情報の照会時にエラーが発生)・通信不良による接続タイムアウトエラー(決済実行から完了までの通信時間が規定の時間内に処理されないことによるエラー)・決済完了上記4パターンの結果を返すまでの原因は、細部まで書き出すと煩雑になります。・複数の入力フォームに入力した情報のどこがエラーになったか・カード情報照会時にどのような理由でエラーになったか・どのページからどのページに遷移するときにエラーになったか・何秒以上の通信待機時間を過ぎたら通信エラーで処理するか等これらを一つの枠に収めてそれぞれを線でつなぐことで関係性を整理できるのが、このCFD法の利点だと思います。
テスト(運用・保守・サポート)
【ソフトウェアテスト】直交表/ペアワイズ法 ①
本記事では直交表について記載します。さまざまな資料を調べて情報をまとめているうちに、直交表、ペアワイズ、HAYST法はそれぞれ直交表を元に関連しているようだと思ったので、直交表から順を追って記載していこうと思います。しかし、それぞれが個別の手法として確立しており、その手法を使用するシーンも違うことから、記事としては独立させたほうが適切かと思ったので、まずは直交表についてまとめたのち、続いて別の記事でペアワイズ法をまとめていきます。
テスト(運用・保守・サポート)
【Java】JavaBeansについて学ぼう
Javaを勉強したことがある人はJavaBeansについてご存じでしょうか。WEBアプリケーションでよく使われる印象ですが、なにが便利なのか、そもそもJavaBeansとはなにか、メリット・デメリットはなにか、記事作成を通して調査してまとめてみました。
【入門編】AWSとは何か?人気の理由まで解説
ITの業務に従事されている方や、インターネットやSNS等でIT関連の情報を収集されている方なら一度は聞いたことのある言葉の一つが、「AWS」ではないでしょうか? AWSとはアマゾンが提供するクラウドプラットフォームであり、正式名称はAmazon Web Service(アマゾンウェブサービス)です。 本記事では、AWSを使うと何ができるのか?なぜそんなに人気なのか?など、初心者の方が疑問に持つであろう部分を網羅的にまとめた記事となっております。 この記事を読むことで分かること ・AWSとは何かが理解できる ・AWSが人気な理由が分かる
製造・コーディング(PG/バックエンド)
【初心者用】Pythonが何なのかメリット・デメリットの面からまとめてみた
エンジニアとしてのキャリアが短く、データベース・SQLについて疎い自分がデータベースとSQLについて基本から学びながら、データベースとは何か、SQLとは何かを分かりやすいように説明していきます。
製造・コーディング(インフラ)
【テスト入門】エンジニア初心者が知っておくべきテストの基礎知識
現代のIT業界において、エンジニアは欠かせない存在となりました。その中でも、エンジニアとして働き始めたばかりの方々は、自分に足りていないスキルや知識を知り、成長していくことが重要です。今回は、そんなエンジニア初心者の方々に向けて、テストエンジニアについて詳しく解説します。
Junit5でのテストコードの覚書
今日一日はまったので、覚書。Junit5Controller.java@Controllerpublic class Junit5Controller { @RequestMapping("/Junit5") public @ResponseBody String greeting() { return "Hello, World"; }}@SpringBootTest@AutoConfigureMockMvcclass Junit5ControllerTest { @Autowired private MockMvc mockMvc; @Test public void shouldReturnDefaultMessage() throws Exception { this.mockMvc.perform(get("/Junit5")).andDo(print()) .andExpect(content().string(containsString("Hello, World"))); }}@WebMvcTestではエラーが出る。
テスト(PG/バックエンド)
【IT転職】C言語って何?どんなことができるの?将来性や年収も含めて解説します!
プログラミング言語と言っても様々な種類が存在しますが、その中でも歴史が古く、知名度の高いプログラミング言語といえば、ずばりC言語でしょう。今回はC言語に興味を持った初学者、あるいはこれからC言語エンジニアを目指す方向けに、C言語の特徴や将来性、C言語エンジニアの年収などについて解説していきます。ぜひ最後までご覧ください!
【IT転職】JavaScriptって何?どんなことができるの?将来性や年収も含めて解説します!
インターネットが発達し、今ではたくさんのWebコンテンツが存在します。皆さんはそれらWebコンテンツを支えるのに欠かせないプログラミング言語の一つである「JavaScript」をご存知でしょうか。今回はJavaScriptに興味を持った初学者、あるいはこれからJavaScriptエンジニアを目指す方向けに、JavaScriptの特徴や将来性、JavaScriptエンジニアの年収などについて解説していきます。ぜひ最後までご覧ください!
関連タグ
カテゴリ別人気記事
もっと見るテレワーク関連人気記事
2023年10月02日
製造・コーディング(PG/フロントエンド)2023年07月18日
アーキテクト・技術選定(PG/バックエンド)2023年10月26日
テスト(運用・保守・サポート)2023年11月17日
2023年01月09日
詳細設計(内部設計)(インフラ)
週間人気記事
もっと見る【これからJP1に触れる人向け】JP1とは
開発プロジェクトに携わる際にJP1というツールに触れたことはあるだろうか。JP1は開発工程、特にテスト作業においては非常に利便性の高いツールである。この記事ではまだJP1に触れたことがない人向けにJP1の概要やJP1を合う買う際に知っておくべき用語を取り上げる。
テスト(運用・保守・サポート)
インデックスとは?メリットデメリットやインデックスの種類も交えてご紹介
インデックスとは、データベースを扱う際には欠かすことのできない概念となります。インデックスの取り扱いによって、データのアクセス速度が大きく変わります。特に大規模なデータを扱う場合には、取り扱いに気をつけなくてはなりません。インデックスを設定した結果、処理速度が遅くなってしまうことやそもそもインデックスを使用するような実行計画が選択されないこともあるのです。インデックスは、DBMSの種類(例えば、OracleやMySQL、Postgreなど)によっても異なります。インデックスの仕様を知らないと、開発者にとって意図しない処理をしてしまう可能性もあります。そこで今回はインデックスについてメリットデメリットや具体的にどのような種類があるのかを説明していきます。
【初心者用】ASP.NETのサーバーコントロールの種類をまとめてみた~その2~
ASP.NET Webフォームで使われるサーバーコントロールについてまとめてみたので、メモがてら記事にします。 それぞれのサーバーコントロールについて、固有のプロパティ等を具体例を交えてざっくり説明していきます。 (ID等の共通するプロパティは別記事で説明しているため、今回は取り上げません) 今回説明するサーバーコントロールは、以下になります。 ・HyperLink コントロール ・CheckBox コントロール ・RadioButton コントロール サンプルコードの開発環境は、 ・Microsoft Visual Studio Community 2022 実行ブラウザは ・GoogleChrome です。
製造・コーディング(PG/バックエンド)
【Java】Lombokという便利なライブラリについて学ぼう
皆さんはJavaのライブラリであるLombokについてご存じでしょうか。私は開発業務で使用した経験がありますが、恥ずかしながらどういったライブラリなのか、あまり知らずに使用していました。Lombokとはなにか、メリット・デメリットはなにかをこの記事作成を通して調査し、まとめました。
GitHubのReadmeをMarkdown記法で書く
Markdown記法は、プレーンテキストに特定の書式を付けることで、簡単にWebページやドキュメントを作成するための記法です。Markdown記法は、文書の見た目を整えるためのHTMLタグを記述する必要がなく、テキストファイルとしても読み書きが容易であるため、多くの人々によって広く使用されています。
プロジェクト推進・管理(PG/バックエンド)
CIとは何か?代表的なCIツールの特徴とメリット・デメリットを解説
CIとは、開発者がコードを頻繁に統合し、自動的にテストやビルドを行うことで、品質や効率を向上させる手法です。 CIを実現するためには、CIツールと呼ばれる専用のソフトウェアが必要です。 CIツールは、コードの変更を検知し、自動的にテストやビルドを実行し、結果を報告する機能を提供します。しかし、CIツールには様々な種類があり、それぞれに特徴やメリット・デメリットがあります。 では、どのようにしてCIツールを選ぶべきでしょうか? この記事では、代表的なCIツールの概要と選び方について解説します。
