A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
— |
oktatas:adatbazis-kezeles:adatbazis-teszteles [2019/08/15 20:50] (aktuális) admin létrehozva |
||
---|---|---|---|
Sor 1: | Sor 1: | ||
+ | [[oktatas:adatbázis-kezelés|< Adatbázis-kezelés]] | ||
+ | |||
+ | ====== Adatbázis-tesztelés ====== | ||
+ | |||
+ | |||
+ | * **Szerző:** Sallai András | ||
+ | * Copyright (c) Sallai András, 2014, 2017 | ||
+ | * Licenc: GNU Free Documentation License 1.3 | ||
+ | * Web: http://szit.hu | ||
+ | |||
+ | ====== Értelmezhető teszttípusok ====== | ||
+ | |||
+ | * adatbázis séma teszt | ||
+ | * funkcionalitási teszt | ||
+ | * terhelési teszt | ||
+ | * védelmi teszt | ||
+ | * hatékonysági teszt | ||
+ | * adatintegritási teszt | ||
+ | ===== Vizsgálati eljárások ===== | ||
+ | |||
+ | |||
+ | * adatbázis fekete-dobozos tesztelése | ||
+ | * adatbázis fehér-dobozos tesztelése | ||
+ | |||
+ | ==== Fekete-dobozos tesztelés ==== | ||
+ | |||
+ | * adatok feltérképezése | ||
+ | * beérkező adatok ellenőrzése | ||
+ | * kimenő adatok ellenőrése | ||
+ | * ok-hatás diagram (Cause effect graphing; ok-hatás analízis) (esetleg döntési táblák) | ||
+ | * ekvivalencia particionálás (Equivalence Class Partitioning - ECP) | ||
+ | * határ-érték elemzés | ||
+ | |||
+ | |||
+ | {{:oktatas:adatbázis-kezelés:ok-kovetkezmenydiagram_001.png|}} | ||
+ | ==== Fehér-dobozos tesztelés ==== | ||
+ | |||
+ | Főleg az adatbázis belső szerkezetével foglalkozik. | ||
+ | |||
+ | |||
+ | * mit kell újratervezni | ||
+ | * adatbázis függvények, triggerek, nézetek, SQL lekérdezések tesztelése | ||
+ | * érvényes adatmodellek, táblák és sémák ellenőrzése | ||
+ | * hivatkozási integritások ellenőrzése | ||
+ | * alapértelmezett értékek ellenőrzése | ||
+ | * döntések és utasítások lefedettségének ellenőrzése | ||
+ | ===== WHODATE megközelítés ===== | ||
+ | |||
+ | Honkongi Természettudományi és Technikai Egyetem, számítástechnikai tanszékén foglalkoznak a WHODATE megközelítéssel. | ||
+ | |||
+ | A WHODATE megközelítés esetén az SQL kéréseket átalakítjuk a relációs algebra egy-egy utasításának. | ||
+ | |||
+ | {{:oktatas:adatbázis-kezelés:whodate_megkozelites.png|}} | ||
+ | |||
+ | |||
+ | A relációs algebra műveletei: | ||
+ | |||
+ | * egy operandusú | ||
+ | * szelekció | ||
+ | * projekció | ||
+ | * kiterjesztés | ||
+ | * aggregáció | ||
+ | * csoportképzés | ||
+ | * két operandusú | ||
+ | * join | ||
+ | * metszet | ||
+ | * különbség | ||
+ | * unió | ||
+ | * osztás | ||
+ | |||
+ | ===== Tesztprogramok ===== | ||
+ | |||
+ | ==== Funkció szerint ==== | ||
+ | |||
+ | |||
+ | * [[http://dbunit.sourceforge.net/|DBUnit]] - A JUnit mintájára készült adatbázis-tesztelő keretrendszer | ||
+ | * [[http://smartbear.com/products/qa-tools/automated-testing-tools/|TestComplete]] - Funkcionális automatateszt | ||
+ | * [[http://www.sqledit.com/stress/|DTM DB Stress]] - Adatbázis teljesítményteszt | ||
+ | |||
+ | ==== Egyéb ==== | ||
+ | * Microsoft® SQL Server™ 2000 SQL Query Analyzer | ||
+ | * [[http://www.mysql.com/products/enterprise/query.html|MySQL Query Analyzer]] | ||
+ | * [[http://test4data.com/|Test4Data]] | ||
+ | |||
+ | ===== Ubuntu és Debian ===== | ||
+ | ==== mariadb-test ==== | ||
+ | |||
+ | apt install mariadb-test | ||
+ | |||
+ | |||
+ | |||
+ | A teszteszközök a következő helyre települnek: | ||
+ | /usr/share/mysql/mysql-test/ | ||
+ | |||
+ | |||
+ | Pl.: | ||
+ | /usr/share/mysql/mysql-test/mysql-test-run.pl | ||
+ | /usr/share/mysql/mysql-test/mysql-stress-test.pl | ||
+ | |||
+ | ==== sysbench ==== | ||
+ | |||
+ | apt install sysbench | ||
+ | |||
+ | |||
+ | Teszttáblák elkészítése: | ||
+ | <code> | ||
+ | sysbench --test=oltp --oltp-table-size=1000000 \ | ||
+ | --mysql-db=test --mysql-user=root --mysql-password=titok prepare | ||
+ | </code> | ||
+ | |||
+ | |||
+ | Azután a benchmark: | ||
+ | |||
+ | <code> | ||
+ | sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test \ | ||
+ | --mysql-user=root --mysql-password=titok --max-time=60 \ | ||
+ | --oltp-read-only=on --max-requests=0 --num-threads=8 run | ||
+ | </code> | ||
+ | |||
+ | ===== Forrás ===== | ||
+ | |||
+ | * https://www2.cse.ust.hk/~scc/publ/CODAS99.pdf | ||
+ | * http://www.inf.unideb.hu/kmitt/konvkmitt/szoftverteszteles/book.xml.html | ||
+ | * https://phpunit.de/manual/3.8/en/database.html | ||
+ | * http://www.howtoforge.com/how-to-benchmark-your-system-cpu-file-io-mysql-with-sysbench | ||
+ | |||
+ | ===== Irodalom ===== | ||
+ | |||
+ | * Charles Bell: Expert MySQL | ||
+ | * http://it-ebooks.info/book/1978/ | ||