2008-09-03 8 views
3

J'ai lu la question sur 'La meilleure façon de tester l'unité Objective-C et j'ai suivi les instructions, mais peu importe ce que je fais, les tests unitaires ne fonctionnent pas. En fait, le programme entier ne fonctionne pas, je reçois le message suivant.Tests unitaires dans Xcode 3.1

dyld: Bibliothèque non chargée: @ rpath/SenTestingKit.framework/Versions/A/SenTestingKit de Référencé/Utilisateurs/garethlewis/travail/objc/UnitTesting/build/Debug/UnitTesting Raison: image not found

J'ai mis la variable DYLD_FALLBACK_FRAMEWORK_PATH, et aussi le XCInjectBundle aussi bien que le DYLD_INSERT_LIBRARIES et ai ajouté la variable -SenTest All.

Je ne peux pas avoir la seule installation de Xcode 3.1 sur laquelle les tests de l'unité échouent. Est-ce que quelqu'un qui a réussi à faire fonctionner Unit Testing sur Xcode 3.1 donne des détails sur ce qui doit être fait. Cela aiderait beaucoup, avec ce que j'essaie de faire.

Répondre

4

Vous n'avez pas besoin de faire ce genre de choses pour exécuter vos tests.

Si vous écrivez des tests pour une application, vous devez juste besoin de configurer le système hôte et Bundle test Loader paramètres de construction pour votre cible de faisceau de test unitaire et ils seront exécutés dans le cadre de votre construction. Si vous écrivez des tests pour un framework, vous n'avez même pas besoin de faire cela, assurez-vous simplement que votre bundle de test est lié à votre framework.

Je suppose que vous parlez de déboguer vos tests, pas seulement de les exécuter. Si oui, il est important de nous donner les informations suivantes:

  • quel type de tests - application ou cadre - vous essayez de déboguer
  • les variables d'environnement que vous définissez, et ce que les valeurs que vous les définissez à
  • quels arguments vous définissez (-SenTest All devrait être un argument, et non variable d'environnement)
  • ce que l'erreur complète apparaît dans votre console de débogage est non seulement l'échec spécifique

Tha t aidera à diagnostiquer ce qui se passe.

À première vue, il semble que vous pourriez avoir une faute de frappe dans votre DYLD_FALLBACK_FRAMEWORK_PATH parce que détermine où dyld va chercher le SenTestingKit.framework binaire si @rpath ne peut pas être résolu. Savoir à quoi ça sert va probablement aider. (PS - c'est Xcode.)