2015-12-22 2 views
1

Lors de l'utilisation d'un SUT dans un DoFixture pour explorer son comportement, le premier appel à un procédé de fixation, réussit mais échoue après l'invocation d'une SUT-méthode:MemberMissingException dans FitSharp

Screenshot

public class ConfigurationCharacterization : fitlibrary.DoFixture 
{ 
    ConfigurationDelegator cd = new ConfigurationDelegator(); 
    public ConfigurationCharacterization() 
    { 
     mySystemUnderTest = cd; 
    } 


    public int AmountOfConfigsLoaded() 
    { 
     return cd.GetAllConfigs().Count; 
    } 
} 

//delegates calls to the static methods of Configuration 
public class ConfigurationDelegator : Configuration 
{ 
    public new void Clear() 
    { 
     Configuration.Clear(); 
    } 

    public new Configuration GetSingletonByIdentifier(string ident) 
    { 
     return Configuration.GetSingletonByIdentifier(ident); 
    } 

    public new List<Configuration> GetAllConfigs() 
    { 
     return Configuration.GetAllConfigs(); 
    } 
} 

Runner.exe, fit.dll et le projecteur dll sont tous situés dans le même dossier.

Répondre

0

Comme cela a été indiqué sur this github issue, GetSingletonByIdentifier renvoie un objet Configuration qui est enveloppé dans un DoFixture et traite le reste de la table. L'appel suivant de Amount of Configs Loaded essaie alors d'accéder à la méthode correspondante de la classe Configuration, cela n'existe pas, d'où l'erreur.