File size: 11,863 Bytes
1ca197b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>QA Nexus Commander</title>
    <link rel="stylesheet" href="style.css">
    <script src="https://cdn.tailwindcss.com"></script>
    <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
    <script src="https://unpkg.com/feather-icons"></script>
    <script src="components/navbar.js"></script>
    <script src="components/auth-modal.js"></script>
</head>
<body class="bg-gray-100">
    <custom-navbar></custom-navbar>
    <auth-modal></auth-modal>

    <div id="dashboard" class="container mx-auto px-4 py-8 hidden">
        <!-- Testing Type Selection -->
        <div class="mb-8 bg-white rounded-lg shadow p-6">
            <h2 class="text-2xl font-bold mb-4 text-gray-800">Select Testing Type</h2>
            <div class="grid grid-cols-1 md:grid-cols-3 gap-4">
                <div class="testing-type-card" data-type="functional">
                    <i data-feather="monitor" class="w-12 h-12 text-blue-500 mb-3"></i>
                    <h3 class="text-xl font-semibold mb-2">Functional</h3>
                    <p class="text-gray-600">Validate application functionality</p>
                </div>
                <div class="testing-type-card" data-type="performance">
                    <i data-feather="activity" class="w-12 h-12 text-purple-500 mb-3"></i>
                    <h3 class="text-xl font-semibold mb-2">Performance</h3>
                    <p class="text-gray-600">Test system under load</p>
                </div>
                <div class="testing-type-card" data-type="accessibility">
                    <i data-feather="eye" class="w-12 h-12 text-green-500 mb-3"></i>
                    <h3 class="text-xl font-semibold mb-2">Accessibility</h3>
                    <p class="text-gray-600">Ensure inclusive design</p>
                </div>
                <div class="testing-type-card" data-type="chaos">
                    <i data-feather="zap" class="w-12 h-12 text-red-500 mb-3"></i>
                    <h3 class="text-xl font-semibold mb-2">Chaos Engg</h3>
                    <p class="text-gray-600">Test system resilience</p>
                </div>
                <div class="testing-type-card" data-type="security">
                    <i data-feather="shield" class="w-12 h-12 text-yellow-500 mb-3"></i>
                    <h3 class="text-xl font-semibold mb-2">Security</h3>
                    <p class="text-gray-600">Identify vulnerabilities</p>
                </div>
                <div class="testing-type-card" data-type="api">
                    <i data-feather="code" class="w-12 h-12 text-indigo-500 mb-3"></i>
                    <h3 class="text-xl font-semibold mb-2">API Testing</h3>
                    <p class="text-gray-600">Validate API contracts</p>
                </div>
            </div>
        </div>

        <!-- Testing Dashboard (will be shown after type selection) -->
        <div id="testing-dashboard" class="hidden bg-white rounded-lg shadow p-6">
            <div class="flex justify-between items-center mb-6">
                <h2 id="testing-type-title" class="text-2xl font-bold text-gray-800"></h2>
                <button id="trigger-modal-btn" class="bg-blue-600 hover:bg-blue-700 text-white px-4 py-2 rounded-md flex items-center">
                    <i data-feather="play" class="mr-2"></i> Trigger Test Now
                </button>
            </div>

            <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
                <div class="stats-card">
                    <div class="flex items-center">
                        <div class="p-3 rounded-full bg-blue-100 mr-4">
                            <i data-feather="clock" class="text-blue-500"></i>
                        </div>
                        <div>
                            <p class="text-gray-500">Currently Executing</p>
                            <h3 id="executing-tests" class="text-2xl font-bold">5</h3>
                        </div>
                    </div>
                </div>

                <div class="stats-card">
                    <div class="flex items-center">
                        <div class="p-3 rounded-full bg-green-100 mr-4">
                            <i data-feather="file-text" class="text-green-500"></i>
                        </div>
                        <div>
                            <p class="text-gray-500">Reports</p>
                            <h3 id="total-reports" class="text-2xl font-bold">24</h3>
                        </div>
                    </div>
                </div>

                <div class="stats-card">
                    <div class="flex items-center">
                        <div class="p-3 rounded-full bg-purple-100 mr-4">
                            <i data-feather="calendar" class="text-purple-500"></i>
                        </div>
                        <div>
                            <p class="text-gray-500">Last Run</p>
                            <h3 id="last-run" class="text-2xl font-bold">2h ago</h3>
                        </div>
                    </div>
                </div>
            </div>

            <!-- Filters -->
            <div class="mt-8">
                <h3 class="text-lg font-semibold mb-3">Tag Based Filters</h3>
                <div class="flex flex-wrap gap-2">
                    <span class="tag-filter">Regression</span>
                    <span class="tag-filter">Smoke</span>
                    <span class="tag-filter">Sanity</span>
                    <span class="tag-filter">Critical</span>
                    <span class="tag-filter">UI</span>
                </div>
            </div>
        </div>
    </div>

    <!-- Test Trigger Modal -->
    <div id="trigger-modal" class="fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center hidden z-50">
        <div class="bg-white rounded-lg shadow-xl w-full max-w-2xl max-h-[90vh] overflow-y-auto">
            <div class="p-6">
                <div class="flex justify-between items-center mb-4">
                    <h3 id="modal-title" class="text-xl font-bold text-gray-800">Trigger New Test</h3>
                    <button id="close-modal" class="text-gray-500 hover:text-gray-700">
                        <i data-feather="x"></i>
                    </button>
                </div>

                <form id="test-form">
                    <div class="mb-4">
                        <label class="block text-gray-700 mb-2">Test Suite</label>
                        <select class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500">
                            <option>Select Test Suite</option>
                            <option>Full Regression Suite</option>
                            <option>Smoke Test Suite</option>
                            <option>Sanity Check Suite</option>
                            <option>Critical Path Suite</option>
                        </select>
                    </div>

                    <div class="mb-4">
                        <label class="block text-gray-700 mb-2">Time to Execute</label>
                        <input type="text" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" placeholder="Estimated execution time">
                    </div>

                    <div class="mb-4">
                        <label class="block text-gray-700 mb-2">TestOps</label>
                        <select class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500">
                            <option>Select TestOps</option>
                            <option>Parallel Execution</option>
                            <option>Sequential Execution</option>
                        </select>
                    </div>

                    <div id="functional-fields" class="hidden">
                        <div class="mb-4">
                            <label class="block text-gray-700 mb-2">Browsers</label>
                            <div class="flex flex-wrap gap-3">
                                <label class="inline-flex items-center">
                                    <input type="checkbox" class="form-checkbox text-blue-600">
                                    <span class="ml-2">Chrome</span>
                                </label>
                                <label class="inline-flex items-center">
                                    <input type="checkbox" class="form-checkbox text-blue-600">
                                    <span class="ml-2">Firefox</span>
                                </label>
                                <label class="inline-flex items-center">
                                    <input type="checkbox" class="form-checkbox text-blue-600">
                                    <span class="ml-2">Safari</span>
                                </label>
                                <label class="inline-flex items-center">
                                    <input type="checkbox" class="form-checkbox text-blue-600">
                                    <span class="ml-2">Edge</span>
                                </label>
                            </div>
                        </div>

                        <div class="mb-4">
                            <label class="block text-gray-700 mb-2">Profile</label>
                            <select class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500">
                                <option>Default Profile</option>
                                <option>Mobile Profile</option>
                                <option>Tablet Profile</option>
                                <option>Desktop Profile</option>
                            </select>
                        </div>
                    </div>

                    <div id="performance-fields" class="hidden">
                        <div class="mb-4">
                            <label class="block text-gray-700 mb-2">Users</label>
                            <input type="number" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" placeholder="Number of virtual users">
                        </div>

                        <div class="mb-4">
                            <label class="block text-gray-700 mb-2">Ramp-up (seconds)</label>
                            <input type="number" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" placeholder="Time to ramp up users">
                        </div>

                        <div class="mb-4">
                            <label class="block text-gray-700 mb-2">Hold Time (minutes)</label>
                            <input type="number" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" placeholder="Duration of test">
                        </div>
                    </div>

                    <div class="mt-6">
                        <button type="submit" class="w-full bg-blue-600 hover:bg-blue-700 text-white py-2 px-4 rounded-md flex items-center justify-center">
                            <i data-feather="play" class="mr-2"></i> Start Test Execution
                        </button>
                    </div>
                </form>
            </div>
        </div>
    </div>

    <script src="script.js"></script>
    <script>
        feather.replace();
    </script>
<script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
</body>
</html>