#author("2023-02-09T16:50:04+09:00","default:irrp","irrp")
→脆弱性関連

→[[CI/CD]]

#contents


*サブトピック [#bc370706]
-テスト一般
-インシデント管理ツール
-テストツール
-NUnitまとめ




*カバレッジ [#e8d18d14]
-[["テストカバレッジ強制ギプス" 導入 - Qiita>https://qiita.com/nrnrk/items/41d6d900c9688b9b4de2]] 2021.12

-[[テストカバレッジ100%を追求しても品質は高くならない理由と推奨されるカバレッジの目標値について>https://qiita.com/bremen/items/d02eb38e790b93f44728]] 2018.3
--『カバレッジが高ければ、品質が高い』は誤った論理であり、正しくは 『「カバレッジが高い」かつ「テストケースの品質が高い」ならば、「コードの品質が高い」』 である。
--いくらカバレッジが高くても、 テストケースの品質が悪ければ、バグが潜在している可能性を低くすることはできない。
--カバレッジを100%に近づければ近づけるほど、バグ検出の費用対効果は低下する。
--クリティカルなコードではない限り、カバレッジ(C0 / C1)の目標値は 85%程度 に設定すべきである。



*テスト手法 [#w93a9680]
-[[【入門】フロントエンドのテスト手法まとめ - Qiita>https://qiita.com/SMAC/items/7cf6b24bed318dab5715]] 2022.7
--Static Test
--Unit Test
--Integration Test
--End to End Test

-[[現場で使うためのオールペア法、直交法の基本>http://www.atmarkit.co.jp/ait/articles/1506/11/news013.html]] 2015.6.11

-[[結合テストと総合テスト>http://www.thinkit.co.jp/free/project/4/7/1.html]]
--ソフトウェアの開発におけるテスト作業は、「テスト計画」「テスト設計」「テスト実施」「テスト管理」という4つのプロセスで構成されます
-[[ファズ・テスト>http://www-06.ibm.com/jp/developerworks/java/library/j-fuzztest.shtml]]
--入力データの一部をランダムに書き換え、どのようなエラーが起きるかチェックする技法


** E2E(End to End)テスト [#j90a9fd8]
-[[E2Eテスト(インテグレーションテスト)の利点と不利点 - Qiita>https://qiita.com/NAKKA-K/items/58d6b8476a3717179bda]] 2022.5
-[[E2EテストにAutifyを使っている理由、そしてE2Eテストで大事にしていること - Kaizen Platform 開発者ブログ>https://developer.kaizenplatform.com/entry/ban/2021-04-25/]] 2022.4


**カオスエンジニアリング [#s38d0a01]
-[[WindowsにGremlinをインストールして攻撃を実行してみる | DevelopersIO>https://dev.classmethod.jp/articles/how-to-install-and-run-gremlin-on-windows/]] 2021.11

-[[Gremlinのシナリオを使ってTLS/SSL証明書の有効期限をテストしてみる。 | DevelopersIO>https://dev.classmethod.jp/articles/test-tls-certificate-expiration-by-gremlin/]] 2021.11

-[[Chaos Engineering on Frontend ~フロントエンドにカオス性を注入して信頼性を向上させよう~ - Qiita>https://qiita.com/G-awa/items/9dc13c2db99cc85705bf]] 2021.11

-[[カオスエンジニアリングと聞いてカオスになった人必見 - Qiita>https://qiita.com/naokiiiii/items/de20997a70922c01f754]] 2018
--カオスエンジニアリングとは、全世界に動画配信サービスを提供するNetflixが導入したことで注目されるようになった手法で、「本番稼働中のサービスにあえて擬似的な障害を起こすことで、実際の障害にもちゃんと耐えられるようにしよう」という取り組みです。



*テスト計画書に書く項目の例 [#xf80eb7d]
-テスト計画書とは、テスト工程の要件定義を行い、明確にすることで品質を確保するための文書である。顧客向けと内部向けに分けて書くこともある。顧客向けは品質確保をどのように行うかに重点が置かれ、内部向けは手順や方法、統一ルールの明示などに重点が置かれる傾向がある


**項目 [#ja97b2e4]
-記載範囲
--テスト対象の範囲を示す。構成図で色をつけるなど

-工程の定義
--「対象プログラムが設計書仕様通りの動作をすることを確認する」など

-処理概要
-テスト観点
-テストの方法・進め方
--故障管理、仕様変更管理のやり方
-品質指標値
--確認目標件数
--障害摘出目標件数 (キロステップあたり何件、とか)
-成果物
--テスト仕様書
--テスト完了したプログラム
--障害管理台帳
--エビデンス
--UnitTest結果
--ログファイル、トレースダンプなど
--カバレッジレポート
--レビュー記録表
--テスト計画実績対比表
--品質計画実績報告書
-テスト完了基準
--テスト項目全件消化
--障害がすべて対策済みであること
--レビュー指摘がすべて対応済であること
-体制
-スケジュール
-進捗管理方法
-テスト品質の管理方法


*品質管理一般 [#n0b8e3d8]
-[[ポストモーテムはじめました - Speaker Deck>https://speakerdeck.com/nwiizo/posutomotemuhazimemasita]] 2023.2

-[[試験工程管理の概論 – サイゼントの技術ブログ>https://cyzennt.co.jp/blog/2022/12/19/%e8%a9%a6%e9%a8%93%e5%b7%a5%e7%a8%8b%e7%ae%a1%e7%90%86%e3%81%ae%e6%a6%82%e8%ab%96/]] 2022.12

-[[質とスピード(2022春版、質疑応答用資料付き) / Quality and Speed 2022 Spring Edition - Speaker Deck>https://speakerdeck.com/twada/quality-and-speed-2022-spring-edition]] 2022.9
--品質と開発スピードはトレードオフではない、という話

-[[変更管理、その正体と対策:意外と知らない構成管理の正体(3) - ITmedia エンタープライズ>https://www.itmedia.co.jp/im/articles/0411/19/news108.html]] 2004

-[[エンジニアなら知っておきたい障害報告&再発防止策の考え方>https://qiita.com/hirokidaichi/items/f9f4549c88aaf8b38bda]] 2018
--障害報告は始末書や反省文ではない
--「起きた現象」の内容ではなくて、「原因やバグが発生しているモジュール名」などを書いてしまいがち
--3段階くらいに再発防止策を検討
---直接原因 : その不具合が発生した直接的原因
---間接原因 : その不具合に至るまでの間接的な原因
---本当の理由: なぜ、このようなパターンの障害が発生したか


-[[ソフトウェア品質最前線>http://techon.nikkeibp.co.jp/embedded/2006mook/]]

-[[品質表展開(QFD)とは>http://www.i-juse.co.jp/statistics/product/func/process/qfd.html]]

-[[<論文>情報システム開発における品質管理の一考察 : テスト工程におけるソフト品質向上手法の改善>http://ci.nii.ac.jp/naid/110000040949]]
-[[表面の現象で対策を打ってはいけない>http://itpro.nikkeibp.co.jp/article/COLUMN/20080702/310037/]] 2008.7.25
-[[ソフトウェア品質最前線:http://techon.nikkeibp.co.jp/embedded/2006mook/]]


**品質評価報告書の項目例 [#qa480090]
-品質評価の対象範囲
-テスト観点
--どういう観点でテスト項目を立てたか。
--また、なぜその観点でテストが十分と言えるのか、という根拠づけを説明する
-品質データ
--テスト件数目標/実績
--テスト密度(キロステップ辺り件数など)とその達成度
--障害摘出目標/実績
--障害密度実績/達成度(目標密度/実績密度)
-バグの分析
--バグの内容
--障害の傾向(障害の種類、水平展開の数、摘出すべき工程etc.)
--実施したテストの弱点分析。プログラムのどういう部分でバグが多く出ているか、どういう種類のバグが多く出ているか。
-品質強化策
--実施経緯。どういう弱点があったのでそれを補うためにこう言う方策を取った、など
--品質強化策の詳細内容
-残作業、次工程への引継事項
--テスト環境の制約上確認できなかったテスト項目、本番環境との相違点など


*コードレビュー [#l9ef11db]
→コーディング規約については言語・開発環境へ

-[[「読みやすいコードのガイドライン―持続可能なソフトウェア開発のために」を読んだ! - mochikoAsTechのdig日記>https://mochikoastech.hatenablog.com/entry/2022/11/27/212739]] 2022.11

-[[コードレビューについて>http://blog.livedoor.jp/lalha/archives/50495777.html]] 2014

-[[コードレビュー 開発者ガイド | eng-practices>https://shuuji3.xyz/eng-practices/review/]] 2019
--Google's Engineering Practices Documentation Japanese Translation
--[[コードレビューの方法 | eng-practices>https://shuuji3.xyz/eng-practices/review/reviewer/]] レビュアー向けドキュメント
--[[CL の作者がコードレビューを乗り切るためのガイド | eng-practices>https://shuuji3.xyz/eng-practices/review/developer/]] レビュイー向けドキュメント

-[[コードレビューしませんか?メリット・デメリットを解説 - Qiita>https://qiita.com/ushi_osushi/items/91498bd4cad88d7cd1c0]] 2022.3

-[[コードレビューで嫌われる人の特徴7選 - Qiita>https://qiita.com/emjo1804/items/48f6e78237a04684ab38]] 2022.3

-[[レビューで大量の指摘をして大きな手戻りを発生させた原因はレビューアの私にあった>https://qiita.com/kojimadev/items/e12784e6764f1b60e73c]] 2021.4

-[[コードレビューについて>http://d.hatena.ne.jp/camlspotter/20120814/1344919762]] 2012.8.14

-[[ソフトウェアレビューが成功する進行役の6条件>http://www.atmarkit.co.jp/im/carc/serial/review/04/01.html]] 2010.4.14
--レビューアがエラー発見に集中できているか
--レビューアがエラー発見の手掛かりを得られているか
--遠慮して発言していないレビューアがいないか
--適切なエラー指摘がなされているか
--進行のペース(時間配分)は適切か
--作成者は指摘を受け入れているか

* 静的解析/コードメトリック/コードメトリクス [#g87b8132]
-[[McCabe を使って Python コードの複雑度をチェックしよう! - サーバーワークスエンジニアブログ>https://blog.serverworks.co.jp/python-mccabe]] 2022.9

-[[コードメトリクスを計測・可視化する - ペパボテックブログ>https://tech.pepabo.com/2022/04/25/code-metrics-dashboard/]] 2022.4

-[[コード メトリック - サイクロマティック複雑度 - Visual Studio (Windows) | Microsoft Docs>https://docs.microsoft.com/ja-jp/visualstudio/code-quality/code-metrics-cyclomatic-complexity?view=vs-2019]] 2019
--循環複雑度

-[[【AWS Black Belt Online Seminar】Amazon CodeGuru - YouTube>https://www.youtube.com/watch?v=OF-NfrcgR-o]] 2021

-[[Amazon CodeGuruを用いて悪しきコードを撲滅したい - Qiita>https://qiita.com/yym_06/items/b32df05136b9c8bd9be8]] 2021.10

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS