-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdiary.html
More file actions
376 lines (337 loc) · 17 KB
/
diary.html
File metadata and controls
376 lines (337 loc) · 17 KB
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
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Ondrej Husár - Bakalárska práca</title>
<!-- Bootstrap Core CSS -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- Custom CSS -->
<link href="css/business-casual.css" rel="stylesheet">
<!-- Fonts -->
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800" rel="stylesheet" type="text/css">
<link href="https://fonts.googleapis.com/css?family=Josefin+Slab:100,300,400,600,700,100italic,300italic,400italic,600italic,700italic" rel="stylesheet" type="text/css">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="brand">Bakalárska práca - Ondrej Husár</div>
<div class="address-bar">Aplikovaná informatika - FMFI</div>
<div class="container">
<div class="row">
<div class="box">
<div class="col-lg-12 text-center">
<h2 class="brand-before">
<small>Framework na vytváranie testových úloh v Pythone</small>
</h2>
<h1 class="brand-name">Denník</h1>
<hr class="tagline-divider">
<h2>
<small>
<strong>Ondrej Husár</strong>
</small>
</h2>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Rýchle odkazy</h2>
<hr>
<hr class="visible-xs">
<a href="index.html" class="btn btn-primary btn-lg btn-block">Hlavná stránka</a>
<a href="https://gitlab.com/ohusar/pef" class="btn btn-success btn-lg btn-block">GitLab repository</a>
<a href="manual/" target="_blank" class="btn btn-warning btn-lg btn-block">Manuál k používaniu</a>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Pondelok 22. Máj<br><strong>Text bakalárky odoslaný školitelovi</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
<a href="bakalarska_praca.docx" download>Dostupný aj tu.</a>
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Utorok 9. Máj<br><strong>Text bakalárky (WIP) a výsledky dotazníku</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Vytvoril som <a href="https://gitlab.com/ohusar/baka-text" target="_blank">nový repozitár</a> na písanie textu bakalárky. S písaním som výrazne pokročil a čakám už len na posledné úpravy v implementácií. Následne, keď budú jasné posledné detaily, môžem dokončiť text a spísať výsledky.
</p>
<p>
Do výsledkov budem môcť zahrnúť aj testovanie, vďaka poskytnutému prístupu k novej inštancií LISTU. Zároveň prikladám výsledky môjho dotazníku, ktoré ponúkajú ďalší prínos do výsledkov. <a href="report.pdf" download>Tu si ich môžete pozrieť vo forme PDF.</a>
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Nedela 30. April<br><strong>Používatelská príručka - finished</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Vytvoril som <a href="manual/" target="_blank">mmanuál k používaniu</a> môjho frameworku. (mierne WIP)
</p>
<p>
Vytvoril som taktiež <a href="https://freeonlinesurveys.com/s/JWWiAbIu">online dotazník</a> pre študentov, ktorý môžu vyjadriť svoj názor na testovače.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Štvrtok 27. April<br><strong>Používatelská príručka</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Dostal som sa do finalne fazy tvorby pouzivatelskej prirucky.
</p>
<p>
Popri tom sa snazim opravovat logicke chyby, ktore tento proces identifikoval. Zaroven sa pokusam vylepsit funkcionalitu a pisat si zaverecny zoznam funkcionality, ktora bude do implementacie pridana.
</p>
<p>
Taktiez som vytvoril (ale este nezverejnil) dotaznik pre feedback od studentov.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Pondelok 17. April<br><strong>Schválený návrh kapitol</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Do navrhu kapitol mi p.p. Blaho navrhol spomenut este testovanie tkinteru a co najviac si prestudovat prace Andreja Jursu, ktory sa taktiez zaoberal testovanim.
</p>
<p>
Zaroven som prisiel s napadom oslovit studentov, ktori mali s "mojimi" ulohami docienie. Aj p.p. Blaho si mysli, ze z toho mozem vytazit dalsie mozne rozsirenia. Bud pre mna, alebo aby som zhrnul moznosti rozsirenia do buducna (mozno pre dalsieho bakalara...).
</p>
<p>
Zacal som rozmyslat, ako by taketo testovanie mohlo prebiehat a zaroven pripravovat otazky, ktore by mohli dostat zo studentov konstruktivne odpovede.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Nedela 9. April<br><strong>Návrh kapitol</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Vytvoril a poslal som na spripomienkovanie p.p. Andrejovi Blahovi môj návrh kapitol.
</p>
<p>
<embed src="kapitoly.pdf" width="100%" height="100%" type='application/pdf'>
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Streda 5. April<br><strong>Prvé real life výsledky</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Zapracoval som pripomienky p. profesora Blaha do mojho testovacieho frameworku. Spravil som par navrhovych zmien a zmien vo vypisoch.
</p>
<p>
Snazil som sa sprehladnit pomocnu spravu, ak to padne na chybe. A zabezpecil, aby prikazy pred testom davali vacsi zmysel (napr. ked nema objekt definovanu __repr__ metodu [toString v Jave]).
</p>
<p>
Z prvej nasadenej ulohy na ktorej som spolupracoval vznikli prve odozvy od studentov. Z ich rieseni sa ukazalo zopar chyb v mojej praci. Boli to problemy ako napriklad:
</p>
<ul>
<li>Problemy s porovnavanim objektov, ak jeden z nich bol None a druhy nie.</li>
<li>Matuce chybove hlasky v prikazoch sposobene cistym omylom pri ich tvorbe.</li>
<li>Stringy vypisujuce sa bez apostrofov</li>
</ul>
<p>
Tieto veci som opravil. Dalej sa chystam na tvorbu pouzivatelskej prirucky, aby moj framework vedeli pouzivat aj ludia iny ako ja. Velmi mi pri tom pomohlo, ze som tvoril dve testove sady a pochopil som, co musi byt spravene intuitivnejsie.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Stvtok 30. marec<br><strong>Druhá a zmeny v prvej úlohe</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Pri pripravovaní druhej testovej úlohe, ktorá sa zaoberala binárnymi stromami som s p. profesorom Blahom pripravil zadanie.
</p>
<p>
Sám som potom vytváral zadanie, sadu testov, vzorové riešenie a zopár možných verzií študentkých riešení.
</p>
<p>
Po konzultácií s p. profesorom Blahom vzniklo zopár pripomienok. Menovite sa týkali veci ako: 'Príkazy pred testom' nie su celkom korektne, pomocna sprava velmi tazko pomoze - asi by sa to malo nejako prefiltrovat a vypisovat len to, co sa tyka studentovho riesenia a mozno v lepsom fomate.
</p>
<p>
Po tejto odozve som sa zacal analyzovat mozne riesenia a dal sa do roboty.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Utorok 21. marec<br><strong>Prvá testovacia úloha</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Pripravil som s okresanou verziou toho čo mám testy na reálne domáce zadanie z Programovania 2.
</p>
<p>
Je to sada testov na úlohu so stromami. Pri tejto úlohe využívam moju knižnicu. Tak isto sa moja
knižnica stará o spúštanie testov a jednoduché ovplyvnenie výpisu.
</p>
<p>
Na starých dátach študentov (ktorý už danú úlohu riešili v minulých rokoch kurzu) som testoval
svoje testy. Na datasete 10-30 submitov mi opakovane bežali testy a výstup som smeroval do súborov.
Súbory som analyzoval a podľa toho menil niektoré veci (formát výstupu, chyby v kóde, atď.).
</p>
<p>
Nasledovne som nechal bežať cez noc testy na datasete 900+ submittov, aby som identifikoval
neprepokladané situácie. (nič extra nečakané sa nestalo, čo je dobré)
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Piatok 17. marec<br><strong>Progress, poriadok</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Vo veľkej miere som pokročil za mojim cielom. Rozdelil som implemntáciu bakalárky do viacerých
logických celkov.
</p>
<p>
Práca teraz pri svojich úkonoch v hlavnom module "pef" čerpá zo samostatných modulov v súbore "lib".
Každý z týchto modulov je určený na jednu vec. Napr. je to modul, ktorý vyextrahuje atribúty z inštantcie
triedy, pri čom dostane chcené metódy a skupinu možných mien pre dané metódy. Alebo je to modul, ktorý vie
porovnávať obrázky.. aťď.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Štvrok 8. marec<br><strong>Prezentácia na bakalárskom semináre</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Dnes som prezentoval časť môjho návrhu na bakalárskom semináre.
</p>
<p>
<a href="http://slides.com/ondrejhusar/deck#/" target="_blank">Tu si môžete pozrieť moje slajdy.</a>
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Pondelok 6. marec<br><strong>Testovanie grafiky</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Cez víkend som robil na prvej implementácií testovateľnej verzie grafického widgetu Canvas z používanej knižnice tkinter.
</p>
<p>
V aktuálnom štádiu funguje obmedzená množina metód, ktoré umožňujú vytvárať čiary, kružnice, text, atď..
Zároveň sa na pozadí vytvára pomocou knižnice Pillow skoro identický obrázok a ten sa dá porovnať s očakávaným výsledkom.
</p>
<p>
Porovnávanie obrázkov sa deje dvomi spôsobmi:
<ul>
<li>Mean Squared Error</li>
<li>Structural Similarity Index</li>
</ul>
</p>
<p>
Doterajšie výsledky považujem za úspech. Ďalšie výzvy sú celkovo upratať kód, napísať testy (unit aj funkčné) a
vyriešiť manipuláciu s objektami na plátne (Canvase). Napr. veci ako presunúť nakreslený objekt, čo pôvodná trieda Canvas
umožňuje.
</p>
</div>
</div>
</div>
<div class="row">
<div class="box">
<div class="col-lg-12">
<hr>
<h2 class="intro-text text-center">Sobota 4. marec<br><strong>Začiatok</strong>
</h2>
<hr>
<hr class="visible-xs">
<p>
Za posledný týždeň som inicializoval repozitár a začal s implementáciou.
</p>
<p>
Naimplementoval som prvé moduly do TestCase triedy, ktorá bude využívaná koncovým užívatelom.
Konkrétne som naimplementoval moduly, ktoré extrahujú z testovaného skriptu použité rezervované slová a importy.
Tieto údaje sa dajú využiť na kontrolu toho, že dané programy neobsahujú nepovolené knižnice/vstavané funkcie jazyka.
</p>
<p>
Taktiež som pridal na stránku denník a začal príkladnejšie commitovať svoj progress.
</p>
</div>
</div>
</div>
<!-- jQuery -->
<script src="js/jquery.js"></script>
<!-- Bootstrap Core JavaScript -->
<script src="js/bootstrap.min.js"></script>
<!-- Script to Activate the Carousel -->
<script>
$('.carousel').carousel({
interval: 5000 //changes the speed
})
</script>
</body>
</html>