ツイニングプロジェクトのブログ

プロジェクト コンテンツ
この作品は、コースに属し 2020年コンピュータソフトウェア工学研究所(ロジャー・レン建)
どこの仕事でこの要件 ツイニングプロジェクト作業
クラスを教えます 006
プロジェクトアドレス

1. PSPテーブル

PSP2.1 パーソナルソフトウェアプロセス段階 推定時間がかかる(分) 実際の時間がかかる(分)
プランニング 計画
・見積り •このタスクが必要と推定どのくらいの時間
開発 開発
・分析 (新しい技術を学ぶ含む)・ニーズ分析
・デザインスペック 設計ドキュメントの生成
・デザインレビュー ・デザインレビュー(と彼の同僚は、設計文書を見直し)
・コーディング標準 ・コードの仕様(現在の開発のための適切な規範の開発)
・ 設計 ・具体的な設計
・コーディング ・具体的なコーディング
・コードレビュー ・コードレビュー
・テスト ・テスト(セルフテスト、コードを変更し、変更を提出)
報告 レポート
・ 試験報告書 ・テストレポート
・サイズ測定 ・コンピューティングのワークロード
・死後&プロセス改善計画 ・後知恵、およびプロセス改善計画を提案します
トータル

4.設計と計算モジュールインタフェースの実現

計算モジュールインタフェース部6のパフォーマンスの改善

契約&コード契約7.デザイン

8.ユニットテストカバレッジ

どこVS2017エンタープライズ:(ツールを使用してコードカバレッジ)は、コードカバレッジを生成し、

画像-20200321234124390

プロジェクトのための細胞ベースのテストカバレッジ\(93.07 \%\) Circleクラスのカバレッジのため、\(100 \%\)線のカバレッジに基づいて、\(98.5 \%\)

私たちは、テストおよび機能に異常のためのテストを設定しました。

機能テストのために、我々は、通常の条件下で、いくつかの機能円、線、線分と光線の機能をテストするだけでなく、いくつかの特別な状況下でテストケースを構築し、等

// 射线 圆 内部相交
PlaneContainer pc;
pc.insert(new Circle(0, 0, 2));
pc.insert(new Line(1, 0, 2, 2, RL));
int count = pc.countIntersectionPoints();
Assert::AreEqual(count, 1);
// 射线 射线 一个交点
PlaneContainer pc;
pc.insert(new Line(0, 0, 1, 1, RL));
pc.insert(new Line(0, 0, -1, -1, RL));
int count = pc.countIntersectionPoints();
Assert::AreEqual(count, 1);
// 精度测试
PlaneContainer pc;
pc.insert(new Line(0, -100000, 1, 100000, SL));
pc.insert(new Line(0, 0, 0, 1, SL));
pc.insert(new Line(0, -99999, 1, -99999, SL));
int count = pc.countIntersectionPoints();
Assert::AreEqual(count, 3);

そして、異常なテストケースのために、次のように:

异常

おすすめ

転載: www.cnblogs.com/zkksx/p/12560849.html