我正在使用Silverlight Unit Test框架来测试我的应用程序。单元测试框架成功执行并在电话应用程序页面中显示结果。 我想将结果存储在设备本身的日志文件中,而不是将其显示在设备的手机应用程序页面上。请在下面找到显示应用程序结果的图像
请建议是否有办法。
谢谢, 木谷
答案 0 :(得分:1)
据我所知,结果未存储在日志中,但您可以访问结果。
在单元测试的MainPage.xaml.cs
中,您可以挂钩TestHarness的TestHarnessCompleted
事件,以获取有关已完成的测试运行的详细信息。然后,您可以根据需要格式化输出,并保存到IsolatedStorage或/和传输设备。
//inside MainPageLoad()
var unitTestSettings = UnitTestSystem.CreateDefaultSettings();
unitTestSettings.TestHarness.TestHarnessCompleted += TestRunCompletedCallback;
var testPage = UnitTestSystem.CreateTestPage(unitTestSettings) as IMobileTestPage;
void TestRunCompletedCallback(object sender, TestHarnessCompletedEventArgs e) {
var testHarness = sender as UnitTestHarness;
foreach (var result in testHarness.Results) {
switch (result.Result) {
case TestOutcome.Passed:
case TestOutcome.Completed:
break;
default:
// must be a failure of some kind
// perform some outputting
break;
}
}
}
我想我在某处读到可能有办法以编程方式将文件从IsolatedStorage传输到桌面上。我改为将测试结果格式化为String,然后使用NLog将该输出发送到我的桌面/构建服务器上运行的listening service。 full source NLog download提供了一个用于创建和运行此服务的Visual Studio示例项目。
干杯, 人