AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi MS-Access oder MS-SQL?

MS-Access oder MS-SQL?

Ein Thema von freimatz · begonnen am 18. Jul 2019 · letzter Beitrag vom 15. Aug 2019
Antwort Antwort
Seite 3 von 4     123 4   
freimatz

Registriert seit: 20. Mai 2010
1.377 Beiträge
 
Delphi 11 Alexandria
 
#21

AW: MS-Access oder MS-SQL?

  Alt 19. Jul 2019, 14:36
Liest die Anwendung den Inhalt der DB ein? Sprich ist solche eine kleine DB eine andere Form von Testscript?
Ja. Nein.

Prinzpiell wäre es klüger das 'Testscript' in dem Format anzubieten in dem der bestehende Test'mechanismus' die Tests heute schon liest.
Inwiefern ist das relevant für die Frage MS-Access oder MS-SQL?

Kathinka rulez
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
532 Beiträge
 
Delphi 10.3 Rio
 
#22

AW: MS-Access oder MS-SQL?

  Alt 19. Jul 2019, 17:07
Liest die Anwendung den Inhalt der DB ein? Sprich ist solche eine kleine DB eine andere Form von Testscript?
Ja. Nein.

Prinzpiell wäre es klüger das 'Testscript' in dem Format anzubieten in dem der bestehende Test'mechanismus' die Tests heute schon liest.
Inwiefern ist das relevant für die Frage MS-Access oder MS-SQL?

Kathinka rulez
Was steht dann in den DBs drinnen? Die gesammelten 'Testscripte' vermutlich. Oder wie sollte man folgenden Text interpretieren.

Ich schrieb "ich habe eine Anwendung, die unterstützt MS-Access oder MS-SQL. Für automatische Tests gibt es Testdatenbanken.". Es geht mir hier um den Test der Anwendung, nicht um den Test der Datenbanken. Und ja, es geht auch nicht um unit-tests. Es sind hier das was manche Coded-UI-Tests nennen.

Ein vereinfachtes Beispiel für einen Test:
- Öffne Anwendung mit DB "Bla"
- Öffne in der DB Bereich "7162"
- Aktiviere Action "Fu"
- Warte bis Menüband (Ribbon) erscheint
- Fülle in die Eingabefelder b1,b2,b3 die Elemente von der DB x001, x002 bzw. x003 ab
- Prüfe ob in der DropDown-Liste Z003 die Einträge M und L drin sind.
Ob die Elemente x001, x002 bzw. x003 von einer Access oder MS-SQL DB stammen ist für den Test völlig egal.

Ich ging mal davon aus, dass diese Anweisungen technischer formuliert von der Anwendung oder einer Testumgebung maschinell gelesen und automatisiert ver- resp. abgearbeitet werden.

-

Du hast angedeutet, dass dir Änderungen im Moment wohl kaum zugestanden würden. An sich solltest du mit LocalDB das Auslangen finden. Du hättest dann nur ein Set an Testfällen in einer technischen Formulierung (also einem DB Format).
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.377 Beiträge
 
Delphi 11 Alexandria
 
#23

AW: MS-Access oder MS-SQL?

  Alt 19. Jul 2019, 17:39
In den DBs drinnen sind Testdaten. Also z.B. die Elemente x001, x002 bzw. x003.

Nein, nochmals, die Testscripte sind dort nicht drin.

Ja, die Anweisungen sind technischer formuliert, als in meinem Beispiel.

Ich sehe gerade nicht was LocalDB mir bringen soll ausser viel Arbeit. Das ist auch wie ich es sehe für etwas anders da.
Eher düfte MS-SQL Express passen, dass dann von den Testscripten mit sqlcmd angesteuert wird.
  Mit Zitat antworten Zitat
MichaelT

Registriert seit: 14. Sep 2005
Ort: 4020 Linz
532 Beiträge
 
Delphi 10.3 Rio
 
#24

AW: MS-Access oder MS-SQL?

  Alt 19. Jul 2019, 18:25
Danke. Das war mir so nicht klar.

Local DB ist heute eine speziell konfigurierter SQL Server Express. Ich dachte allein da diese DB oft auf Workstation images, zwar in älterer Version aber doch, in manchem OS image vorhanden ist, wie einst die Access libraries bspw. auf Windows Servern z. B. da eine Serveranwendung der MS darauf lief. Deswegen konnte man sich drauf verlassen, dass die Libraries verfügbar sind.

Wenn die Scripts aber losgelöst sind, dann spricht mal wenig gegen SQL Express.


In den DBs drinnen sind Testdaten. Also z.B. die Elemente x001, x002 bzw. x003.

Nein, nochmals, die Testscripte sind dort nicht drin.

Ja, die Anweisungen sind technischer formuliert, als in meinem Beispiel.

Ich sehe gerade nicht was LocalDB mir bringen soll ausser viel Arbeit. Das ist auch wie ich es sehe für etwas anders da.
Eher düfte MS-SQL Express passen, dass dann von den Testscripten mit sqlcmd angesteuert wird.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#25

AW: MS-Access oder MS-SQL?

  Alt 19. Jul 2019, 21:39
Der Platz darf keine Rolle spielen.

Zum Test.
Du musst natürlich 2 Datenbanken testen,
wenn du 2 Datenbanken beim Kunden anbietest.
Dem ist nichts hinzuzufügen!

Egal wieviele Danbanken von Deiner Anwendung unterstützt werden (sollen) (Versionsabweichungen beachten!)
Jede dieser Datenbanken(Versionen) muß getestet werden.

Die Idee MS-SQL zu testen und auf die Unterstützung von Access zu vertrauen ist wenig professionell.

Ja das ist aufwendig! Und wer da in KB-Bereichen rechnet, macht etwas falsch.


Ich hoffe ich habe die Ausgangsfrage falsch verstanden......

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.377 Beiträge
 
Delphi 11 Alexandria
 
#26

AW: MS-Access oder MS-SQL?

  Alt 20. Jul 2019, 11:55
Ja, offensichtlich hast Du

Wenn man zwei Datenbanksysteme anbietet muss man natürlich beide auch testen. Aber darum geht es mir nicht.

Wir haben zehntausende unit- und Integrationstest. Diese laufen vor oder bei jedem commit. Um die geht es mir nicht.

Im Bereich der Coded-UI-Test haben wir über 100 Testsuiten mit je wiederum ca. 2 bis 20 Testes, die wiederum teilweise hunderte Checks machen. (Falls es interssiert wir verwenden Jenkins und das Robotframework.) Die meisten laufen jede Nacht. Viele lässt man auch laufen bevor ein branch in master geht.
(Im Sinne einer Testpyramide sollten wir mehr unit-tests und weniger Coded-UI-Test haben, aber auch das ist ein anderes Thema.)

Eine oder zwei der Testsuiten testen den Zugriff auf Access und MS-SQL, das Öffnen, Updaten, Kopieren, etc. Um diese Testsuiten geht es mir auch nicht.
Der Datenbankzugriff in der Anwendung ist recht gut abgekapselt. Die meisten Entwickler haben noch nie ein SQL-Statement gesehen.
Den anderen Testsuiten kann - ich behaupte muss - es daher egal sein ob die Testdaten in einer Access oder MS-SQL DB liegen. Die meisten verwenden Access, wenige MS-SQL.
Ich selber bin für ca. 20 Testsuiten zuständig. Für diese wird je eine von zwei Testdatenbanken verwendet. Die sind derzeit in Access. Und für die überlege ich ob ein Umstieg lohnt.

Warum KByte durchaus ein Thema ist habe ich in #5 erklärt.
Wenn ich mir die Kurse zu DevOps und den Test anschaue werden da gerade mal ca. je 100 Bytes eingecheckt. Ok, das sind natürlich nur Beispiele, reale Daten sind schon größer.

Habe das nun versucht zu erklären. Allerdings liegt mir das Erklären für Menschen nicht. Darum bin ich auch Softwareentwickler geworden, der PC versteht eher was ich meine.
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.377 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: MS-Access oder MS-SQL?

  Alt 14. Aug 2019, 15:21
Hallo,
hier bin ich wieder mit dem Thema. Ich habe nun etwas analysiert bezüglich dem Speicherbedarf.
Eine der Testdatenbanken, die für etliche Tests verwendet wird, benötigt
- ca. 7 MByte als Accessdatenbank (4.5 MByte gezippt)
- ca. 73 MByte als MS-SQL (*.mdf)
- ca. 23 MByte als SQL-Script (6 MByte) gezippt
Das gezippte habe ich als Anhaltspunkt was denn git beim komprimieren rausholen könnte.
Ich gehe davon aus, dass man mit SQL noch deutlich noch sparen kann, wenn man gewissen Testdaten die bei allen Tests gleich sind separat ablegt.

Was ich nun noch genauer wissen müsste wäre der Ressourcenverbrauch von MS-SQL-Express selber. Mit googeln habe ich viel gefunden wie MS-SQL Ressourcen verwaltet aber nicht wieviel es selber verbraucht. Ich benötige da so Dinge wie CPU-Last und RAM. Unsere VMs haben nicht gerade viel. Und bei uns hat der Verwalter der VMs die Installation von MS-SQL-Express auf den VMs abgelehnt weil das so viel Ressourcen verbrauchen würde. Wie kann man den Bedarf ermitteln?
Wenn ich lokal bei mir schaue mit dem Process Explorere sehe ich da z.B. ein Ssms.exe mit 240MByte und zwei sqlservr.exe mit je 630 MByte. Das wäre dann schon recht viel.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#28

AW: MS-Access oder MS-SQL?

  Alt 14. Aug 2019, 16:20
Also mein Tipp wäre ja Access als Sparvariante, allerdings dann ohne die fette Umgebung.
Vielleicht hilft das schon
https://www.microsoft.com/en-us/down....aspx?id=54920
ist auch mit ein Requirements und Hinweisen versehen.

Am Ende würde man vielleicht rausfinden, dass es auch nur Dinge installiert, die schon da sind.
Der Laufzeitverbrauch an Ressourcen für das reine Einbinden der Treiber DLL dürfte dann am Ende aber wohl nicht die Rolle spielen verglichen mit dem Bedarf für Abfragen oder?
Gruß, Jo
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.377 Beiträge
 
Delphi 11 Alexandria
 
#29

AW: MS-Access oder MS-SQL?

  Alt 14. Aug 2019, 18:18
Für den Kollegen spielt der Laufzeitverbrauch an Ressourcen für das reine Einbinden des MS-SQL Express schon eine Rolle - zumindest meint er das. Mit Access hätte ich nichts gewonnen, weil wir das ja eh schon haben, aber unseres Wissens keine Scripte unterstützt. Die Scripte hätte ich aber gerne und daher die Idee zu MS-SQL. Das unterstützen wir zwar auch, aber nur mit einem separaten Server, den die VMs nicht haben. (Mit localDB hätte ich das nicht, müsste aber die produktive Anwendung ändern, was auch Probleme macht.)
Daher hätte ich schon gerne gewusst wieviel Ressourcen MS-SQL Express benötigt.
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
961 Beiträge
 
Delphi 6 Professional
 
#30

AW: MS-Access oder MS-SQL?

  Alt 14. Aug 2019, 19:08
Hmm..

Sorry, aber wenn deine Kollegen eine VM mit 2GB Ram und nem DualCore als 'zu viel' für einen kleinen SQL-Server betrachtet, dann sollte er überlegen, ob er weiß wovon er redet..

Bei den Kunden von meinem Arbeitgeber gibt es keinen, welcher nicht als Mindestausstattung seiner VM-Server 4 GB, ehe 8 GB RAM und neben der 60 GB HD fürs OS noch eine Datenplatte von 100 GB und nem DualCore 'vorsieht'. Und dass sind die kleinen Kunden...

Ein SQL-Server Express (2017) nimmt sich maximal 4 Cores und ca. 1,5 GB RAM..
Die Standard mehr und die höheren Versionen, was der Server bietet:

https://www.microsoft.com/de-de/sql-...-2017-editions

Bei uns laufen zum Testen verschiedene VMs mit verschiedenen Versionen von SQL-Server gleichzeitig auf einem kleinen VM-Host...
(Ja ich Verwende Delphi 6 Pro und will NICHT wechseln!)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz