Using White

White

  • Installation

    Not as straightforward as I'd hoped

    I created a project for my UA Tests

    I addeded the White Nuget to the project .. all seemed ok .. until I tried to run the following

      [Test]
            public void Test()
            {
                using (var application = Application.Launch(@"D:\... MyApp.exe"))
                {
                    var contactListWindow = application.GetWindow("ContactList", White.Core.Factory.InitializeOption.NoCache);
                    Assert.IsNotNull(contactListWindow);
                }
            }
    

    For some reason I was getting a load of 'could not load assembly' errors .. so Ok .. I went into app.config and added the following binding redirects

       <dependentAssembly>
            <assemblyIdentity   name="Castle.Core"   publicKeyToken="407dd0808d44fbdc"/>
            <bindingRedirect   oldVersion="0.0.0.0-1.0.0.0"   newVersion="1.1.0.0"/>
          </dependentAssembly>
          <dependentAssembly>
            <assemblyIdentity   name="Castle.DynamicProxy2"   publicKeyToken="407dd0808d44fbdc"/>
            <bindingRedirect   oldVersion="0.0.0.0-2.0.0.1"   newVersion="2.1.0.0"/>
          </dependentAssembly>
    

    Ok ? err no .. it seems that White ver 0.2.0 HAS to have log4net ver 1.2.10 .. and no ver 1.2.11 won;t do it .... ( I think the prob is actually with 'Bricks' and not White itself but still it wouldn't work) .. no amount of binding redirects would sort this out :-(

    So I made sure that my log4net was set to 1.2.10 using nuget .. and hey presto .. it Worked ! :-)

    Initially I thought I might have to run it in .net35 but it works fine (so far) in .net4

    I'm just doing proff of concept with White at the moment.. I', driving the tests using SpecFlow so that the users can make complete sense of them 

    I'll post code soon  

    In the meantime check out this excellent White Tutorial

     

Post a comment