Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

the[V]oid

Alter Hase

  • »the[V]oid« ist der Autor dieses Themas

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

1

20.01.2009, 01:50

MSVC++ 2008 Professional: Unit Tests

Na toll, da habe ich mir gerade die Professional-Version über 10 Stunden lang heruntergeladen und installiert - 1 MBit DSL fühlt sich heute ja an wie 56k Modem vor 10 Jahren - da ich mich mit Unit Tests beschäftigen wollte, und dieses Feature in der Express-Version nicht integriert ist. Und stelle nun fest, dass es mit den Unit Tests irgendwie nicht so richtig klappt. Kann mir jemand erklären, wie ich Tests für unmanaged code erstelle? Nach langem Googlen habe ich folgendes Zitat aus der MSDN-Library gefunden, werde daraus aber auch nicht schlau:

Zitat

If your production code is unmanaged, it needs to be callable from a static library, an .obj file, or a DLL entry point. Class methods that are embedded inside an executable file or a DLL will not work because unmanaged Visual C++ does not offer the runtime discovery mechanism, reflection. Therefore, only the traditional native binding mechanisms will work.


Angenommen, ich habe eine DLL, die in unmanaged c++ geschrieben ist. Ist es nun möglich, für diese DLL Unit-Tests zu erstellen, und falls ja, wie? Geht dies speziell auch für Klassen und Funktionen, die nicht exportiert werden?

Falls es nicht geht: Was genau ist "mixed" im Zusammenhang mit managed/unmanaged? Lässt sich dadurch das Problem irgendwie lösen? Habe irgendwie so eine Andeutung irgendwo gelesen, sie aber nicht nachvollziehen können.

Vielen Dank im Voraus!
<< an dieser Stelle ist eine Signatur verstorben >>

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

2

20.01.2009, 08:53

Kauf dir das Orginal, dann bekommst du mit Sicherheit Support von Microsoft... Is schon ein wenig unverschämt was du hier machst!

Beneroth

Alter Hase

Beiträge: 969

Wohnort: Schweiz

Beruf: Software Entwickler

  • Private Nachricht senden

3

20.01.2009, 09:39

Zitat von »"David_pb"«

Kauf dir das Orginal, dann bekommst du mit Sicherheit Support von Microsoft... Is schon ein wenig unverschämt was du hier machst!


Was ist an dem unverschämt? Er darf wohl fragen.. dich finde ich unverschämt.

@the[V]oid: sorry, keine Ahnung.
Wie sind denn diese Unit Tests integriert? Muss man die dann nicht mehr selber schreiben oder wie? :)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

4

20.01.2009, 09:49

Zitat von »"Beneroth"«

Zitat von »"David_pb"«

Kauf dir das Orginal, dann bekommst du mit Sicherheit Support von Microsoft... Is schon ein wenig unverschämt was du hier machst!


Was ist an dem unverschämt? Er darf wohl fragen.. dich finde ich unverschämt.


Das er hier offen zugiebt mit Raubkopien zu hantieren. Vielleicht hat er ja irgendeine Sondererlaubnis, in dem Fall nehm ich alles zurück.

mystery

Treue Seele

Beiträge: 180

Wohnort: Schwarzwald

Beruf: Entwickler/Programmierer

  • Private Nachricht senden

5

20.01.2009, 10:00

Wenn er das MSDN Abo hat, selbst oder durch den Arbeitgeber ist das durchaus eine übliche Methode sich dort Pakete runter zu Laden. ;)

Allerdings gibt es je nach Paket nur eine begrenzte Anzahl Support Anfragen die Umsonst sind. Ich könnte verstehen das man die nicht einfach für so eine Frage verschwendet. Selbst beim Universal sind es nur 4 Anfragen und das ist so ziemlich das größte MSDN-Paket für einige 1000 Euro. Und eine Anfrage hat den Wert von ca. 400€ und wenn du keine Freien S-Anfragen hast mußt du dir welche Kaufen also im voraus bezahlen.

Wie kommst du @David_pb auf die Idee das man wenn man ein Microsoft Produkt hat dort unbegrenzt oft Support Anfragen stellen könnte? Kann man ja aber das kostet dann und zwar heftig.
Wer Rechtschreibfehler findet darf sie für seine Sammlung behalten.
Es gibt keine Probleme, nur Lösungen.

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

6

20.01.2009, 10:08

Zitat von »"mystery"«

Wenn er das MSDN Abo hat, selbst oder durch den Arbeitgeber ist das durchaus eine übliche Methode sich dort Pakete runter zu Laden. ;)


Sag ja... Falls das so ist... Aber wieso hätte er dann vorher die Express verwenden sollen und wieso hätte er sich extra wegen fehlender Unit Test Funktionalität ein MSDN Abo besorgen sollen? Fragen über Fragen!

Zitat von »"mystery"«


Wie kommst du @David_pb auf die Idee das man wenn man ein Microsoft Produkt hat dort unbegrenzt oft Support Anfragen stellen könnte? Kann man ja aber das kostet dann und zwar heftig.


Logisch! :) Ich lass mir ja auch meine Arbeit bezahlen! :p

mystery

Treue Seele

Beiträge: 180

Wohnort: Schwarzwald

Beruf: Entwickler/Programmierer

  • Private Nachricht senden

7

20.01.2009, 10:10

Zitat von »"David_pb"«

Zitat von »"mystery"«

Wenn er das MSDN Abo hat, selbst oder durch den Arbeitgeber ist das durchaus eine übliche Methode sich dort Pakete runter zu Laden. ;)


Sag ja... Falls das so ist... Aber wieso hätte er dann vorher die Express verwenden sollen und wieso hätte er sich extra wegen fehlender Unit Test Funktionalität ein MSDN Abo besorgen sollen? Fragen über Fragen!


Ist klar das da Fragen entstehen aber erstmal im Zweifel für den Angeklagten.

Also @the[V]oid dann sag uns mal bitte die Wahrheit über den Download ich denke sonst wird dir hier keiner mehr Antworten wenn so ein Vorwurf in der Luft schwebt. :roll:
Wer Rechtschreibfehler findet darf sie für seine Sammlung behalten.
Es gibt keine Probleme, nur Lösungen.

the[V]oid

Alter Hase

  • »the[V]oid« ist der Autor dieses Themas

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

8

20.01.2009, 10:36

Mensch, da seh ich dass es 6 Antworten gibt und freu mich voll, und dann les sich sowas hier :D

Die Sache ist ganz einfach. Ich studiere an der RWTH Aachen und im Rahmen eines Informatik-Praktikums haben wir MSVC++ 2008 Express eingesetzt. Also habe ich es damals für mich zuhause auch installiert gehabt und von da an auch benutzt. Warum mehr installieren - und vor allem, warum mehr herunterladen - als man gerade braucht? Im Rahmen des MSDNAA-Programms, an dem die RWTH teilnimmt, kann ich mir haufenweise MS-Software, darunter eben auch Visual Studio, XP, Vista und noch einige andere, völlig legal und kostenlos herunterladen. Aber so nen Generalverdacht, wie der hier abgezogen wurde, finde ich auch nicht gerade ok.

Zum Thema. Ich will gar nicht, dass die Unit-Tests für mich generiert werden, ich will die schon noch selber schreiben. Wie schon vorher gesagt, angenommen ich habe eine DLL und möchte für einige Funktionen, die diese intern verwendet, Tests (selber) erstellen: Wie mache ich das? Also es gibt im Kontextmenü einen Eintrag, der heißt "Komponententests erstellen", und wenn ich den anklicke, beschwert sich die IDE, dass die Compileroption /clr:safe fehle. Die hat man aber nur bei managed code, und einfach so anhängen geht auch nicht, denn die ist mit einer Menge anderer sehr gängiger Compileroptionen nicht kompatibel.

Vielen Dank im Voraus.
<< an dieser Stelle ist eine Signatur verstorben >>

xardias

Community-Fossil

Beiträge: 2 731

Wohnort: Santa Clara, CA

Beruf: Software Engineer

  • Private Nachricht senden

9

20.01.2009, 13:47

Zitat von »"the[V«

oid"]
Im Rahmen des MSDNAA-Programms, an dem die RWTH teilnimmt, kann ich mir haufenweise MS-Software, darunter eben auch Visual Studio, XP, Vista und noch einige andere, völlig legal und kostenlos herunterladen. Aber so nen Generalverdacht, wie der hier abgezogen wurde, finde ich auch nicht gerade ok.

Kann ich bestätigen, ich habe an der RWTH ebenfalls Zugriff auf diese Software. Nicht alles was man aus dem Internet laden kann ist illegal.

Zum Problem: Ich kann dir da leider nicht helfen, ich habe die Unit Testing Funktionen bisher nur in .NET Anwendungen genutzt.

mystery

Treue Seele

Beiträge: 180

Wohnort: Schwarzwald

Beruf: Entwickler/Programmierer

  • Private Nachricht senden

10

20.01.2009, 14:14

Hallo @the[V]oid das weiß aber eben bitte nicht jeder. Hättest du doch gleich so Schreiben können das es über Uni und legal ist. Ich verstehe @David_pb denn so wie du es geschrieben hast musste der Verdacht doch kommen, obwohl ich ja schon korregierend geschrieben hatte musste der Verdacht aus dem Weg geräumt werden habe doch bitte ein klein wenig Verständnis dafür, Danke. :)

Und jetzt noch zu deiner Frage. Du willst ja unmanaged c++ code Testen. Das geht soweit ich weiß nur wenn es vom Typ COM Bibliothek (COM type library) ist. Benutze hierzu auch regsvr32.exe um die Lib zu Registrieren. :roll:

Gruß mystery ;)
Wer Rechtschreibfehler findet darf sie für seine Sammlung behalten.
Es gibt keine Probleme, nur Lösungen.

Werbeanzeige