This is a migrated thread and some comments may be shown as answers.

WebAii Framework Add Reference Redirect?

5 Answers 101 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Steven Raybell
Top achievements
Rank 1
Steven Raybell asked on 24 Jul 2010, 01:29 AM
Hey all,

After much wrestling, we're making good headway in making WebAii work for us, and not the other way 'round.  :-)  (We're trying to abstract away WebAii for various long term maintainability reasons, so this obviously presents itself as fighting the original design and intent of WebAii, causing a lot of initial frustration, and rightly so).

We're noticing that when the framework is installed in the typical fashion, when adding a reference to the assembly from a different folder to the solution, the reference is redirected to the install base.

Is there a way to circumvent this besides uninstalling the framework after grabbing the necessary binaries?  What controls this behavior?  Since we're basing our solution on a very specific version for consistency reasons, we really only want to reference the tools from our source controlled location.  However, referencing the copied assemblies from any other folder still causes it to point to the /Program Files/ location.

Thoughts?

Thanks in advance and thanks for all the help and patience provided so far.

5 Answers, 1 is accepted

Sort by
0
Kiran
Top achievements
Rank 2
answered on 24 Jul 2010, 09:44 AM
Hi Steven,

Try to set the Copy Local property of the referenced assembly to True so that Visual Studio can get it from the output folder.
See the attached image for reference.

Thanks
Kiran

0
Konstantin Petkov
Telerik team
answered on 24 Jul 2010, 09:28 PM
Hi guys,

This is the typical behavior of Visual Studio. It just references the assemblies from the Global Assembly Cache where the binaries point to the installation folder (of course the installer adds the binaries to GAC).

Steven, try controlling that behavior by changing the properties of the assembly references as in the screenshot posted by Kiran. I believe the HintPath property should help you point to the location of the binary you need. I found this MSDN page as a good resource on the topic (check the file references chapters). There are probably other good resources available as well.

Regards,
Konstantin Petkov
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Steven Raybell
Top achievements
Rank 1
answered on 27 Jul 2010, 02:23 AM
This would mostly work, sure, but still requires us to fix up the path post referencing.  Not a deal breaker once the projects are established, so this is something we can skirt around.  (Note however, that when we referenced the assemblies, they didn't point to the GAC, but the install location [at the time of this writing, we were using ver 2010.1.4.15]).

We're also seeing that we're forced to actually have WebAii installed on each machine, which is something we're actually trying to avoid.  Is there a clean suggestion to get the BHO installed?  We want to be able to pull this from source, and just run without issue, however, it appears if the BHO isn't installed, automation handles fail (which I know is avoidable if we got a handle to the window that is mshtml and cast to the appropriate COM object, other frameworks handled this more or less "gracefully").

Which assembly contains the BHO?  Is this something that we can script as part of our build process to regsvr32 it, or at least, have a lightweight script that a tester would one-time run?

We're looking at avoiding the larger install package, and shooting for a lean and mean install process and usage across our team.

It seems that without the BHO, WebAii doesn't work.  Is this true for all scenarios?  Am I missing something vital?
0
Cody
Telerik team
answered on 27 Jul 2010, 04:55 PM
Hello Steven Raybell,

Yes, the BHO is required in all cases. It's how the framework interacts and controls the browser as the test runs. The official declaration is that you should be using our installer to correctly install the framework because it's farily complex getting all the BHO's properly installed/registered for the three different browsers. Unofficially the IE BHO is contained in the ArtOfTest.InternetExplorer.dll (which also has a dependency on ArtOfTest.ShDocVw.dll). If you wish to attempt registering it yourself, this is the dll to register. But, as technical support, I have to give the standard disclaimer that this approach will not be supported in any way.

Best wishes,
Cody
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Steven Raybell
Top achievements
Rank 1
answered on 28 Jul 2010, 08:26 PM
Makes sense.  :-)

We're already skirting around the desired approach by not using the BaseTest directly.  We're trying to abstract it all away so that if requirements change, we can change the infrastructure without modifying the surface API or implemented scenarios in our test methods.

I really do appreciate the "unofficial" reply.  Right now, we're only concerned with IE, as our application is not required, nor is compliant, to adhere to any other browser (internal LOB app).

I believe we'll use this for now, but I'll keep this in mind and documented internally for my team so that we don't paint ourselves into a corner.

By the by, really love the rapid response from the team, and all your patience.  You've been a great help!
Tags
General Discussions
Asked by
Steven Raybell
Top achievements
Rank 1
Answers by
Kiran
Top achievements
Rank 2
Konstantin Petkov
Telerik team
Steven Raybell
Top achievements
Rank 1
Cody
Telerik team
Share this question
or