Files
superport/test_reports/master_test_report_2025-08-05T15-28-37.918542.html
JiWoong Sul 198aac6525
Some checks failed
Flutter Test & Quality Check / Test on macos-latest (push) Has been cancelled
Flutter Test & Quality Check / Test on ubuntu-latest (push) Has been cancelled
Flutter Test & Quality Check / Build APK (push) Has been cancelled
test: 통합 테스트 오류 및 경고 수정
- 모든 서비스 메서드 시그니처를 실제 구현에 맞게 수정
- TestDataGenerator 제거하고 직접 객체 생성으로 변경
- 모델 필드명 및 타입 불일치 수정
- 불필요한 Either 패턴 사용 제거
- null safety 관련 이슈 해결

수정된 파일:
- test/integration/screens/company_integration_test.dart
- test/integration/screens/equipment_integration_test.dart
- test/integration/screens/user_integration_test.dart
- test/integration/screens/login_integration_test.dart
2025-08-05 20:24:05 +09:00

321 lines
8.7 KiB
HTML

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SUPERPORT 테스트 리포트 - SUPERPORT Master Test Suite</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
line-height: 1.6;
color: #333;
background: #f5f5f5;
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
.report-header {
background: white;
padding: 30px;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
margin-bottom: 30px;
}
.report-header h1 {
font-size: 2.5em;
margin-bottom: 10px;
color: #2c3e50;
}
.header-info {
color: #666;
font-size: 0.9em;
}
.header-info span {
margin-right: 20px;
}
section {
background: white;
padding: 30px;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
margin-bottom: 30px;
}
h2 {
font-size: 1.8em;
margin-bottom: 20px;
color: #2c3e50;
}
.summary-cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: 20px;
margin-bottom: 30px;
}
.card {
text-align: center;
padding: 20px;
border-radius: 8px;
background: #f8f9fa;
}
.card.total { background: #e3f2fd; color: #1976d2; }
.card.success { background: #e8f5e9; color: #388e3c; }
.card.failure { background: #ffebee; color: #d32f2f; }
.card.skipped { background: #fff3e0; color: #f57c00; }
.card-value {
font-size: 2.5em;
font-weight: bold;
}
.card-label {
font-size: 0.9em;
margin-top: 5px;
}
.progress-bar {
height: 30px;
background: #e0e0e0;
border-radius: 15px;
position: relative;
overflow: hidden;
}
.progress-fill {
height: 100%;
background: linear-gradient(90deg, #4caf50, #45a049);
transition: width 0.5s ease;
}
.progress-text {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
font-weight: bold;
color: #333;
}
.failure-item {
border: 1px solid #ffcdd2;
border-radius: 4px;
padding: 15px;
margin-bottom: 15px;
background: #ffebee;
}
.failure-item h3 {
color: #c62828;
margin-bottom: 10px;
}
.failure-message {
background: #fff;
padding: 10px;
border-radius: 4px;
overflow-x: auto;
font-size: 0.9em;
}
details {
margin-top: 10px;
}
summary {
cursor: pointer;
color: #666;
font-size: 0.9em;
}
.stack-trace {
background: #f5f5f5;
padding: 10px;
border-radius: 4px;
font-size: 0.8em;
overflow-x: auto;
max-height: 300px;
overflow-y: auto;
}
table {
width: 100%;
border-collapse: collapse;
}
th, td {
text-align: left;
padding: 12px;
border-bottom: 1px solid #e0e0e0;
}
th {
background: #f5f5f5;
font-weight: 600;
color: #666;
}
td.success { color: #388e3c; }
td.failure { color: #d32f2f; }
.fix-item {
border-radius: 4px;
padding: 15px;
margin-bottom: 10px;
}
.fix-item.success {
background: #e8f5e9;
border: 1px solid #c8e6c9;
}
.fix-item.failure {
background: #ffebee;
border: 1px solid #ffcdd2;
}
.fix-header {
display: flex;
justify-content: space-between;
margin-bottom: 5px;
}
.fix-type {
font-weight: bold;
}
.env-table {
font-size: 0.9em;
}
.env-key {
font-weight: 600;
color: #666;
}
.report-footer {
text-align: center;
color: #666;
font-size: 0.9em;
}
</style>
</head>
<body>
<div class="container">
<header class="report-header">
<h1>🚀 SUPERPORT Master Test Suite</h1>
<div class="header-info">
<span class="date">생성 시간: 2025-08-05 15:28:37.918648</span>
<span class="duration">소요 시간: 0초</span>
</div>
</header>
<section class="summary">
<h2>📊 테스트 요약</h2>
<div class="summary-cards">
<div class="card total">
<div class="card-value">0</div>
<div class="card-label">전체 테스트</div>
</div>
<div class="card success">
<div class="card-value">0</div>
<div class="card-label">성공</div>
</div>
<div class="card failure">
<div class="card-value">1</div>
<div class="card-label">실패</div>
</div>
<div class="card skipped">
<div class="card-value">0</div>
<div class="card-label">건너뜀</div>
</div>
</div>
<div class="progress-bar">
<div class="progress-fill" style="width: 0.0%"></div>
<div class="progress-text">성공률: 0.0%</div>
</div>
</section>
<section class="failures">
<h2>❌ 실패한 테스트</h2>
<div class="failure-list">
<div class="failure-item">
<h3>OverviewScreen</h3>
<pre class="failure-message">테스트 실행 중 치명적 오류: TestSetupError: 테스트 환경 설정 실패 ({error: Bad state: GetIt: Object/factory with type DashboardService is not registered inside GetIt.
(Did you accidentally do GetIt sl=GetIt.instance(); instead of GetIt sl=GetIt.instance;
Did you forget to register it?), sessionId: OverviewScreen_1754375317790})</pre>
<details>
<summary>스택 트레이스</summary>
<pre class="stack-trace">#0 BaseScreenTest.setupTestEnvironment (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/screens/base/base_screen_test.dart:96:7)
&lt;asynchronous suspension&gt;
#1 BaseScreenTest.runTests (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/screens/base/base_screen_test.dart:138:7)
&lt;asynchronous suspension&gt;
#2 MasterTestSuite._runSingleTest (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/master_test_suite.dart:345:26)
&lt;asynchronous suspension&gt;
#3 _Semaphore.run (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/master_test_suite.dart:765:14)
&lt;asynchronous suspension&gt;
#4 Future.wait.&lt;anonymous closure&gt; (dart:async/future.dart:525:21)
&lt;asynchronous suspension&gt;
#5 MasterTestSuite._runTestsInParallel (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/master_test_suite.dart:313:21)
&lt;asynchronous suspension&gt;
#6 MasterTestSuite.runAllTests (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/master_test_suite.dart:160:9)
&lt;asynchronous suspension&gt;
#7 main.&lt;anonymous closure&gt;.&lt;anonymous closure&gt; (file:///Users/maximilian.j.sul/Documents/flutter/superport/test/integration/automated/master_test_suite.dart:815:7)
&lt;asynchronous suspension&gt;
#8 Declarer.test.&lt;anonymous closure&gt;.&lt;anonymous closure&gt; (package:test_api/src/backend/declarer.dart:229:9)
&lt;asynchronous suspension&gt;
#9 Declarer.test.&lt;anonymous closure&gt; (package:test_api/src/backend/declarer.dart:227:7)
&lt;asynchronous suspension&gt;
#10 Invoker._waitForOutstandingCallbacks.&lt;anonymous closure&gt; (package:test_api/src/backend/invoker.dart:258:9)
&lt;asynchronous suspension&gt;
</pre>
</details>
</div>
</div>
</section>
<section class="environment">
<h2>⚙️ 테스트 환경</h2>
<table class="env-table">
<tbody>
<tr>
<td class="env-key">platform</td>
<td class="env-value">Flutter</td>
</tr>
<tr>
<td class="env-key">api</td>
<td class="env-value">https://api-dev.beavercompany.co.kr</td>
</tr>
<tr>
<td class="env-key">mode</td>
<td class="env-value">parallel</td>
</tr>
<tr>
<td class="env-key">maxParallel</td>
<td class="env-value">3</td>
</tr>
</tbody>
</table>
</section>
<footer class="report-footer">
<p>이 리포트는 SUPERPORT 자동화 테스트 시스템에 의해 생성되었습니다.</p>
<p>생성 시간: 2025-08-05 15:28:37.920410</p>
</footer>
</div>
</body>
</html>