感谢完整的WPF MVVM设计,我设法在手动过程中记录所有命令和视图事件(抛出视图模型,像选定对象,显示对象id,...)在XML文件中scenarii测试。 然后很容易重播录制的情景:)WPF MVVM自动GUI测试 - 代码覆盖率
它工作正常,并允许快速检查我的大部分代码 - 我为它感到自豪,对.Net感到如此兴奋! ; o)
但是,我怎么能检查我的代码覆盖率?
我没有在这种情况下使用单元测试,只是在调试模式下运行应用程序但我想知道哪些代码被测试/未测试。
任何想法?
感谢, 钕
感谢完整的WPF MVVM设计,我设法在手动过程中记录所有命令和视图事件(抛出视图模型,像选定对象,显示对象id,...)在XML文件中scenarii测试。 然后很容易重播录制的情景:)WPF MVVM自动GUI测试 - 代码覆盖率
它工作正常,并允许快速检查我的大部分代码 - 我为它感到自豪,对.Net感到如此兴奋! ; o)
但是,我怎么能检查我的代码覆盖率?
我没有在这种情况下使用单元测试,只是在调试模式下运行应用程序但我想知道哪些代码被测试/未测试。
任何想法?
感谢, 钕
我终于在代码项目中发现了一个伟大的文章感谢朋友:
https://www.codeproject.com/articles/590346/codepluscoverageplusforplusregressionplustestsplus
感谢snehal harawande其对免费scenarii测试的大文章。我确实使用了.Net 4.5.2 64位(在第一批行参数中添加“x64”),并且我在VS Enterprise中导入了结果。这是完美:)
感谢所有
如果你想在现场测试中表现的代码覆盖率,即不是一套单元测试,那么你就可以创建真正激发了现场码一个单元测试(例如使调用main或者你的程序运行),执行你的测试场景,然后结束程序。此时,单元测试框架(我会推荐按照Haukinger的说法推荐dotCover)将会看到测试已经结束,它将为您提供代码覆盖率信息。
嗨,我会再次看看,但直到现在结果是不是太棒了:)。这个观点并没有真正表现出来;它只在开始时闪烁,我不能再看到它。如果我的视图不能显示,我将没有渲染,我需要测试它:(在一个空的项目上试过,并尝试在另一个线程中启动,而UT正在睡觉,而不是更好。我错过了什么? – NitroDeath
增加提及Microsoft.VisualStudio.QualityTools.UnitTestFramework
,然后修改您的App.xaml.cs
如下:
+using System.Reflection ;
+using Microsoft.VisualStudio.TestTools.UnitTesting ;
namespace YourAppNamespace
{
/// <summary>
/// Interaction logic for App.xaml.
/// </summary>
+ [TestClass]
public partial class App
{
+ [TestMethod]
+ public void Test()
+ {
+ ResourceAssembly = Assembly.GetExecutingAssembly() ;
+ InitializeComponent() ;
+ Run() ;
+ }
}
}
现在你可以使用Visual Studio内置的测试运行器和代码覆盖仪表:而不是“调试/开始调试”使用“测试/分析代码覆盖率/所有测试”。 (虽然控制台测试运行器vstest.console.exe
不起作用。)
类似这样的东西?请参阅**手动报道**部分:https://www.jetbrains.com/help/dotcover/2016.1/Getting_Started_with_dotCover.html – Haukinger
嗨。感谢你的回答。我不知道Resharper的这个功能(仅限Ultimate版本)。我会看看,但我不确定是否能够得到我的老板支付:)我会尝试,如果我没有找到一个免费的方式来看我的代码覆盖率。 – NitroDeath
您好Haukinger,我测试了DotCover,它使用起来非常简单并且高效。我没有另一种免费的方式来覆盖我的代码,所以我会尝试购买它。非常感谢 – NitroDeath