在silverlight中测试导航
我有一个使用导航框架的Silverlight应用程序 我正在尝试使用Silverlight测试框架为该应用程序编写单元测试,但是当我执行测试方法时,我得到以下错误:在silverlight中测试导航,silverlight,unit-testing,silverlight-4.0,silverlight-toolkit,Silverlight,Unit Testing,Silverlight 4.0,Silverlight Toolkit,我有一个使用导航框架的Silverlight应用程序 我正在尝试使用Silverlight测试框架为该应用程序编写单元测试,但是当我执行测试方法时,我得到以下错误: InvalidOperationException No XAML was found at the location '/Pages/LoginPage.xaml' 单元测试方法如下所示: [TestMethod] [Asynchronous] public void TestMethod1() { var mainPa
InvalidOperationException
No XAML was found at the location '/Pages/LoginPage.xaml'
单元测试方法如下所示:
[TestMethod]
[Asynchronous]
public void TestMethod1()
{
var mainPage = new MainPage();
WaitFor(mainPage, "Loaded");
TestPanel.Children.Add(mainPage);
EnqueueCallback(() => Assert.IsTrue(mainPage != null));
EnqueueTestComplete();
}
以下是MainPage.xaml:
<UserControl x:Class="AccurateSilverlight.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" d:DesignHeight="577" d:DesignWidth="858"
xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
HorizontalContentAlignment="Center">
<Grid x:Name="LayoutRoot" Background="White">
<Grid Height="36" Name="grid1" VerticalAlignment="Top"
Background="#FF9A9A9A">
<ComboBox Height="23" HorizontalAlignment="Left" Margin="6,6,0,0"
Name="ModuleComboBox" VerticalAlignment="Top"
Width="250" IsEnabled="False" />
<Button Content="Logout" Height="23" Margin="0,7,6,0"
Name="LogoutButton" VerticalAlignment="Top"
HorizontalAlignment="Right"
Width="75" IsEnabled="False" Click="LogoutButton_Click" />
</Grid>
<sdk:Frame Margin="0,35,0,0" Name="NavigationFrame"
Source="/Pages/LoginPage.xaml"
Navigated="NavigationFrame_Navigated" />
</Grid>
</UserControl>
如果我运行“主”xap,应用程序将正常工作。我只是在测试时出现了这个错误
我怀疑这个错误是由于单元测试框架执行了它的xap并将我的xap嵌入其中,但是我无法找到一种方法来解决这个问题
有什么线索吗?/Pages/LoginPage.xaml与当前程序集有关。您将需要使用完全限定您的路线 最终结果应该是这样的:
/AccurateSilverlight;组件/页面/登录页面.xaml