我的问题是,我不能让一个简单的测试华廷可靠这是运行Windows Server 2008和IE8我的机器上工作。
我见过一对夫妇在这个好职位,但我仍然有问题。 下面是帖子:
- MSDN测试文章
- 堆栈溢出-华廷第二种方法失败
在第一篇文章中的步骤似乎帮助(注释掉“:: 1”在我的hosts文件,把我的网站()在受信任的站点,并确保我的app.config有“STA”,并设置为“副本,如果新的”,但他们并没有可靠的帮助。我试图从第二个例子,希望这将有助于代码,但事实并非如此。我使用华廷2.0 Beta 1的。
我的NUnit的代码如下所示:
protected Browser Browser { get; set; }
[TestFixtureSetUp]
public void SetupPriorToTestsInThisFixture()
{
Browser = new IE();
Browser.GoTo(Constants.SiteCollectionUrl);
}
[TestFixtureTearDown]
public void TearDownAfterTestsInThisFixture()
{
if (Browser != null)
{
Browser.Dispose();
}
}
[Test]
public void WaterThroughThePipes()
{
Link link = Browser.Link(Find.ByText("Calendar"));
bool exists = link.Exists;
Assert.That(exists, Is.True, "Could not find 'Calendar' link.");
}
我所看到的是,有时(虽然很少)我测试通过。 有时断言失败(存在= FALSE),有时我得到一个超时试图打开浏览器的时候,有时我得到试图访问link.Exists错误。
访问link.Exists错误是这样的:
MyFixture.WaterThroughThePipes信息:System.Runtime.InteropServices.COMException:该接口是未知的。 (从HRESULT异常:0x800706B5)
我似乎无法重现超时错误,所以我现在不能提供,在目前(虽然这曾经发生的所有的时间)。
我倾向于在调试模式下运行时,这与在调试模式下运行,以看到不同的结果。
对于它的价值,火狐3.0.6从来没有为我工作。 我是喜欢,但需要IE浏览器,无论工作。 下面是我用Firefox得到的错误。
MyFixture(TestFixtureSetUp):WatiN.Core.Native.Mozilla.FireFoxException:无法连接到服务器jssh,请确保你已经正确安装了jssh.xpi插件----> System.Net.Sockets.SocketException:无法连接作出,因为目标机器积极地拒绝它127.0.0.1:9997
有任何想法吗? 我真的不想回去硒(被那里,这样做),但我可能不得不这样做。