Coverage profiler

Version 1.17.054
Author Martin Jindra , E-mail: martin.jindra@egservis.cz
Lokalizace:
Překlad anglické verze Milan Pavlík, E-mail: pavlik@pce.cz
Překlad slovenské verze Jan Korecko, E-mail: Ján Korečko    Jan Brndiar, E-mail: brndiar@s-h.sk

K čemu to je ...

Coverage profiler (CVP) je specielní programová utilita pro Microsoft Visual Foxpro, sloužící ke zpracování log souboru vytvořeného příkazem SET COVERAGE TO ..., a následnému zobrazení zdrojového kódu. Takto lze sledovat i zkompilované APP a EXE, jen pokud jsou přilinkovány zdrojové kódy (pokud tomu tak není, pak ve vytvořeném log souboru chybí velmi důležitá informace o řádcích ve zdrojovém kódu). Momentálně musí být přítomny (kdekoliv) soubory se zdrojovými kódy aby došlo k jejich načtení.

Zdrojový kód lze zobrazit buď:
Výsledek zpracování lze uložit do souboru s koncovkou CVP. Takto uložený soubor je možno znovu otevřít a prohlížet.

Jak to pracuje ...

CVP vytváří 4 pracovní soubory a 5 dočasných souborů.

Pracovní soubory
Tabulka logu Zkrácená verze log souboru, kde texty jsou nahrazeny ID a odkazují se do následujících tabulek.
Tabulka typů zdrojů Seznam knihoven , formulářů, procedurálních souborů a DBC konteinerů.
Tabulka objektů Seznam všech proběhlých metod a procedur.
Tabulka zdrojových kódů Zdrojové kódy proběhlých metod a procedur.
Dočasné soubory
Tabulka stromu zdrojů Data zobrazující strom dle zdrojů "Zdrojového kódu".
Tabulka průběhu Data zobrazující strom dle reálného průběhu programu.
Tabulka zdrojových kódů dle průběhu Seznam zdrojových kódů jednotlivých M/P dle globálního a konkrétního průběhu.

Při ukládání do CVP souboru se ukládají pracovní i dočasné (je-li nastaveno) soubory. Pokud nejsou dočasné soubory uloženy taktéž, pak se generují při otevření CVP souboru a postupně při procházení stromy.

1 Načítání a zpracování log souboru
Je-li log soubor do 2MB pak se načte do kurzoru pomocí příkazu APPEND FROM ... a pak se zpracovává, jinak dojde k otevření pomocí lowlevel funkcí a zpracovává se přímo.Při zpracování se generuje obsah tabulek "Tabulka logu","Tabulka typů zdrojů" a "Tabulka objektů".
2 Oprava "Tabulky objektů"
Opraví se názvy (objektová cesta) metod , zvláště metod ve třídách..
3 Načtení "Tabulky zdrojových kódů"
Je procházena tabulka "Tabulka typů zdrojů" a následně všechny "objekty" z tabulky "Tabulky objektů" patřící k uvedenému zdroji. Ke každému "objektu" je načten zdrojový kód a uložen do tabulky "Tabulka zdrojových kódů".
4 Zobrazení zdrojového kódu na kartě "Zdroje"
Dochází ke zjišťování z kolika metod/procedur a kolikrát byla daná procedura/metoda volána. Pokud byla volána z více metod/procedur nebo vícekrát z jedné metody/procedury pak se do komboboxu přidá volba "Globální pohled". Spinner "Průběh" slouží k určení určitého průběhu. Po navolení "Voláno z " a "průběhu" se vygeneruje a zobrazí zdrojový kód.
5 Zobrazení zdrojového kódu na kartě "Hierarchie dle průběhu"
Po kliknutí na větev stromu se vygeneruje a zobrazí zdrojový kód pro daný průběh.

Použité komponenty

BIX Archiver 1.00 Beta 4
Autor: Igor Pavlov
E-mail: igorp@geocities.com
WWW: http://compress.da.ru, http://compression.hypermart.net
FTP: ftp://ftp.elf.stuba.sk/pub/pc/pack/bix*.zip
BZIP2 Archiver
Autor: Julian Seward
E-mail: jseward@acm.org
WWW: http://sources.redhat.com/bzip2/index.html
ZLib Archiver
Autor: Jean-Loup Gailly and Mark Adler
E-mail: zlib@gzip.org
WWW: http://www.ctan.org/tex-archive/tools/zip/info-zip/zlib/, http://www.info-zip.org/pub/infozip/zlib/, http://www.winimage.com/zLibDll/