我正在尝试使用rspec行的.NET测试框架,并希望在Visual Studio中实现自定义编辑器。
对于没有经验的人来说,rspec是ruby的测试框架,测试(或规格)看起来像这样:
describe Bowling, "#score" do
it "returns 0 for all gutter game" do
bowling = Bowling.new
bowling.hit(0)
bowling.score.should eq(0)
end
end
在ruby中,可以将rspec测试编写为块嵌套的匿名函数,而不需要任何封闭的方法或类 - 这由运行时幕后的框架处理。
我想在Visual Studio 2012和/或2013中沿着这些方向做一些事情。完整的C#测试文件可能如下所示:
using System;
using BowlingApp;
using Specs;
@spec DefaultSpec
Describe(typeof(Bowling), "#score", () => {
It("returns 0 for all gutter game", () => {
var bowling = new Bowling();
bowling.Hit(0);
Expect(bowling.Score).ToEqual(0);
});
});
...其中@spec
语句指定将在幕后生成的“封闭”类型的基类(在设计时,在本例中)。基类还将提供上述示例中使用的Describe
,It
和Expect
方法。
为了使这个测试框架可以使用,我需要一个自定义的VS编辑器,用于上面的格式,带有语法高亮和智能感知。
是否可以“重新利用”VS中现有的C#编辑器来执行此操作,还是必须从头开始执行所有操作?如果是这样,是否有任何开源工具或框架可以帮助我创建这样的编辑器?
答案 0 :(得分:0)
有一种简单的方法吗?不可以。你可以用投影缓冲区做这样的技巧,但实际上很难做对。